Files
project-bootstrap/CHANGELOG.md
Bill 8dd4f0ca63 Initial commit: Complete project-bootstrap tool
- Bootstrap script for creating monorepo projects
- FastAPI backend templates with uv, ruff, mypy, pytest
- React frontend templates with TypeScript, ESLint, Prettier
- Docker Compose setup with backend, frontend, and database
- 9 development and CI scripts
- Gitea Actions CI/CD workflows
- Comprehensive documentation (8 files)
- 45 template files for complete project structure
- Automated verification script (all tests pass)
- Based on coding-agent-rules standards
2025-10-15 21:34:08 -04:00

4.4 KiB

Changelog

All notable changes to the project-bootstrap will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.0.0] - 2024-10-15

Added

Bootstrap Script

  • Main bootstrap.sh script for creating new projects
  • Automatic directory structure creation
  • Python __init__.py file generation
  • Template file copying
  • Git repository initialization (optional with --no-git)
  • Colored console output for better UX
  • Error handling and validation

Backend Templates

  • FastAPI application entry point (main.py)
  • Core configuration module with Pydantic settings
  • Error handling utilities
  • pyproject.toml with uv configuration
  • Complete ruff and mypy configuration
  • pytest configuration with 100% coverage requirement
  • .env.example for environment variables
  • Example unit and integration tests
  • Test fixtures in conftest.py

Frontend Templates

  • React 18 application with TypeScript
  • package.json with all dependencies
  • TypeScript configuration (tsconfig.json)
  • ESLint configuration with React rules
  • Prettier configuration
  • Jest testing setup
  • React Testing Library configuration
  • API service client with Axios
  • Example component tests
  • .env.example for environment variables

Docker & Deployment

  • Docker Compose configuration (compose.yml)
  • Backend Dockerfile with uv
  • Frontend Dockerfile with Node.js 20
  • PostgreSQL database service
  • Volume mounting for hot reload
  • Network configuration
  • Environment variable examples

Development Scripts

  • start-backend.sh - Start FastAPI dev server
  • start-frontend.sh - Start React dev server
  • start-database.sh - Start PostgreSQL container
  • reset-database.sh - Reset database with confirmation

Utility Scripts

  • lint-backend.sh - Backend linting and type checking
  • lint-frontend.sh - Frontend linting
  • format-all.sh - Format all code

CI Scripts

  • backend-test.sh - Complete backend CI pipeline
  • frontend-test.sh - Complete frontend CI pipeline

CI/CD Workflows

  • Gitea Actions workflow for backend
  • Gitea Actions workflow for frontend
  • Path-based triggers
  • Coverage reporting integration

Documentation

  • Main README with comprehensive overview
  • USAGE.md with detailed usage instructions
  • QUICKSTART.md for quick reference
  • FEATURES.md listing all features
  • API documentation template
  • API changelog template
  • Architecture documentation template
  • User guide template

Configuration Files

  • .gitignore for common files
  • MIT License template
  • Environment variable examples for all services

Project Structure

  • Modular monorepo layout
  • Separate backend, frontend, deploy, scripts, and docs directories
  • Organized test structure (unit and integration)
  • Clear separation of concerns

Code Quality

  • 100% backend test coverage requirement
  • 90%+ frontend test coverage requirement
  • Type safety with mypy and TypeScript
  • Automated linting and formatting
  • Pre-configured quality tools

Developer Experience

  • One-command project creation
  • Docker Compose for easy setup
  • Hot reload for development
  • Comprehensive documentation
  • Example code and tests
  • Helpful scripts for common tasks

[Unreleased]

Planned

  • Database migration templates (Alembic)
  • Authentication/authorization examples
  • More comprehensive example code
  • Kubernetes deployment templates
  • Production Docker configurations
  • Pre-commit hooks configuration
  • GitHub Actions workflows (in addition to Gitea)
  • Additional database options (MySQL, MongoDB)
  • GraphQL API option
  • WebSocket support examples
  • Monitoring and logging examples

Under Consideration

  • React Native mobile app template
  • Next.js option for frontend
  • Alternative backend frameworks (Django, Flask)
  • Microservices architecture option
  • Serverless deployment options
  • Infrastructure as Code (Terraform, Pulumi)

Notes

Version 1.0.0

This is the initial release of the project-bootstrap, created based on the coding standards from coding-agent-rules.

The bootstrap creates a production-ready monorepo with:

  • FastAPI backend (Python 3.11+)
  • React frontend (TypeScript)
  • PostgreSQL database
  • Docker Compose setup
  • Complete CI/CD workflows
  • Comprehensive testing setup
  • Development scripts
  • Full documentation

All templates follow best practices and modern development standards.