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.27.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: piccolo_admin-0.27.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.27.0.tar.gz
Algorithm Hash digest
SHA256 81e68e647b8564776bd385aa43fc0a69a119856ac8edc7cd19b30f7dc30d90a7
MD5 e5c80af8501b9eb05dd08ff9f9f93f59
BLAKE2b-256 9e8d1f52f1f6beafdf04e50455014f2a727812798b6c1ec89d91f0a386286d76

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for piccolo_admin-0.27.0-py3-none-any.whl
Algorithm Hash digest
SHA256 95714dd0a0d012cbfb845bbdea69a2e21c3b622424efdfddd865f612466d9e3c
MD5 51412499de635961e89ec33f871ac2a7
BLAKE2b-256 14bfafe35ca2349ef2c37aa5ce9ff3dc5007987dc231e304be785c7bb66d7b2b

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