iommi
=====
.. image:: https://img.shields.io/badge/Code_on-GitHub-black
:target: https://github.com/iommirocks/iommi
.. image:: https://img.shields.io/discord/773470009795018763?logo=discord&logoColor=fff?label=Discord&color=7389d8
:target: https://discord.gg/ZyYRYhf7Pd
.. image:: https://github.com/iommirocks/iommi/workflows/tests/badge.svg
:target: https://github.com/iommirocks/iommi/actions?query=workflow%3Atests+branch%3Amaster
.. image:: https://codecov.io/gh/iommirocks/iommi/branch/master/graph/badge.svg
:target: https://codecov.io/gh/iommirocks/iommi
.. image:: https://readthedocs.org/projects/iommi/badge/?version=latest
:target: https://docs.iommi.rocks
:alt: Documentation Status
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black
iommi is a toolkit to build web apps faster. It's built on Django but goes a lot further.
It has:
- `forms <https://docs.iommi.rocks/en/latest/forms.html>`_: that feel familiar, but can handle growing complexity better than Django's forms
- `tables <https://docs.iommi.rocks/en/latest/tables.html>`_: that are powerful out of the box and scale up to arbitrary complexity
- a system to `compose parts <https://docs.iommi.rocks/en/latest/pages.html>`_:, 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
.. image:: docs/README-demo.gif
Example:
.. code-block:: python
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:
.. image:: docs/README-screenshot.png
For more examples, see the `examples project <https://github.com/iommirocks/iommi/tree/master/examples/examples>`_.
Getting started
---------------
See `getting started <https://docs.iommi.rocks/en/latest/getting_started.html>`_.
Running tests
-------------
You need to have tox installed, then:
.. code-block::
make venv
source venv/bin/activate
make test
make test-docs
License
-------
BSD
Documentation
-------------
https://docs.iommi.rocks
Raw data
{
"_id": null,
"home_page": "https://github.com/iommirocks/iommi",
"name": "iommi",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "iommi",
"author": "Anders Hovm\u00f6ller",
"author_email": "boxed@killingar.net",
"download_url": "https://files.pythonhosted.org/packages/1e/cb/776c72d4332ae3742d18f21818c7e0be57d4c009902f92cbf347061fb421/iommi-7.9.1.tar.gz",
"platform": null,
"description": "iommi\n=====\n\n.. image:: https://img.shields.io/badge/Code_on-GitHub-black\n :target: https://github.com/iommirocks/iommi\n\n.. image:: https://img.shields.io/discord/773470009795018763?logo=discord&logoColor=fff?label=Discord&color=7389d8\n :target: https://discord.gg/ZyYRYhf7Pd\n\n.. image:: https://github.com/iommirocks/iommi/workflows/tests/badge.svg\n :target: https://github.com/iommirocks/iommi/actions?query=workflow%3Atests+branch%3Amaster\n\n.. image:: https://codecov.io/gh/iommirocks/iommi/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/iommirocks/iommi\n\n.. image:: https://readthedocs.org/projects/iommi/badge/?version=latest\n :target: https://docs.iommi.rocks\n :alt: Documentation Status\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/psf/black\n\niommi is a toolkit to build web apps faster. It's built on Django but goes a lot further.\n\nIt has:\n\n- `forms <https://docs.iommi.rocks/en/latest/forms.html>`_: that feel familiar, but can handle growing complexity better than Django's forms\n- `tables <https://docs.iommi.rocks/en/latest/tables.html>`_: that are powerful out of the box and scale up to arbitrary complexity\n- a system to `compose parts <https://docs.iommi.rocks/en/latest/pages.html>`_:, like forms, menus, and tables, into bigger pages\n- tools that will speed up your development like live edit, jump to code, great feedback for missing select/prefetch related, a profiler, and more.\n- great error messages when you make a mistake\n\n.. image:: docs/README-demo.gif\n\n\nExample:\n\n\n.. code-block:: python\n\n class IndexPage(Page):\n title = html.h1('Supernaut')\n welcome_text = 'This is a discography of the best acts in music!'\n\n artists = Table(auto__model=Artist, page_size=5)\n albums = Table(\n auto__model=Album,\n page_size=5,\n )\n tracks = Table(auto__model=Album, page_size=5)\n\n\n urlpatterns = [\n path('', IndexPage().as_view()),\n ]\n\n\nThis creates a page with three separate tables, a header and some text:\n\n.. image:: docs/README-screenshot.png\n\nFor more examples, see the `examples project <https://github.com/iommirocks/iommi/tree/master/examples/examples>`_.\n\n\nGetting started\n---------------\n\nSee `getting started <https://docs.iommi.rocks/en/latest/getting_started.html>`_.\n\n\nRunning tests\n-------------\n\nYou need to have tox installed, then:\n\n.. code-block::\n\n make venv\n source venv/bin/activate\n make test\n make test-docs\n\n\nLicense\n-------\n\nBSD\n\n\nDocumentation\n-------------\n\nhttps://docs.iommi.rocks\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "iommi is a high level framework built on django",
"version": "7.9.1",
"project_urls": {
"Homepage": "https://github.com/iommirocks/iommi"
},
"split_keywords": [
"iommi"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f6b6f3c01aa47ec0d4e3168d3ba30185eb50af330a50ece23d95a9323c4acaab",
"md5": "c03b30f83e77be6f41831c2896082c62",
"sha256": "5f98756d5010ee9b6b17167f45eded1625f085315fd46e2d682330ccbf2a2d21"
},
"downloads": -1,
"filename": "iommi-7.9.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "c03b30f83e77be6f41831c2896082c62",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 317084,
"upload_time": "2025-01-17T15:03:43",
"upload_time_iso_8601": "2025-01-17T15:03:43.774364Z",
"url": "https://files.pythonhosted.org/packages/f6/b6/f3c01aa47ec0d4e3168d3ba30185eb50af330a50ece23d95a9323c4acaab/iommi-7.9.1-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1ecb776c72d4332ae3742d18f21818c7e0be57d4c009902f92cbf347061fb421",
"md5": "7d54957faeb228041bcd7b587ec812b0",
"sha256": "40dc41a3da8048c0607e8dcffc9b87b0afd8ec8d64d52ee2e3b30874078159ab"
},
"downloads": -1,
"filename": "iommi-7.9.1.tar.gz",
"has_sig": false,
"md5_digest": "7d54957faeb228041bcd7b587ec812b0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 182142,
"upload_time": "2025-01-17T15:03:48",
"upload_time_iso_8601": "2025-01-17T15:03:48.059023Z",
"url": "https://files.pythonhosted.org/packages/1e/cb/776c72d4332ae3742d18f21818c7e0be57d4c009902f92cbf347061fb421/iommi-7.9.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-17 15:03:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "iommirocks",
"github_project": "iommi",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "pyparsing",
"specs": []
}
],
"test_requirements": [
{
"name": "beautifulsoup4",
"specs": [
[
"==",
"4.12.3"
]
]
},
{
"name": "flask",
"specs": []
},
{
"name": "gprof2dot",
"specs": []
},
{
"name": "parso",
"specs": []
},
{
"name": "pytest-django",
"specs": [
[
"==",
"4.8.0"
]
]
},
{
"name": "pytest",
"specs": [
[
"==",
"8.1.1"
]
]
},
{
"name": "pytest_snapshot",
"specs": [
[
"==",
"0.9.0"
]
]
},
{
"name": "ruff",
"specs": [
[
"==",
"0.3.7"
]
]
},
{
"name": "time-machine",
"specs": [
[
"==",
"2.14.1"
]
]
},
{
"name": "django-fastdev",
"specs": []
},
{
"name": "docutils",
"specs": []
}
],
"tox": true,
"lcname": "iommi"
}