Skip to main content

A simple and powerful admin for Piccolo models, using ASGI.

Project description

Logo

Piccolo Admin

Documentation Status

Piccolo Admin provides a simple yet powerful admin interface on top of Piccolo tables - allowing you to easily add / edit / filter your data.

Screenshot

It was created at a design agency to serve the needs of customers who demand a high quality, beautiful admin interface for their websites. Our goal is to create a world class admin interface, akin to Wordpress or Django.

It's built using the latest technologies, with Vue JS on the front end, and a modern REST backend.

Try it

Try it online (username: piccolo, password: piccolo123).

Local Demo

To run a demo locally, using Python 3.7 or above:

pip install piccolo_admin
admin_demo

And then just launch localhost:8000 in your browser.

To see what happens behind the scenes, see piccolo_admin/example.py.

In a few lines of code we are able to:

  • Define our models
  • Setup a database
  • Create a REST API
  • Setup a web server and admin interface

ASGI

Since the admin is an ASGI app, you can either run it standalone like in the demo, or integrate it with a larger ASGI app such as FastAPI and Starlette.

For example, using Starlette routes:

from piccolo_admin.endpoints import create_admin
from starlette.routing import Router, Route
import uvicorn

from my_project.tables import Director, Movie


# The `allowed_hosts` argument is required when running under HTTPS. It's used
# for additional CSRF defence.
admin = create_admin([Director, Movie], allowed_hosts=['my_site.com'])


router = Router([
    Route(path="/", endpoint=Hello),
    Mount(path="/admin/", app=admin),
])


if __name__ == '__main__':
    uvicorn.run(router)

Full docs

Full documentation is available on Read the docs.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

piccolo_admin-0.28.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

piccolo_admin-0.28.0-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file piccolo_admin-0.28.0.tar.gz.

File metadata

  • Download URL: piccolo_admin-0.28.0.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.7.13

File hashes

Hashes for piccolo_admin-0.28.0.tar.gz
Algorithm Hash digest
SHA256 1c8f1e057a800fd0567e6f7d77761b59d4607b52a42b9ce8773ca2800491e7f0
MD5 bcffa556f306449ae078dccc51583665
BLAKE2b-256 c6d511b1ed11477d0acdbc62637ba5d7b29ea133efe785c8a7721afdb7549409

See more details on using hashes here.

File details

Details for the file piccolo_admin-0.28.0-py3-none-any.whl.

File metadata

File hashes

Hashes for piccolo_admin-0.28.0-py3-none-any.whl
Algorithm Hash digest
SHA256 47490b2cf30f45e4686f0580f28f9ae4ce62045d374b25203547067f167f3a4e
MD5 af6a8c958e30cda94b4e915eb59d6be4
BLAKE2b-256 a642c563732fba45edfa8138b7f3a7124435e4c837194e214fe12e90c4799516

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page