Stack-based scaffolding tool for application projects
Project description
FraCode
FraCode is a stack-based scaffolding tool.
It generates application projects that use official ecosystem libraries directly, starting with a standalone FastAPI stack today and leaving room for other languages and frameworks over time.
What FraCode Is
FraCode is not trying to replace FastAPI.
FraCode is meant to help you start faster by generating:
- a clean project layout
- stack-aware scaffolds
- file generators for common app pieces
- lightweight development commands
- code you can fully own after generation
The guiding rule is simple:
- zero
import fracodein generated application code - zero FraCode runtime dependency in generated projects
- official framework and library imports only
FraCode builds the house, then gets out of the way.
Available Stacks
Current built-in stack:
python/fastapi- standalone FastAPI application with typed settings, SQLAlchemy, Alembic, Docker, and pytest
List stacks with:
fra stacks
Quick Start
pip install fracode
fra new my-app --language python --framework fastapi
cd my-app
poetry install
fra serve
Then open http://127.0.0.1:8000/docs.
You can also run the generated app directly:
python dev.py
What The FastAPI Stack Generates
The default FastAPI scaffold produces a normal project structure like:
app/main.py- FastAPI entrypointapp/api/routes.py- route registration and healthcheckapp/core/config.py- typed settingsapp/core/errors.py- project-owned exception handlersapp/core/logging.py- project-owned logging setupapp/db/- SQLAlchemy base and session helpersapp/schemas/- Pydantic schemasmigrations/andalembic.ini- migration supportDockerfileanddocker-compose.yml- container setuptests/- starter test suitedev.py- local dev runner
This is application code, not a FraCode runtime wrapper.
CLI
Core commands:
fra new <name>creates a new project from a stackfra stackslists available language/framework stacksfra serveruns a generated app by detectingapp/main.pyormain.pyfra make:controller <Name>generates a stack-aware controller and schemafra make:model <Name>generates a stack-aware model
Examples:
fra new blog --language python --framework fastapi
fra make:controller User --api
fra make:model User
For the FastAPI stack, controller generation also wires the new controller into app/api/routes.py and creates a matching schema module in app/schemas/.
Development
poetry install --with dev
pytest
ruff check fracode/ tests/
ruff format --check fracode/ tests/
mypy fracode/
Multi-Stack Direction
FraCode is built around stack discovery instead of one framework-specific runtime.
The intended shape is:
templates/stacks/<language>/<framework>/...- each stack defines its own metadata and generators
- the CLI discovers stacks dynamically
- generated apps stay native to their own ecosystem
That means FraCode can grow toward things like:
python/flasktypescript/expressgo/chi
without forcing those ecosystems through one shared abstraction layer.
Contributing
Contributions are welcome:
- new stack support
- better project templates
- generator ergonomics
- documentation
- stronger day-zero scaffolds for real app work
License
FraCode is open-source software licensed under the MIT license.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fracode-0.1.5.tar.gz.
File metadata
- Download URL: fracode-0.1.5.tar.gz
- Upload date:
- Size: 15.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Darwin/25.4.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd92433cd9aa8de45a95d34b50886eb04a705109cae4ce6b28e82f78911e9550
|
|
| MD5 |
c45b39dc54524f60c0db74b724098d1a
|
|
| BLAKE2b-256 |
3e87b4f1fe1ecd8d23b4926d793c64d7de9cf2372e98b268e1066d633e33da3b
|
File details
Details for the file fracode-0.1.5-py3-none-any.whl.
File metadata
- Download URL: fracode-0.1.5-py3-none-any.whl
- Upload date:
- Size: 25.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.13.7 Darwin/25.4.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
992022e1213c4463be9713f5c45fb695a98c013b745ae128a669a8aebfec1003
|
|
| MD5 |
c770db598b9f7316b0ac5cdac65b9c38
|
|
| BLAKE2b-256 |
f82ce6168ad4d64933ce229d711bac73ec964e7f416c98cef37383435ef87798
|