Skip to main content

⚡ StackForge

PyPI version npm version License: MIT Python 3.9+ Contributor Covenant PRs Welcome

A production-grade, interactive terminal application that scaffolds modern cloud architectures, complete with microservice backends, frontends, databases, containerization, and multi-stage CI/CD pipelines.

Created by Garvit AgarwalContributingCode of ConductSecurity


🌟 Key Highlights

  • 🖥️ Interactive Terminal TUI: Guided step-by-step wizard powered by rich featuring cyberpunk, matrix, and nord color themes.
  • Curated Architecture Presets: Instant scaffolding of battle-tested stacks (FastAPI Cloud-Native, MERN, PERN, Go High-Throughput, Rust Axum, Next.js Enterprise, Spring Boot).
  • 🛠️ Deep CI/CD Pipeline Automation: Fully articulated pipeline configurations for:
    • GitHub Actions (Lint, Multi-stage Test, Container Build & Push to GHCR, Trivy Security Scans, Kubernetes Rollout)
    • GitLab CI/CD (Multi-stage .gitlab-ci.yml with Docker-in-Docker and staging/prod gates)
    • Azure DevOps (azure-pipelines.yml with ACR and AKS integration)
    • Jenkins (Declarative Jenkinsfile with parallel testing stages and quality gates)
    • CircleCI (.circleci/config.yml with modern orbs and workflow triggers)
  • 🐳 Complete DevOps Infrastructure:
    • Multi-stage production Dockerfiles
    • docker-compose.yml for unified local development (Hot-reload backend + frontend + DB + Redis cache)
    • docker-compose.prod.yml with resource limits and restart policies
    • Production Kubernetes Manifests (Deployments, ClusterIP Services, NGINX Ingress with TLS, ConfigMaps, Secrets, HPA)
    • Helm Charts (Parameterized Chart.yaml, values.yaml, templates, and helpers)
    • Terraform IaC (Cloud VPC, ECR repository, and resource definitions)
    • Prometheus & Grafana metrics scraping and dashboard templates
  • 📋 Developer Ergonomics:
    • Auto-generated Makefile (make dev, make test, make lint, make docker-up, make k8s-apply)
    • Live in-terminal syntax-highlighted code previewer
    • ASCII directory tree generator
    • Config import/export (stackforge.json)

🚀 Quick Start

Install from PyPI (pip)

pip install stackforge

# Run from anywhere:
stackforge

Install from npm

npm install -g stackforge

# Run from anywhere:
stackforge

Run from Source

# Direct run with Python
python run.py

# Or on Windows using batch script:
run.bat

# Or install in editable mode:
pip install -e .
stackforge

💻 CLI Usage & Commands

Interactive Mode

Run without arguments to launch the step-by-step interactive wizard:

python run.py

Curated Presets

List all available presets:

python run.py --list-presets

Generate a preset directly:

# FastAPI + PostgreSQL + Redis + GitLab CI + Kubernetes + Helm
python run.py --preset fastapi-cloud --name cloud-service

# MERN Stack + MongoDB + GitHub Actions + Docker
python run.py --preset mern-stack --name fullstack-web

# Go REST API + PostgreSQL + Docker + GitHub Actions
python run.py --preset go-high-throughput --name go-engine

# Rust Axum Microservice + Azure DevOps
python run.py --preset rust-axum-service --name rust-auth

Headless Custom Generation (CLI Flags)

You can configure and scaffold any custom combination using flags:

python run.py \
  --name payment-gateway \
  --backend fastapi \
  --frontend react_vite \
  --db postgresql \
  --pipeline github_actions \
  --docker \
  --k8s \
  --helm \
  --terraform \
  --out ./payment-gateway

Dry Run & Preview

Preview what files will be created and inspect pipeline code directly in the terminal without touching the disk:

python run.py --preset fastapi-cloud --dry-run --preview

📦 Supported Technologies Matrix

Category Supported Options
Backend Frameworks FastAPI (Python), Express.js (TypeScript), NestJS (TS), Go (Gin), Rust (Axum), Django (Python), Spring Boot (Java 21)
Frontend Frameworks React 18 + Vite (TypeScript), Next.js 14/15 App Router, Vue 3 + Vite, SvelteKit 2, None (Headless API)
Databases & Cache PostgreSQL 16, MongoDB 7.0, Redis 7.2 (Cache/Queues), SQLite 3, MySQL 8.0, None
CI/CD Pipelines GitHub Actions, GitLab CI/CD, Azure DevOps Pipelines, Jenkinsfile, CircleCI
DevOps & IaC Docker, Docker Compose (Dev/Prod), Kubernetes, Helm Charts, Terraform AWS/GCP, Prometheus & Grafana
Quality & Tooling Pytest, Jest, Go Test, Cargo Test, ESLint, Prettier, Pre-commit hooks, Makefiles

