Plain
Plain is a web framework for building products with Python.
The core plain package provides the backbone of a Python web application (similar to Flask), while the additional first-party packages can power a more fully-featured database-backed app (similar to Django).
All Plain packages are designed to work together and use PEP 420 to share the plain namespace.
To quickly get started with Plain, visit plainframework.com/start/.
Core Modules
The plain package includes everything you need to start handling web requests with Python:
- assets - Serve static files and assets.
- cli - The
plainCLI, powered by Click. - csrf - Cross-Site Request Forgery protection.
- forms - HTML forms and form validation.
- http - HTTP request and response handling.
- logs - Logging configuration and utilities.
- preflight - Preflight checks for your app.
- runtime - Runtime settings and configuration.
- templates - Jinja2 templates and rendering.
- test - Test utilities and fixtures.
- urls - URL routing and request dispatching.
- views - Class-based views and request handlers.
Foundational Packages
- plain.postgres - Define and interact with your database models.
- plain.cache - A database-driven general purpose cache.
- plain.email - Send emails with SMTP or custom backends.
- plain.sessions - User sessions and cookies.
- plain.jobs - Background jobs stored in the database.
- plain.api - Build APIs with Plain views.
- plain.mcp - Expose your app to AI clients as an MCP server.
Auth Packages
- plain.auth - User authentication and authorization.
- plain.oauth - OAuth authentication and API access.
- plain.passwords - Password-based login and registration.
- plain.loginlink - Login links for passwordless authentication.
Admin Packages
- plain.admin - An admin interface for back-office tasks.
- plain.flags - Feature flags.
- plain.connect - Export traces, metrics, and logs to Plain Cloud via OTLP.
Dev Packages
- plain.dev - A single command for local development.
- plain.pytest - Pytest fixtures and helpers.
- plain.code - Code formatting and linting.
- plain.portal - Remote Python shell and file transfer via encrypted tunnel.
- plain.tunnel - Expose your local server to the internet.
Frontend Packages
- plain.tailwind - Tailwind CSS integration without Node.js.
- plain.htmx - HTMX integrated into views and templates.
- plain.elements - Server-side HTML components.
- plain.pages - Static pages with Markdown and Jinja2.
- plain.vendor - Vendor JavaScript and CSS libraries.
Metadata
Release files for plain 0.162.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| plain-0.162.0.tar.gz | 444.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| plain-0.162.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 883.8 kB
Release files / plain-0.162.0.tar.gz
| Download URL | plain-0.162.0.tar.gz |
|---|---|
| Size | 444.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c4c361855d49bad58adbaacc3f0cbc3af0f3878230fc8de33a565b7ac5717367
|
|
BLAKE2b-256 checksum How to use checksums |
1710de117c0213eceefb6985befcbb4f7d10e845c50c2d305b3bc4eafab8dae1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / plain-0.162.0-py3-none-any.whl
| Download URL | plain-0.162.0-py3-none-any.whl |
|---|---|
| Size | 439.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b2b91c92d31068d3e6a601e1c99d96cc690aa14acd9dd35b508981e5de94c739
|
|
BLAKE2b-256 checksum How to use checksums |
30aa2e78d8326127f191e7ddfa7366313e15009904c9ba55001bd9e4b342d7b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|