Skip to main content
https://github.com/TriOptima/iommi/workflows/tests/badge.svg https://codecov.io/gh/TriOptima/iommi/branch/master/graph/badge.svg https://repl.it/badge/github/boxed/iommi-repl.it https://img.shields.io/discord/773470009795018763

iommi is a Django-based framework that magically create pages, forms and tables with advanced out-of-the-box functionality based on your applications models - without sacrificing flexibility and control.

Major features:

  • A system to project django model definitions into more high level definitions

  • Forms: view models, data validation, and parsing

  • Queries: filtering lists/query sets

  • Tables: view models for lists/query sets, html tables, and CSV reports

  • Pages: compose pages from parts like forms, tables and html fragments

All the components are written with the same philosophy of:

  • Everything has a name

  • Traversing a namespace is done with __ when . can’t be used in normal python syntax

  • Callables for advanced usage, values for the simple cases

  • Late binding

  • Declarative/programmatic hybrid API

  • Prepackaged commonly used patterns (that can still be customized!)

  • Single point customization with no boilerplate

  • Escape hatches included

See philosophy for explanations of all these.

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:

docs/README-screenshot.png

For more examples, see the examples project.

Usage

See usage.

Running tests

We use hammett for tests, so pip install hammett then run hammett.

There’s a make test-live target for running tests interactively. You first need to pip install watchdog pyyaml argh.

For running the full tests on all supported environments: install tox then make test-all.

License

BSD

Documentation

https://docs.iommi.rocks

Metadata

Release files for iommi 2.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iommi 2.6.0
File Size Uploaded
iommi-2.6.0.tar.gz 108.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iommi 2.6.0
File Interpreter ABI Platform
iommi-2.6.0-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 298.3 kB

Release files / iommi-2.6.0.tar.gz

Download URL iommi-2.6.0.tar.gz
Size 108.0 kB
Tags Source
SHA-256 checksum
How to use checksums
ae7768fd1637a2f31cccab5a5a40affe77d31559f157ba02c79c9b64dc4e903f
BLAKE2b-256 checksum
How to use checksums
38ab7cc4be75eead9ad21b8c484838d4cc6aa8e740e8ad09e1c76d38b604f904
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

Release files / iommi-2.6.0-py2.py3-none-any.whl

Download URL iommi-2.6.0-py2.py3-none-any.whl
Size 190.3 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
89e75e35a20b7a7f9359785f9ddffa33aabe0b084bd0bee82a00293e74f6f11f
BLAKE2b-256 checksum
How to use checksums
597840f8748ae2de396e37966f44d3333f14289c3b15747eb7f4f16e1c4f1815
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.5

Release history Release notifications | RSS feed

7.32.2

2 release files

7.32.1

2 release files

7.32.0

2 release files

7.31.0

2 release files

7.30.1

2 release files

7.30.0

2 release files

7.29.0

2 release files

7.28.0

2 release files

7.25.2

2 release files

7.25.1

2 release files

7.24.1

2 release files

7.23.0

2 release files

7.22.1

2 release files

7.22.0

2 release files

7.21.0

2 release files

7.20.0

2 release files

7.19.2

2 release files

7.19.1

2 release files

7.19.0

2 release files

7.18.1

2 release files

7.17.0

2 release files

7.16.0

2 release files

7.14.4

2 release files

7.14.3

2 release files

7.14.1

2 release files

7.14.0

2 release files

7.13.0

2 release files

7.12.1

2 release files

7.12.0

2 release files

7.11.2

2 release files

7.10.1

2 release files

7.10.0

2 release files

7.9.1

2 release files

7.9.0

2 release files

7.8.0

2 release files

7.7.2

2 release files

7.7.1

2 release files

7.7.0

2 release files

7.6.0

2 release files

7.5.2

2 release files

7.5.1

2 release files

7.5.0

2 release files

7.4.0

2 release files

7.3.0

2 release files

7.2.2

2 release files

7.2.1

2 release files

7.2.0

2 release files

7.1.1

2 release files

7.1.0

2 release files

7.0.0

2 release files

6.8.0

2 release files

6.7.0

2 release files

6.6.0

2 release files

6.5.0

2 release files

6.4.0

2 release files

6.3.0

2 release files

6.2.0

2 release files

6.1.1

2 release files

6.1.0

2 release files

6.0.0

2 release files

5.13.0

2 release files

5.12.0

2 release files

5.9.0

2 release files

5.8.1

2 release files

5.8.0

2 release files

5.7.1

2 release files

5.7.0

2 release files

5.6.2

2 release files

5.6.1

2 release files

5.6.0

2 release files

5.5.0

2 release files

5.4.0

2 release files

5.3.1

2 release files

5.3.0

2 release files

5.2.1

2 release files

5.2.0

2 release files

5.1.2

2 release files

5.1.1

2 release files

5.1.0

2 release files

5.0.0

2 release files

4.7.0

2 release files

4.6.0

2 release files

4.5.1

2 release files

4.5.0

2 release files

4.4.0

2 release files

4.3.3

2 release files

4.3.2

2 release files

4.3.1

2 release files

4.3.0

2 release files

4.2.0

2 release files

4.1.0

2 release files

4.0.0

2 release files

3.4.0

2 release files

3.3.0

2 release files

3.2.2

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.8.12

2 release files

2.8.10

2 release files

2.8.9

2 release files

2.8.8

2 release files

2.8.7

2 release files

2.8.6

2 release files

2.8.5

2 release files

2.8.4

2 release files

2.8.3

2 release files

2.8.2

2 release files

2.8.1

2 release files

2.8.0

2 release files

2.7.0

2 release files

2.6.1

2 release files

This release

2.6.0 This release

2 release files

2.5.0

1 release file

2.4.0

1 release file

2.3.0

1 release file

2.2.0

1 release file

2.1.0

1 release file

2.0.1

1 release file

2.0.0

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.7.0

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.0

1 release file

0.4.0

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page