🏛️ Architecture Blueprint Example

graph TD
    Client[Web Browser / Mobile App] -->|HTTPS| Ingress[Kubernetes Ingress / Reverse Proxy]
    Ingress -->|/api/*| Backend[Backend API Pods: FastAPI / Go / Express]
    Ingress -->|/*| Frontend[Frontend UI Pods: React / Next.js]
    Backend -->|SQL / NoSQL| DB[(PostgreSQL / MongoDB)]
    Backend -->|Key-Value / Cache| Cache[(Redis Cache)]
    CI[CI/CD: GitHub Actions / GitLab CI] -->|Build & Test| CI
    CI -->|Push Container| Registry[Container Registry GHCR / ACR]
    Registry -->|Rolling Update| Ingress

🧪 Running Automated Tests

A comprehensive unit test suite ensures that all blueprints, presets, and file generators produce valid configurations:

python -m unittest discover tests -v

📂 Project Structure

stackforge/
├── run.py                       # Quick CLI launcher
├── run.bat                      # Windows launcher batch script
├── setup.py                     # Package setup script
├── pyproject.toml               # PEP 621 package metadata & scripts
├── requirements.txt             # Python dependencies
├── README.md                    # Project documentation
├── stackforge/                  # Core application package
│   ├── __init__.py              # Package metadata
│   ├── __main__.py              # python -m stackforge entrypoint
│   ├── cli.py                   # Click CLI dispatcher & flag parser
│   ├── ui/
│   │   ├── banner.py            # ASCII logo, badges & section cards
│   │   ├── colors.py            # Rich terminal color themes
│   │   ├── wizard.py            # Interactive prompt wizard & menus
│   │   └── viewer.py            # File tree visualizer & syntax viewer
│   ├── core/
│   │   ├── config.py            # Configuration models & stack catalogs
│   │   ├── generator.py         # Scaffolding & file generation engine
│   │   └── validator.py         # Architecture rules & validation
│   ├── presets/
│   │   ├── __init__.py
│   │   └── default_presets.py   # Curated architecture presets
│   └── templates/               # Generation templates
│       ├── backend_templates.py # FastAPI, Express, Go, Rust, Spring
│       ├── frontend_templates.py# React, Next.js, Vue, SvelteKit
│       ├── database_templates.py# PostgreSQL, Mongo, Redis, SQLite
│       ├── pipeline_templates.py# GitHub Actions, GitLab, Azure, Jenkins
│       ├── devops_templates.py  # Docker, K8s, Helm, Terraform
│       └── tooling_templates.py # Makefile, README, .gitignore, .env
└── tests/                       # Unit & integration tests
    ├── test_config.py           # Config serialization tests
    ├── test_generator.py        # Template compiling & writing tests
    └── test_presets.py          # Preset validity & schema tests

🤝 Contributing

We welcome contributions from everyone! Check out our Contributing Guide to get started.

# Fork, clone, and set up for development
git clone https://github.com/<your-username>/stackforge.git
cd stackforge
python -m venv venv && source venv/bin/activate
pip install -e .
python -m unittest discover tests -v

See CONTRIBUTING.md for detailed guidelines on coding standards, commit messages, and the PR process.

🛡️ Security

Found a vulnerability? Please report it responsibly. See our Security Policy for details.

📜 License

This project is licensed under the MIT License — see the LICENSE file for details.

🌍 Community


Made with ❤️ by Garvit Agarwal
If you find StackForge useful, please ⭐ star the repo — it helps a lot!

Release files for stackforge-dev 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stackforge-dev 1.0.0
File Size Uploaded
stackforge_dev-1.0.0.tar.gz 44.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for stackforge-dev 1.0.0
File Interpreter ABI Platform
stackforge_dev-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 89.5 kB

Release files / stackforge_dev-1.0.0.tar.gz

Download URL stackforge_dev-1.0.0.tar.gz
Size 44.6 kB
Tags Source
SHA-256 checksum
How to use checksums
35fd00e882dd72c03bd322b785fe48847525767a4a3d4bd97f92746506c94b1b
BLAKE2b-256 checksum
How to use checksums
3d600b62c1c5e8d0604a8b3a00200f8431de906be9ef8e42f976b4843763feea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Release files / stackforge_dev-1.0.0-py3-none-any.whl

Download URL stackforge_dev-1.0.0-py3-none-any.whl
Size 44.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0897badc929e4174c6b8201663a1f9886771bf42e78d46f55ed144399627a781
BLAKE2b-256 checksum
How to use checksums
c24ee88f6af34e0905ac505fc2cd967b17a384ca2865a5ae8b41262a2cf5f117
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page