No description
- Python 67%
- CSS 21.4%
- Jinja 9.1%
- Dockerfile 1.8%
- Makefile 0.7%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
M1 : le budget de poids de la page (spec §7, 150 Ko) omettait tokens.css alors que base.html.j2 le charge dans tout navigateur qui ouvre la page — la mesure passait sous le seuil sans compter un fichier reellement telecharge. Ajoute a la liste ; mesure a jour (134,4 Ko, toujours sous 150 Ko). M2 : rien n'affirmait que tokens.css atteint dist/. S'il venait a manquer au build, chaque var() de site.css deviendrait invalide et le site perdrait ses couleurs en silence. 66 -> 67 tests. Suite complete verifiee au vert apres ce commit. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017GPVtoX9yM5oqRKmt499MA |
||
| content | ||
| cvgen | ||
| static | ||
| templates | ||
| tests | ||
| .gitignore | ||
| build.py | ||
| Dockerfile | ||
| Makefile | ||
| README.md | ||
| requirements.txt | ||
timothy-cv
Site CV (timothy.greil.fr) et CV PDF assorti, générés depuis une source
unique : content/cv.yml.
Principe
Aucune dépendance Python n'est installée sur l'hôte. Tout passe par un
container de build (Python 3.13 + WeasyPrint) piloté par le Makefile.
Utilisation
make build # engendre dist/ (site statique + PDF)
make test # lance la suite pytest dans le container
make serve # sert dist/ en local sur http://localhost:8080 (nginx)
make shell # ouvre un shell dans le container de build
make clean # supprime dist/ et private/
private/ accueille la variante du PDF avec le numéro de téléphone ; ni
dist/ ni private/ ne sont versionnés (voir .gitignore).
Architecture
build.py— orchestrateur : litcontent/cv.yml, rend les templates Jinja2 (site + PDF), écrit dansdist/.Dockerfile— stagebuild(Python + WeasyPrint, sert aussi d'image de dev via leMakefile) et stageprod(nginx statique, sans Python).tests/— suite pytest, exécutée uniquement dans le container.