Phzyx Auth
Secure-by-default identity, sessions, JWT, API keys, and RBAC for Forge apps and AdminBoard.
This is an optional battery. Most apps start with:
uv add phzyx-forge
uv add 'phzyx-forge[auth]'
# or: uv add phzyx-auth
Full docs live on the website
PyPI is the install surface. Tutorials, production notes, and product context are on phzyx.xyz:
| Auth tutorial | https://phzyx.xyz/forge/tutorials/auth |
| Forge docs | https://phzyx.xyz/forge |
| Getting started | https://phzyx.xyz/forge/getting-started |
| Product home | https://phzyx.xyz |
| Source | https://github.com/phzyxyz/forge |
After install → open phzyx.xyz/forge/tutorials/auth.
Install
uv add 'phzyx-forge[auth]'
# equivalent
uv add 'phzyx-auth[fastapi]'
Requires phzyx-forge (product wheel).
What you get (0.1)
| Area | Capability |
|---|---|
| Passwords | Argon2id, policy min length |
| Sessions | Opaque cookie sessions (hashed at rest), idle + absolute TTL |
| JWT | HS256 access + rotating refresh |
| API keys | phx_ prefix, scopes, list/revoke |
| RBAC | Groups / permissions, Principal, guards |
| Lockout | Failed-login counter + rate limits + audit log |
| Reset / change | Forgot/reset (anti-enum), change password, revoke sessions |
| CSRF | Double-submit cookie + X-CSRF-Token for session mutations |
| AdminBoard | Permission bridge for staff UI |
| CLI | phzyx-auth create-superuser |
Pre-1.0: APIs may change. Prefer lockfiles.
Quick start (FastAPI)
from fastapi import Depends, FastAPI
from phzyx.auth import AuthConfig, AuthService, Principal
from phzyx.auth.adapters.fastapi import mount_auth, require_user
app = FastAPI()
svc = AuthService(
config=AuthConfig(
secret="use-PHZYX_AUTH_SECRET-32+bytes-in-prod!!",
production=False,
cookie_secure=False,
)
)
mount_auth(app, svc)
@app.get("/private")
async def private(user: Principal = Depends(require_user)):
return {"email": user.email}
phzyx-auth create-superuser --email admin@example.com --password 'longpassword1'
Full walkthrough: Auth tutorial.
Related
- Product: phzyx-forge
- Cache battery: phzyx-cache
- Site: phzyx.xyz
License
MIT · phzyx.xyz
Metadata
Release files for phzyx-auth 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| phzyx_auth-0.1.5.tar.gz | 45.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| phzyx_auth-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 94.5 kB
Release files / phzyx_auth-0.1.5.tar.gz
| Download URL | phzyx_auth-0.1.5.tar.gz |
|---|---|
| Size | 45.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0132cdbc62327f193b3954ea13cb20e0a9c1b0f8801835f0f7ea141a73c0a2f3
|
|
BLAKE2b-256 checksum How to use checksums |
5864c8b363229f6c1a59c329b9dc891780e00149e785e1cf33d1057664325bf4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 30, 2026.
Transparency logRelease files / phzyx_auth-0.1.5-py3-none-any.whl
| Download URL | phzyx_auth-0.1.5-py3-none-any.whl |
|---|---|
| Size | 49.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d2d31a4f2331c73f1236b43b4b6909ef42997a306ebbbcbffe4f5581bd3171b6
|
|
BLAKE2b-256 checksum How to use checksums |
7a0de2dd412ab1e816d973048a7e1ead490e1b895843ba4f04795e12bb2d518f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 30, 2026.
Transparency log