MicroPie - An ultra-micro web framework that gets out of your way!
What My Project Does
MicroPie is a lightweight Python web framework that makes building web applications simple and efficient. It includes features such as method based routing (no need for routing decorators), simple session management, WSGI support, and (optional) Jinja2 template rendering.
- Check out the project website at patx.github.io/micropie
- View the source code on the GitHub repo
- View documentation and examples in the README
Target Audience
MicroPie is well-suited for those who value simplicity, lightweight architecture, and ease of deployment, making it a great choice for fast development cycles and minimalistic web applications.
- WSGI Application Developers
- Python Enthusiasts Looking for an Alternative to Flask/Bottle
- Teachers and students who want a straightforward web framework for learning web development concepts without the distraction of complex frameworks
- Users who want more control over their web framework without hidden abstractions
- Developers who prefer minimal dependencies and quick deployment
- Developers looking for a minimal learning curve and quick setup
Comparison
Feature | MicroPie | Flask | CherryPy | Bottle | Django | FastAPI |
---|---|---|---|---|---|---|
Ease of Use | Very Easy | Easy | Easy | Easy | Moderate | Moderate |
Routing | Automatic | Manual | Manual | Manual | Automatic | Automatic |
Template Engine | Jinja2 | Jinja2 | None | SimpleTpl | Django Templating | Jinja2 |
Session Handling | Built-in | Extension | Built-in | Plugin | Built-in | Extension |
Request Handling | Simple | Flexible | Advanced | Flexible | Advanced | Advanced |
Performance | High | High | Moderate | High | Moderate | Very High |
WSGI Support | Yes | Yes | Yes | Yes | Yes | No (ASGI) |
Async Support | No | No (Quart) | No | No | Limited | Yes |
Deployment | Simple | Moderate | Moderate | Simple | Complex | Moderate |
EDIT: Exciting stuff.... Since posting this originally, MicroPie has gone through much development and now uses ASGI instead of WSGI. See the website for more info.