A rigid, spec-first, modular framework for building AI-Agent-ready microservices.
Start here: Read the MANIFESTO to understand the philosophy behind this project.
# Generate a new project
uvx copier copy gh:vladmesh/service-template my-project \
--data project_name=my-project \
--defaults \
--vcs-ref=HEAD
# Or with specific modules (e.g. standalone bot)
uvx copier copy gh:vladmesh/service-template my-project \
--data project_name=my-project \
--data modules=tg_bot \
--defaults \
--vcs-ref=HEADCopier uses the latest git tag for git sources by default. For gh:vladmesh/service-template,
omitting --vcs-ref can silently generate from an older release tag instead of the current
default branch. --vcs-ref=HEAD keeps bootstrap output on the latest template state; replace it
with another branch/ref when needed.
| Module | Description |
|---|---|
backend |
FastAPI REST API + PostgreSQL (Optional) |
tg_bot |
Telegram bot (FastStream, can be standalone) |
notifications |
Email/Telegram notification worker |
frontend |
Node.js frontend |
cd my-project
cp .env.example .env
make dev-startPull latest infrastructure updates while preserving your code:
uvx copier update --vcs-ref=HEADAfter generating a project with copier copy:
- Add Service: Edit
services.yml, then createservices/<name>/from scaffold template in.framework/framework/templates/scaffold/services/<type>/ - Update API: Edit
shared/spec/*.yaml→make generate-from-spec - Run Tests:
make tests - Lint:
make lint
Developing the framework itself (this repository):
- Run Tests:
make test(framework unit tests) ormake test-copier(template generation tests) - Lint:
make lint(framework code only) - Sync
.framework/:make sync-framework(copy framework code to template)
See docs/DEVELOPMENT.md for detailed framework development instructions.
- Generated projects include
README.md,AGENTS.md, andCONTRIBUTING.mdwith usage instructions - The infrastructure and worker-mode contract is readable before generation at template/infra/README.md. The root infra/README.md points to that canonical copy.
- docs/MANIFESTO.md: The core philosophy
- docs/ARCHITECTURE.md: How the framework works
- docs/DEVELOPMENT.md: How to develop the framework
- docs/backlog.md: Framework roadmap
- Current: Copier-based updatable template with modular service selection.
- Next: CLI wrappers for simplified usage (
my-framework init,my-framework sync). - Vision: MCP server for AI agents to scaffold and manage services via API.
- Core: Python 3.12, Docker Compose
- API: FastAPI, Pydantic (Spec-First)
- Data: PostgreSQL, SQLAlchemy, Alembic
- Messaging: Redis, FastStream
- Quality: Ruff, Mypy, Pytest
Open Source. Use it, fork it, build agents with it.