Description
Starting any project from scratch can be a daunting task… But not if you have this ultimate Python project blueprint!
Blueprint/Boilerplate For Python Projects alternatives and similar packages
Based on the "RESTful API" category.
Alternatively, view Blueprint/Boilerplate For Python Projects alternatives based on common mentions on social networks and blogs.
-
falcon
The no-magic web API and microservices framework for Python developers, with an emphasis on reliability and performance at scale. -
hug
Embrace the APIs of the future. Hug aims to make developing APIs as simple as possible, but no simpler. -
connexion
Connexion is a modern Python web framework that makes spec-first and api-first development easy. -
Django REST Swagger
DISCONTINUED. Swagger Documentation Generator for Django REST Framework: deprecated -
pycord
Pycord is a modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python -
django-sql-explorer
SQL reporting that Just Works. Fast, simple, and confusion-free. Write and share queries in a delightful SQL editor, with AI assistance. -
django-admin-interface
:superhero: :zap: django's default admin interface with superpowers - customizable themes, popup windows replaced by modals and many other features. -
flask-restless
NO LONGER MAINTAINED - A Flask extension for creating simple ReSTful JSON APIs from SQLAlchemy models. -
apispec
A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification).. -
django-maintenance-mode
:construction: :hammer_and_wrench: shows a 503 error page when maintenance-mode is on. -
pyswagger
An OpenAPI (fka Swagger) client & converter in python, which is type-safe, dynamic, spec-compliant. -
Flask-Muck
🧹 Flask REST framework for generating CRUD APIs and OpenAPI specs in the SQLAlchemy, Marshmallow/Pydantic application stack. -
Changelog CI
Changelog CI is a GitHub Action that enables a project to automatically generate changelogs
Judoscale - Save 47% on cloud hosting with autoscaling that just works

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Blueprint/Boilerplate For Python Projects or a related project?
Popular Comparisons
README
Blueprint/Boilerplate For Python Projects
Blog Posts - More Information About This Repo
You can find more information about this project/repository and how to use it in following blog post:
- Ultimate Setup for Your Next Python Project
- Automating Every Aspect of Your Python Project
- Deploy Any Python Project to Kubernetes
- Implementing gRPC server using Python
Quick Start
To use this repository as starter for your project you can run configure_project.sh
script, which sets up all variables and file names. This way you can avoid configuring and renaming things yourself:
./configure_project.sh MODULE="coolproject" REGISTRY="docker.pkg.github.com/martinheinz/repo-name"
Running
Using Python Interpreter
~ $ make run
Using Docker
Development image:
~ $ make build-dev
~ $ docker images --filter "label=name=blueprint"
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.pkg.github.com/martinheinz/python-project-blueprint/blueprint 3492a40-dirty acf8d09acce4 28 seconds ago 967MB
~ $ docker run acf8d09acce4
Hello World...
Production (Distroless) image:
~ $ make build-prod VERSION=0.0.5
~ $ docker images --filter "label=version=0.0.5"
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.pkg.github.com/martinheinz/python-project-blueprint/blueprint 0.0.5 65e6690d9edd 5 seconds ago 86.1MB
~ $ docker run 65e6690d9edd
Hello World...
Testing
Test are ran every time you build dev or prod image. You can also run tests using:
~ $ make test
Pushing to GitHub Package Registry
~ $ docker login docker.pkg.github.com --username MartinHeinz
Password: ...
...
Login Succeeded
~ $ make push VERSION=0.0.5
Cleaning
Clean Pytest and coverage cache/files:
~ $ make clean
Clean Docker images:
~ $ make docker-clean
Kubernetes
Application can be easily deployed on k8s using KinD.
To create cluster and/or view status:
~ $ make cluster
To deploy application to local cluster:
~ $ make deploy-local
To get debugging information of running application:
~ $ make cluster-debug
To get remote shell into application pod:
~ $ make cluster-rsh
To apply/update Kubernetes manifest stored in k8s
directory:
~ $ make manifest-update
Setting Up Sonar Cloud
- Navigate to https://sonarcloud.io/projects
- Click plus in top right corner -> analyze new project
- Setup with other CI tool -> other -> Linux
- Copy
-Dsonar.projectKey=
and-Dsonar.organization=
- These 2 values go to
sonar-project.properties
file
- These 2 values go to
- Click pencil at bottom of
sonar-scanner
command - Generate token and save it
- Go to repo -> Settings tab -> Secrets -> Add a new secret
- name:
SONAR_TOKEN
- value: Previously copied token
- name:
Creating Secret Tokens
Token is needed for example for GitHub Package Registry. To create one:
- Go to Settings tab
- Click Secrets
- Click Add a new secret
- Name: name that will be accessible in GitHub Actions as
secrets.NAME
- Value: value
- Name: name that will be accessible in GitHub Actions as