{"_id":"@absolu/create-lab-project","name":"@absolu/create-lab-project","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@absolu/create-lab-project","version":"0.1.0","description":"Initialise une démo Vite prête à être publiée sur lab.agence-absolu.com","keywords":["create","scaffold","vite","lab","absolu"],"license":"UNLICENSED","author":{"name":"Agence Absolu"},"type":"module","bin":{"create-lab-project":"bin/create-lab-project.js"},"engines":{"node":">=22"},"publishConfig":{"access":"public"},"scripts":{"test":"node --test"},"_id":"@absolu/create-lab-project@0.1.0","gitHead":"44ae21987c1ccfb3231b0ec127f80a232a6184de","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-wkGW25+Qob8Xge49jSLpl6WEBrsMksjQdQfEmuRzqd7ix2qtIeJ5UgAvZtOXSET3DntOHyf1bBsBmTr1XVeS6A==","shasum":"af60950a29c6ce1f26e584dc41be9efe527d17b9","tarball":"https://registry.npmjs.org/@absolu/create-lab-project/-/create-lab-project-0.1.0.tgz","fileCount":13,"unpackedSize":18814,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFYMV2H5PvhxMqlR9d8ycvXuCz5leEY3svbEdkO5WjeYAiEAglGxE8+izxK60AIwcFDuqucWdbBC/4S22ZrjGnI+/P4="}]},"_npmUser":{"name":"digitalwr","email":"devs@lmwr.fr"},"directories":{},"maintainers":[{"name":"digitalwr","email":"devs@lmwr.fr"},{"name":"mrebillard","email":"mrebillard@agence-absolu.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/create-lab-project_0.1.0_1789132062759_0.11327857689432097"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-11T13:07:42.597Z","0.1.0":"2026-09-11T13:07:42.903Z","modified":"2026-09-11T13:07:43.180Z"},"maintainers":[{"name":"digitalwr","email":"devs@lmwr.fr"},{"name":"mrebillard","email":"mrebillard@agence-absolu.com"}],"description":"Initialise une démo Vite prête à être publiée sur lab.agence-absolu.com","keywords":["create","scaffold","vite","lab","absolu"],"author":{"name":"Agence Absolu"},"license":"UNLICENSED","readme":"# @absolu/create-lab-project\n\nInitialise une démo Vite prête à être publiée sur le lab d'Absolu\n(**lab.agence-absolu.com/<slug>/**), sur le modèle de\n[`lab-drill`](https://github.com/agence-absolu/lab-drill).\n\n```bash\nnpm create @absolu/lab-project@latest\n# ou, sans question :\nnpm create @absolu/lab-project@latest -- ma-demo --yes\n```\n\nLe projet généré contient tout ce que le hub attend, et rien à nommer :\n\n- `vite.config.js` — déduit la base des chemins (`/<slug>/`) du nom npm ;\n- `.github/workflows/deploy.yml` — compile et publie `dist/` par rsync sur SSH\n  dans `lab-projects/<slug>/` à chaque push sur `main` ;\n- `README.md` — rappelle que le dépôt doit être **public** pour recevoir les\n  secrets SSH de l'organisation (`LAB_SSH_HOST`, `LAB_SSH_USER`,\n  `LAB_SSH_PASSWORD`, `LAB_SSH_KNOWN_HOSTS` facultatif) ;\n- `index.html`, `src/main.js`, `src/style.css` — une page minimale (titre,\n  description), sans dépendance autre que Vite ;\n- `CLAUDE.md`, `.gitignore`, et un dépôt git initialisé (sans commit).\n\n## Options\n\n```\nnpm create @absolu/lab-project@latest -- [slug] [options]\n\n      --title <texte>       titre de la démo (défaut : « Ma démo »)\n  -d, --description <texte> description (balise meta et README)\n      --dir <dossier>       dossier de destination (défaut : ./<slug>)\n      --no-git              ne pas initialiser de dépôt git\n  -y, --yes                 accepter les valeurs par défaut sans poser de question\n  -h, --help\n```\n\nLe slug est le nom npm du projet et donne l'URL : minuscules, chiffres et\ntirets (`/^[a-z0-9][a-z0-9-]*$/`), format imposé par le hub.\n\n## Structure\n\n```\nbin/create-lab-project.js   point d'entrée\nsrc/cli.js                  arguments, questions, récapitulatif\nsrc/scaffold.js             copie et rendu du gabarit, package.json, git init\ntemplate/                   le projet généré (config, workflow, README, page, code)\n```\n\nLes fichiers du gabarit sont rendus : chaque `{{clé}}` (`slug`, `title`,\n`description`, `year`) est remplacé. `template/_gitignore` devient\n`.gitignore` à la copie (npm retire les `.gitignore` d'un paquet publié).\nAucune dépendance : Node ≥ 22 suffit.\n\n## Développement\n\n```bash\nnpm test                                    # génère dans un dossier temporaire et vérifie\nnode bin/create-lab-project.js demo --yes   # essai à la main\nnpm pack --dry-run                          # contenu du paquet publié\n```\n\n## Publication\n\n```bash\nnpm version <patch|minor|major>\nnpm publish\n```\n\nLe paquet est public (`publishConfig.access`), sous l'organisation npm `@absolu`.\n","readmeFilename":"README.md","_rev":"1-cf8e5d23f7ee2fb2d36e993dbf8a4d1c"}