Skip to content

v0.3.0 - Modular Extensions (hbk add)

Latest

Choose a tag to compare

@nachovoss nachovoss released this 07 Sep 09:02
· 1 commit to main since this release

🧩 Modular extensions system

  • New hbk add <module> / hbk add --list β€” install optional integrations into an existing project, no re-init.
  • Modules are declared with a module.json manifest (requirements, env vars, routes, models, repositories, post-install message).
  • Project-local registry at .hatchback/modules.json tracks installs for a clean hbk remove <module>.
  • hbk remove now auto-detects scaffolded resources vs installed modules.

🐳 Docker is now a module

  • Dockerfile, docker-compose.yml, .dockerignore moved to optional_templates/docker/. Still included by default with hbk init; add later with hbk add docker.

πŸ’³ Stripe ported to the module system

  • hbk init --stripe still works; you can now also run hbk add stripe on any project.

πŸ› Fixes

  • Edits to requirements.txt / .env now preserve the file's original encoding (UTF-8, UTF-8-BOM, UTF-16). Fixes pip failing with Invalid requirement: 's\x00t\x00r...' after adding a module to PowerShell-generated files.

πŸ“š Docs & tests

  • New ROADMAP.md with module catalogue and checkbox tracking.
  • README, generated-project README, landing page and hatchback agent skill updated.
  • tests/test_modules.py β€” 7 cases covering install, uninstall round-trip, idempotency, Docker, UTF-16.

Install / upgrade

pip install -U hatchback