Skip to main content

CLI for scaffolding Robyn backend templates (DDD/MVC with SQLAlchemy or Tortoise).

Project description

robyn-config

robyn-config is a small CLI that scaffolds Robyn backend projects from the bundled templates. It can generate either DDD or MVC layouts and swaps between SQLAlchemy and Tortoise implementations on demand.

Installation

pip install .
# or
uv tool install .

Usage

Create a project with your preferred ORM and architecture:

robyn-config create my-service --orm sqlalchemy --design ddd ./my-service
robyn-config create newsletter --orm tortoise --design mvc ~/projects/newsletter

Options:

  • name sets the project name used in templated files like pyproject.toml and README.md.
  • --orm (sqlalchemy|tortoise) selects the database layer.
  • --design (ddd|mvc) toggles between the Domain-Driven and MVC templates.
  • destination is the target directory (defaults to .); if it is not empty, you will be prompted before overwriting conflicts.

The command copies:

  • Common project files (docker-compose, Makefile, env templates, README, pyproject, uv.lock).
  • Application code from src/app_ddd or src/app_mvc into src/app.
  • Compose helpers from src/common/compose/app with ORM-specific dev/prod runners.
  • For Tortoise projects, Alembic artifacts are omitted from the Docker image.

Template contents

The shipped templates live alongside the CLI:

  • Root-level files sit under src/common.
  • Compose files are under src/common/compose/app.
  • Application code is under src/ddd and src/mvc.

Feel free to modify these in-place to customize the generated projects.

Development

Run the linters/tests locally:

uv venv && source .venv/bin/activate
uv pip install -e .[dev]
ruff check src
pytest

Build a wheel for distribution:

python -m build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robyn_config-0.1.0.tar.gz (126.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

robyn_config-0.1.0-py3-none-any.whl (156.8 kB view details)

Uploaded Python 3

File details

Details for the file robyn_config-0.1.0.tar.gz.

File metadata

  • Download URL: robyn_config-0.1.0.tar.gz
  • Upload date:
  • Size: 126.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for robyn_config-0.1.0.tar.gz
Algorithm Hash digest
SHA256 aa4a9bc2fa11dc62aea28d4bf2eb2add90b06187f4260a32af014921782aa4bd
MD5 0161e77f53f127783199d20b45ca8676
BLAKE2b-256 311da47977e160eece1ef2d40a6a27ed3f74a3d502e90aa3a201df8764fa21b3

See more details on using hashes here.

File details

Details for the file robyn_config-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: robyn_config-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 156.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for robyn_config-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 05ad5b094ca1cf83fe8765fc2a82ce93a67dbc48b871c06abd1b84575ae8b5ec
MD5 49d7cd1216e4bccbfe5dfd0ac5f691c8
BLAKE2b-256 c5e3033eaa9c2890093b3bea88f49b121d6372d91c9a18846ff087f341016616

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page