Skip to main content

A fast, user friendly ORM which supports asyncio.

Project description

Piccolo

Build Status

Coverage Status

Documentation Status

A fast, user friendly ORM and query builder which supports asyncio. Read the docs.

Some of it’s stand out features are:

  • Support for sync and async.
  • A builtin playground, which makes learning a breeze.
  • Tab completion support - works great with iPython and VSCode.
  • Batteries included - a User model, authentication, migrations, an admin, and more.
  • Modern Python - fully type annotated.

The syntax is clean and expressive.

# Select:
await Band.select().columns(
    Band.name
).where(
    Band.popularity > 100
).run()

# Join:
await Band.select().columns(
    Band.name,
    Band.manager.name
).run()

# Delete:
await Band.delete().where(
    (Band.band_members == 0) | (Band.manager.status == 'disabled')
).run()

# Update:
await Band.update().values({Band.members: 5}).where(
    Band.name == 'Pythonistas'
).run()

Get started.

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

piccolo-0.6.1-py3-none-any.whl (54.6 kB view hashes)

Uploaded Python 3

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