Extending: New Service Type
To add a new service:
- Create a template folder under
templates/<service>
with minimal runnable code + README (optional). - Update service choices in
bin/lib/scaffold.js
and theadd
command inbin/index.js
. - Add a default port in
defaultPorts
map. - Add Dockerfile generation logic inside the service loop (match existing patterns).
- Add compose entry fields if needed (environment variables, healthchecks in future).
- Update docs & tests (
tests/smoke.test.js
) to include the new service.
Update default port maps and compose/Docker generation if needed.
Validate by scaffolding a test project and confirming:
- Dockerfile exists
- Port is unique / not colliding
- Service appears in summary table