iommi

Your first pick for a django power chord

https://img.shields.io/badge/Code_on-GitHub-black https://img.shields.io/discord/773470009795018763?logo=discord&logoColor=fff?label=Discord&color=7389d8 https://github.com/iommirocks/iommi/workflows/tests/badge.svg https://codecov.io/gh/iommirocks/iommi/branch/master/graph/badge.svg Documentation Status https://img.shields.io/badge/code%20style-black-000000.svg

iommi is a toolkit to build web apps faster. It’s built on Django but goes a lot further.

It has:

  • forms: that feel familiar, but can handle growing complexity better than Django’s forms

  • tables: that are powerful out of the box and scale up to arbitrary complexity

  • a system to compose parts:, like forms, menus, and tables, into bigger pages

  • tools that will speed up your development like live edit, jump to code, great feedback for missing select/prefetch related, a profiler, and more.

  • great error messages when you make a mistake

_images/README-demo.gif

Example:

class IndexPage(Page):
    title = html.h1('Supernaut')
    welcome_text = 'This is a discography of the best acts in music!'

    artists = Table(auto__model=Artist, page_size=5)
    albums = Table(
        auto__model=Album,
        page_size=5,
    )
    tracks = Table(auto__model=Album, page_size=5)


urlpatterns = [
    path('', IndexPage().as_view()),
]

This creates a page with three separate tables, a header and some text:

_images/README-screenshot.png

For more examples, see the examples project.

Getting started

See getting started.

Running tests

You need to have tox installed, then:

make venv
source venv/bin/activate
make test
make test-docs

License

BSD

Contents:

Indices and tables