Skip to main content

Generate boilerplate for apps, web pages, and components.

Project description

devboiler

Fast boilerplate generator for applications, web pages, and components. Use it as a Python library and a CLI.

  • Bold defaults, clean structure, and production-friendly options
  • New in 0.4.0: optional CI, pre-commit, and Poetry support

Installation

pip install devboiler

CLI usage

List all available boilerplates:

devboiler list

Quick examples:

# Python class
devboiler create python-class User

# HTML page
devboiler create html index --title "My Homepage"

# React component (function or class)
devboiler create react-component Navbar --type function

# Python project skeleton
devboiler create project my_app --type python

# Flask app (app.py)
devboiler create flask-app my_flask

# FastAPI app (main.py)
devboiler create fastapi-app my_api

# Node.js script (index.js)
devboiler create node-script my_script

# Express.js app (server.js)
devboiler create express-app my_express

# Python CLI (argparse)
devboiler create python-cli my_cli

# React component with CSS module
devboiler create react-component-css Navbar

Interactive wizard:

# Fully interactive (prompts for framework, docker, tests, linters, ci, pre-commit, poetry)
devboiler new

# Non-interactive with flags (0.4.0)
devboiler new my_app \
  --framework fastapi \
  --db none \
  --docker \
  --tests \
  --linters \
  --ci \
  --pre-commit \
  --package-manager poetry

Get help with examples:

devboiler --help

Python API

from devboiler import (
    create_python_class,
    create_html_page,
    create_react_component,
    create_project,
    create_flask_app,
    create_fastapi_app,
    create_node_script,
    create_express_app,
    create_python_cli,
    create_react_component_with_css,
    scaffold_project,
)

create_python_class("User")
create_html_page("index", title="My Homepage")
create_react_component("Navbar", type="function")
create_project("my_app", type="python")

# High-level scaffold
scaffold_project(
    name="my_service",
    framework="fastapi",
    db="none",
    include_docker=True,
    include_tests=True,
    include_linters=True,
    include_ci=True,                # 0.4.0
    include_pre_commit=True,        # 0.4.0
    package_manager="poetry",       # 0.4.0 (pip|poetry)
)

CI, pre-commit, Poetry (0.4.0)

When enabled in the wizard/API for Python-based projects (FastAPI, Flask, pure Python):

  • CI: a GitHub Actions workflow is generated at .github/workflows/ci.yml with a Python matrix and optional lint/test steps.
  • pre-commit: .pre-commit-config.yaml with Black, isort, Flake8, and MyPy.
  • Poetry: pyproject.toml suitable for starting with Poetry.

Extending

Templates live under devboiler/templates. Add or customize them to fit your needs.

License

MIT

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

devboiler-0.4.0.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

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

devboiler-0.4.0-py3-none-any.whl (19.1 kB view details)

Uploaded Python 3

File details

Details for the file devboiler-0.4.0.tar.gz.

File metadata

  • Download URL: devboiler-0.4.0.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for devboiler-0.4.0.tar.gz
Algorithm Hash digest
SHA256 fed63e9ef951bd2d27fd6cd26871cda2cb20683d3cfb59c4959d3548102b180a
MD5 47479f91bd52735e53489478d7cabced
BLAKE2b-256 142dbf35bfdb88a80624815b3322d53915b87c20d9168588fc25e01ae29bcc25

See more details on using hashes here.

File details

Details for the file devboiler-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: devboiler-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 19.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for devboiler-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7ad98db8361e7a8a731e5bef4c3fff3f608b54368edd24d27470d022c9a801bb
MD5 cbbc228e57c7848444f4cc1d62eb06f0
BLAKE2b-256 a6f7751921aa7d195d0acf7b0abe01ad8b597971e11e2cdfe38d56495a03a68f

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