boilerplates

Boilerplates Collection πŸš€

A comprehensive collection of production-ready boilerplates, templates, and configurations for modern development workflows. This repository helps you quickly bootstrap projects with best practices and industry-standard tooling.

πŸ“š Table of Contents

🐍 Python Projects

Production-ready Python project structures with modern tooling.

Available Boilerplates

Template Description Path
Basic Python Minimal Python project structure python/basic/
Flask App Flask web application with blueprints python/flask/
FastAPI App Modern async FastAPI application python/fastapi/
CLI Tool Command-line tool with Click python/cli-tool/

Features:

πŸ“¦ Node.js/JavaScript Projects

Modern JavaScript/TypeScript project templates.

Available Boilerplates

Template Description Path
Express API RESTful API with Express.js nodejs/express/
React App React application with routing nodejs/react/
CLI Tool Command-line tool with Commander.js nodejs/cli-tool/

Features:

🐳 Docker & Containers

Dockerfile templates and Docker Compose configurations.

Available Templates

Template Description Path
Python Docker Dockerfiles for Python apps docker/python/
Node.js Docker Dockerfiles for Node.js apps docker/nodejs/
Multi-stage Optimized multi-stage builds docker/multi-stage/

Features:

πŸ”„ CI/CD Pipelines

Ready-to-use CI/CD workflow templates.

GitHub Actions

Workflow Description Path
Node.js CI Build, test, deploy Node.js apps cicd/github-actions/node-ci.yml
Python CI Build, test, deploy Python apps cicd/github-actions/python-ci.yml
Docker Build Build and push Docker images cicd/github-actions/docker-build.yml

Features:

βš™οΈ Configuration Files

Standard configuration files for development tools.

Available Configs

Config Description Path
ESLint JavaScript linting rules configs/eslint/
Prettier Code formatting rules configs/prettier/
EditorConfig Editor consistency configs/editorconfig/
Python Tools Black, mypy, pytest config configs/pyproject.toml

πŸ’Ύ Database Templates

Docker Compose configurations for popular databases.

Available Databases

Database Description Path
MongoDB NoSQL document database with Mongo Express database/mongodb/
PostgreSQL Relational database with pgAdmin database/postgresql/
MySQL Relational database with phpMyAdmin database/mysql/

Features:

☸️ Kubernetes & Infrastructure

Kubernetes manifests and Terraform templates for cloud deployments.

Kubernetes

Template Description Path
Deployment Application deployment manifests kubernetes/deployment.yml
Service Service definitions kubernetes/service.yml
Ingress Ingress configuration kubernetes/ingress.yml
ConfigMap/Secret Configuration management kubernetes/configmap.yml

Terraform

Template Description Path
AWS Setup Terraform AWS configuration terraform/
Variables Input variables template terraform/variables.tf
Providers Provider configuration terraform/providers.tf

πŸ“„ Templates

Document templates for common project needs.

Available Templates

Template Description Path
README Comprehensive README template templates/readme/
CONTRIBUTING Contribution guidelines templates/contributing/

🚫 Gitignore Files

Comprehensive .gitignore templates for different technologies.

Available Templates

Template Description Path
Python Python-specific ignores gitignore/python.gitignore
Node.js Node.js-specific ignores gitignore/nodejs.gitignore
General Common ignore patterns gitignore/general.gitignore

πŸš€ Quick Start

  1. Browse the boilerplates above to find what you need
  2. Copy the template to your project directory
  3. Customize the configuration files and variables
  4. Install dependencies and start developing!

Example: Starting a Flask Project

# Copy the Flask boilerplate
cp -r python/flask/* my-flask-app/
cd my-flask-app

# Set up environment
python -m venv venv
source venv/bin/activate  # or `venv\Scripts\activate` on Windows

# Install dependencies
pip install -r requirements.txt

# Configure environment
cp .env.example .env

# Run the application
flask run

πŸ› οΈ Best Practices Included

🀝 Contributing

Contributions are welcome! If you have a boilerplate or template that would be useful:

  1. Fork the repository
  2. Create a feature branch
  3. Add your boilerplate with documentation
  4. Submit a pull request

πŸ“ License

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

πŸ’‘ Tips


Happy coding! πŸŽ‰