Skip to content

sky-flutter/python-copier-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Python Project Template

A comprehensive Copier template for generating modern Python applications with database connectivity, logging, Docker support, and CI/CD pipelines.

🚀 Project Description

This template provides a standardized foundation for Python projects with:

  • Multi-Database Support: MySQL, PostgreSQL, and Snowflake configurations
  • Environment-Based Configuration: Secure settings management with Pydantic
  • Comprehensive Logging: Detailed logging with emoji support for better readability
  • Docker Support: Containerized deployment with multi-stage builds
  • CI/CD Pipeline: Automated builds and deployments via GitHub Actions or GitLab CI
  • Connection Management: Robust database connection handling with context managers
  • Project Structure: Well-organized directory structure following Python best practices

📋 How to Use with Copier

Prerequisites

  • Copier installed on your system
  • Python 3.x (3.7 or higher recommended)
  • make CLI should installed on your system

Quick Start

  1. Install Copier (if not already installed):

    pip install copier
  2. Generate a new project:

    copier copy <this-repo-url> <destination-folder>
  3. Follow the interactive prompts to configure:

    • Project name
    • Database type (MySQL, PostgreSQL, Snowflake)
    • CI/CD platform (GitHub Actions, GitLab CI)
    • Additional features
  4. Navigate and setup:

    cd <destination-folder>
    make setup

Template Configuration Options

The template will prompt you for:

  • Project Name: Name of your new project
  • Database: Choose between MySQL, PostgreSQL, or Snowflake
  • CI/CD: Select GitHub Actions or GitLab CI
  • Additional Features: Configure logging, Docker, etc.

🔮 Future Enhancements

  • Additional Database Support: MongoDB, Redis, and SQLite integrations
  • Web Framework Integration: Flask, and Django templates
  • Testing Framework: pytest configuration with coverage reporting
  • Monitoring & Observability: Prometheus metrics and distributed tracing
  • Security Features: Authentication, authorization, and security scanning
  • Multi-Language Support: Internationalization and localization
  • Cloud Deployment: AWS, GCP, and Azure deployment configurations
  • Microservices Template: Service mesh and API gateway integration
  • Machine Learning: ML/AI project templates with common frameworks
  • Real-time Features: WebSocket and event-driven architecture support

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors