Appier Framework
raw JSON → 1.45.2 verified Tue Apr 14 auth: no en
Appier is an object-oriented Python web framework designed for rapid application development. It focuses on being lightweight while providing capabilities comparable to larger frameworks. It is WSGI compliant and ASGI ready, supports templating with Jinja2, offers data model layers for databases like MongoDB and TinyDB, includes automatic JSON response encoding, and features an auto-generated admin interface via `appier-extras`. The current version is 1.45.2, with active development on its GitHub repository.
pip install appier Warnings
gotcha When developing asynchronous routes (using `async def`), ensure you serve your Appier application with an ASGI-compliant server (e.g., Uvicorn, Hypercorn, Daphne). Using a WSGI-only server will prevent async routes from functioning correctly. ↓
fix Use `SERVER=uvicorn python your_app.py` or a similar command for ASGI servers.
gotcha Many advanced features, such as the automatic admin interface or specific database integrations (MongoDB, TinyDB), require installing additional, optional packages (e.g., `appier-extras`, `pymongo`, `tinydb`). These are not installed by default with `pip install appier`. ↓
fix Explicitly install required optional dependencies, e.g., `pip install appier appier-extras pymongo`.
deprecated While Appier's PyPI metadata indicates compatibility with Python 2.6 and 2.7, the project's GitHub README emphasizes 'Python 3 compatible' and provides async examples requiring Python 3.5+. New development should strongly target Python 3.x, as Python 2 is end-of-life and not actively supported by the community. ↓
fix Develop and run Appier applications exclusively on Python 3.x environments (preferably 3.8+).
Imports
- App
from appier import App - route
from appier import route
Quickstart
import appier
class HelloApp(appier.App):
@appier.route("/", "GET")
def hello(self):
return "Hello World"
if __name__ == "__main__":
HelloApp().serve()