Open Source Projects
π FasCraft - FastAPI Project Generatorβ
PyPI Package: fascraft
GitHub Repository: LexxLuey/fascraft
License: MIT
Status: Active Development
Role: Lead Developer & Author
What is FasCraft?β
FasCraft is a Python-based scaffolding tool for FastAPI projects that I authored and published on PyPI. It's designed to streamline the creation and management of modular FastAPI projects, eliminating boilerplate code and enforcing best practices from the start, allowing developers to focus on business logic.
β¨ Key Featuresβ
- π Project Generation: Create new FastAPI projects with domain-driven architecture
- π§ Module Management: Generate, list, update, and remove domain modules
- ποΈ Domain-Driven Design: Self-contained modules with models, schemas, services, and routers
- βοΈ Smart Configuration: Automatic project detection and configuration management
- π‘οΈ Safety First: Confirmations, backups, and rollback capabilities
- π¨ Rich CLI: Beautiful tables, color coding, and progress indicators
- π§ͺ Production Ready: Comprehensive testing and error handling
- π Environment Management: Complete .env templates with database configurations
- π¦ Dependency Management: Production-ready requirements files for development and production
- ποΈ Database Support: MongoDB, PostgreSQL, MySQL, and SQLite configurations
- β‘ Service Integration: Redis, Celery, JWT, and CORS configurations
π οΈ Technology Stackβ
- Core: Python 3.10+, Typer, Rich, Jinja2
- Testing: Pytest, Coverage
- Packaging: Poetry, PyPI
- CI/CD: GitHub Actions
- Documentation: Markdown, PyPI README
π― Use Casesβ
- π Rapid Prototyping: Get a production-ready API structure in seconds
- π’ Enterprise Applications: Consistent architecture across teams
- π Learning FastAPI: Best practices built into every template
- π Legacy Migration: Convert existing projects to domain-driven design
- π₯ Team Onboarding: Standardized project structure for new developers
π Project Impactβ
- MIT License for maximum adoption
- Comprehensive documentation and examples
- Regular updates and maintenance
π§ Installation & Usageβ
# Install from PyPI
pip install fascraft
# Create a new FastAPI project
fascraft new my-awesome-api
# Generate domain modules
fascraft generate customers
fascraft generate products
# List all modules
fascraft list
π Why I Built Thisβ
As a Senior Backend Engineer with extensive experience in FastAPI development, I identified a critical need in the Python ecosystem. Teams were spending significant time on repetitive project setup instead of focusing on business logic. FasCraft was born from this observation and my desire to:
- Eliminate repetitive setup for new FastAPI projects
- Enforce best practices from day one with modern Python standards
- Standardize architecture across teams and organizations
- Accelerate development by focusing on business logic, not infrastructure
- Demonstrate technical leadership through open source contribution
π Future Plansβ
- Advanced Project Detection: Intelligent analysis of existing codebases
- Template Customization: User-defined project templates
- Plugin System: Extensible architecture for custom generators
- Cloud Integration: Direct deployment to cloud platforms
- Team Collaboration: Shared templates and best practices
π€ Contributingβ
FasCraft is open for contributions! Whether you want to:
- Report bugs or suggest features
- Submit pull requests
- Improve documentation
- Share your use cases
Visit the GitHub repository to get started.
Other Open Source Contributionsβ
π§ GitHub Projectsβ
- Active repositories with focus on Python, FastAPI, and web development
- Regular contributions to open source projects
- Documentation improvements and bug fixes
- Community engagement through issues and discussions
π Technical Writingβ
- Blog posts on software development best practices
- Tutorial content for FastAPI and Python development
- Code examples and implementation guides
- Architecture decision records and lessons learned
"Open source is not just about codeβit's about building communities and sharing knowledge to make the world of software development better for everyone."