.gitignore
CLAUDE.md
README.md
manage.py
package-lock.json
package.json
pyproject.toml
tox.ini
vitest.config.js
.github/workflows/ci.yml
.github/workflows/docs.yml
.github/workflows/install-test.yml
.github/workflows/release.yml
docs/Makefile
docs/conf.py
docs/contributing.rst
docs/demo.rst
docs/index.rst
docs/install.rst
docs/philosophy.rst
docs/requirements.txt
docs/_static/.gitkeep
docs/_static/screenshots/article-detail.png
docs/_static/screenshots/article-list.png
docs/_static/screenshots/bulk-delete-modal.png
docs/_static/screenshots/item-list.png
docs/_static/screenshots/list-action-bar.png
docs/_static/screenshots/set-category-modal.png
docs/_static/screenshots/site-search.png
docs/_static/screenshots/success-toast.png
docs/reference/clonable.rst
docs/reference/index.rst
docs/reference/model.rst
docs/reference/registry.rst
docs/reference/route.rst
docs/reference/router.rst
docs/reference/site.rst
docs/reference/templatetags.rst
docs/reference/view.rst
docs/reference/djcrud_api/index.rst
docs/reference/djcrud_auth/index.rst
docs/reference/djcrud_dal/index.rst
docs/reference/djcrud_dal_topbar/index.rst
docs/reference/djcrud_debug/index.rst
docs/reference/djcrud_history/index.rst
docs/reference/mixins/action.rst
docs/reference/mixins/delete.rst
docs/reference/mixins/filter.rst
docs/reference/mixins/form.rst
docs/reference/mixins/index.rst
docs/reference/mixins/list.rst
docs/reference/mixins/list_action.rst
docs/reference/mixins/log.rst
docs/reference/mixins/modelform.rst
docs/reference/mixins/object.rst
docs/reference/mixins/object_modelform.rst
docs/reference/mixins/objectform.rst
docs/reference/mixins/pagination.rst
docs/reference/mixins/tables2.rst
docs/reference/mixins/template.rst
docs/reference/mixins/template_view.rst
docs/reference/views/create.rst
docs/reference/views/delete.rst
docs/reference/views/detail.rst
docs/reference/views/form.rst
docs/reference/views/index.rst
docs/reference/views/list.rst
docs/reference/views/list_action.rst
docs/reference/views/template.rst
docs/reference/views/update.rst
docs/tutorial/index.rst
docs/tutorial/stage0.rst
docs/tutorial/stage1.rst
docs/tutorial/stage2.rst
docs/tutorial/stage3.rst
docs/tutorial/stage4.rst
docs/tutorial/stage5.rst
src/djcrud/__init__.py
src/djcrud/admin.py
src/djcrud/apps.py
src/djcrud/backends.py
src/djcrud/clonable.py
src/djcrud/errors.py
src/djcrud/handlers.py
src/djcrud/introspection.py
src/djcrud/model.py
src/djcrud/models.py
src/djcrud/redirect.py
src/djcrud/registry.py
src/djcrud/route.py
src/djcrud/router.py
src/djcrud/settings.py
src/djcrud/tests.py
src/djcrud/view.py
src/djcrud.egg-info/PKG-INFO
src/djcrud.egg-info/SOURCES.txt
src/djcrud.egg-info/dependency_links.txt
src/djcrud.egg-info/requires.txt
src/djcrud.egg-info/scm_file_list.json
src/djcrud.egg-info/scm_version.json
src/djcrud.egg-info/top_level.txt
src/djcrud/locale/en/LC_MESSAGES/django.mo
src/djcrud/locale/en/LC_MESSAGES/django.po
src/djcrud/locale/fr/LC_MESSAGES/django.mo
src/djcrud/locale/fr/LC_MESSAGES/django.po
src/djcrud/management/commands/show_urls.py
src/djcrud/templatetags/djcrud.py
src/djcrud/views/action.py
src/djcrud/views/create.py
src/djcrud/views/delete.py
src/djcrud/views/detail.py
src/djcrud/views/filter.py
src/djcrud/views/form.py
src/djcrud/views/generic.py
src/djcrud/views/json.py
src/djcrud/views/list.py
src/djcrud/views/list_action.py
src/djcrud/views/log.py
src/djcrud/views/modelform.py
src/djcrud/views/object.py
src/djcrud/views/objectform.py
src/djcrud/views/pagination.py
src/djcrud/views/search.py
src/djcrud/views/swagger.py
src/djcrud/views/tables2.py
src/djcrud/views/template.py
src/djcrud/views/update.py
src/djcrud_api/__init__.py
src/djcrud_api/apps.py
src/djcrud_api/djcrud.py
src/djcrud_api/middleware.py
src/djcrud_api/models.py
src/djcrud_api/views.py
src/djcrud_api/migrations/0001_initial.py
src/djcrud_api/migrations/0002_rename_from_djmvc_swagger.py
src/djcrud_api/migrations/0003_rename_from_djmvc_api.py
src/djcrud_api/migrations/__init__.py
src/djcrud_api/static/djcrud_api/swagger-ui-bundle.js
src/djcrud_api/static/djcrud_api/swagger-ui-standalone-preset.js
src/djcrud_api/static/djcrud_api/swagger-ui.css
src/djcrud_api/templates/djcrud_api/api.html
src/djcrud_auth/__init__.py
src/djcrud_auth/admin.py
src/djcrud_auth/apps.py
src/djcrud_auth/djcrud.py
src/djcrud_auth/models.py
src/djcrud_auth/tests.py
src/djcrud_auth/views.py
src/djcrud_auth/locale/en/LC_MESSAGES/django.mo
src/djcrud_auth/locale/en/LC_MESSAGES/django.po
src/djcrud_auth/locale/fr/LC_MESSAGES/django.mo
src/djcrud_auth/locale/fr/LC_MESSAGES/django.po
src/djcrud_bulma/__init__.py
src/djcrud_bulma/admin.py
src/djcrud_bulma/apps.py
src/djcrud_bulma/models.py
src/djcrud_bulma/tests.py
src/djcrud_bulma/views.py
src/djcrud_bulma/locale/en/LC_MESSAGES/django.mo
src/djcrud_bulma/locale/en/LC_MESSAGES/django.po
src/djcrud_bulma/locale/fr/LC_MESSAGES/django.mo
src/djcrud_bulma/locale/fr/LC_MESSAGES/django.po
src/djcrud_bulma/static/djcrud_bulma/css/style.css
src/djcrud_bulma/static/djcrud_bulma/js/filter-sidebar.js
src/djcrud_bulma/static/djcrud_bulma/js/filter-sidebar.test.js
src/djcrud_bulma/static/djcrud_bulma/js/form-focus.js
src/djcrud_bulma/static/djcrud_bulma/js/form-focus.test.js
src/djcrud_bulma/static/djcrud_bulma/js/hamburger.js
src/djcrud_bulma/static/djcrud_bulma/js/hamburger.test.js
src/djcrud_bulma/static/djcrud_bulma/js/list-action-bar.js
src/djcrud_bulma/static/djcrud_bulma/js/list-action-bar.test.js
src/djcrud_bulma/static/djcrud_bulma/js/nav-config.js
src/djcrud_bulma/static/djcrud_bulma/js/nav-config.test.js
src/djcrud_bulma/static/djcrud_bulma/js/toast.js
src/djcrud_bulma/static/djcrud_bulma/js/toast.test.js
src/djcrud_bulma/templates/djcrud/400.html
src/djcrud_bulma/templates/djcrud/403.html
src/djcrud_bulma/templates/djcrud/404.html
src/djcrud_bulma/templates/djcrud/500.html
src/djcrud_bulma/templates/djcrud/_actions_column.html
src/djcrud_bulma/templates/djcrud/_checkbox_column.html
src/djcrud_bulma/templates/djcrud/_checkbox_header.html
src/djcrud_bulma/templates/djcrud/_deletion_preview.html
src/djcrud_bulma/templates/djcrud/_error.html
src/djcrud_bulma/templates/djcrud/_filter.html
src/djcrud_bulma/templates/djcrud/_flashes.html
src/djcrud_bulma/templates/djcrud/_navbar_burger.html
src/djcrud_bulma/templates/djcrud/_object_list.html
src/djcrud_bulma/templates/djcrud/_pagination.html
src/djcrud_bulma/templates/djcrud/_tables2.html
src/djcrud_bulma/templates/djcrud/base.html
src/djcrud_bulma/templates/djcrud/base_immersive.html
src/djcrud_bulma/templates/djcrud/detail.html
src/djcrud_bulma/templates/djcrud/detaillist.html
src/djcrud_bulma/templates/djcrud/error.html
src/djcrud_bulma/templates/djcrud/form.html
src/djcrud_bulma/templates/djcrud/form_delete.html
src/djcrud_bulma/templates/djcrud/home.html
src/djcrud_bulma/templates/djcrud/list.html
src/djcrud_bulma/templates/djcrud/test_immersive.html
src/djcrud_dal/__init__.py
src/djcrud_dal/apps.py
src/djcrud_dal/hooks.py
src/djcrud_dal/lookup.py
src/djcrud_dal/models.py
src/djcrud_dal/views.py
src/djcrud_dal_topbar/__init__.py
src/djcrud_dal_topbar/apps.py
src/djcrud_dal_topbar/djcrud.py
src/djcrud_dal_topbar/lookup.py
src/djcrud_dal_topbar/views.py
src/djcrud_dal_topbar/static/djcrud_dal_topbar/css/site-search.css
src/djcrud_dal_topbar/static/djcrud_dal_topbar/js/site-search.js
src/djcrud_dal_topbar/templates/djcrud/_site_search.html
src/djcrud_debug/__init__.py
src/djcrud_debug/apps.py
src/djcrud_debug/djcrud.py
src/djcrud_debug/models.py
src/djcrud_debug/routing_debug.py
src/djcrud_debug/views.py
src/djcrud_example/__init__.py
src/djcrud_example/asgi.py
src/djcrud_example/example_urls.py
src/djcrud_example/models.py
src/djcrud_example/settings.py
src/djcrud_example/urls.py
src/djcrud_example/wsgi.py
src/djcrud_example/migrations/0001_initial.py
src/djcrud_example/migrations/0002_test_users.py
src/djcrud_example/migrations/__init__.py
src/djcrud_example/stage0/__init__.py
src/djcrud_example/stage0/admin.py
src/djcrud_example/stage0/apps.py
src/djcrud_example/stage0/djcrud.py
src/djcrud_example/stage0/models.py
src/djcrud_example/stage0/tests.py
src/djcrud_example/stage0/migrations/0001_initial.py
src/djcrud_example/stage0/migrations/__init__.py
src/djcrud_example/stage1/__init__.py
src/djcrud_example/stage1/admin.py
src/djcrud_example/stage1/apps.py
src/djcrud_example/stage1/djcrud.py
src/djcrud_example/stage1/models.py
src/djcrud_example/stage1/tests.py
src/djcrud_example/stage1/migrations/__init__.py
src/djcrud_example/stage2/__init__.py
src/djcrud_example/stage2/admin.py
src/djcrud_example/stage2/apps.py
src/djcrud_example/stage2/djcrud.py
src/djcrud_example/stage2/models.py
src/djcrud_example/stage2/tests.py
src/djcrud_example/stage2/migrations/0001_initial.py
src/djcrud_example/stage2/migrations/__init__.py
src/djcrud_example/stage3/__init__.py
src/djcrud_example/stage3/admin.py
src/djcrud_example/stage3/apps.py
src/djcrud_example/stage3/backends.py
src/djcrud_example/stage3/djcrud.py
src/djcrud_example/stage3/models.py
src/djcrud_example/stage3/tests.py
src/djcrud_example/stage3/migrations/0001_initial.py
src/djcrud_example/stage3/migrations/__init__.py
src/djcrud_example/stage4/__init__.py
src/djcrud_example/stage4/admin.py
src/djcrud_example/stage4/apps.py
src/djcrud_example/stage4/djcrud.py
src/djcrud_example/stage4/models.py
src/djcrud_example/stage4/tests.py
src/djcrud_example/stage4/migrations/0001_initial.py
src/djcrud_example/stage4/migrations/__init__.py
src/djcrud_example/stage5/__init__.py
src/djcrud_example/stage5/admin.py
src/djcrud_example/stage5/apps.py
src/djcrud_example/stage5/djcrud.py
src/djcrud_example/stage5/models.py
src/djcrud_example/stage5/tests.py
src/djcrud_example/stage5/migrations/0001_initial.py
src/djcrud_example/stage5/migrations/__init__.py
src/djcrud_history/__init__.py
src/djcrud_history/apps.py
src/djcrud_history/djcrud.py
src/djcrud_history/log.py
src/djcrud_history/models.py
src/djcrud_history/views.py
src/djcrud_triggers/__init__.py
src/djcrud_triggers/apps.py
src/djcrud_triggers/hooks/__init__.py
src/djcrud_triggers/hooks/events.py
src/djcrud_triggers/hooks/registry.py
src/djcrud_triggers/hooks/runner.py
tests/alight_helpers.py
tests/conftest.py
tests/dal_screenshots.py
tests/doc_screenshots.py
tests/test_api.py
tests/test_auth.py
tests/test_breadcrumbs.py
tests/test_detail_list.py
tests/test_djcrud_dal.py
tests/test_djcrud_dal_splinter.py
tests/test_djcrud_dal_topbar.py
tests/test_djcrud_dal_topbar_splinter.py
tests/test_djcrud_tags.py
tests/test_djcrud_triggers.py
tests/test_docs_screenshots.py
tests/test_errors.py
tests/test_eval.py
tests/test_filter.py
tests/test_form_focus.py
tests/test_hamburger.py
tests/test_i18n.py
tests/test_immersive.py
tests/test_list_action.py
tests/test_list_combinations.py
tests/test_logentry.py
tests/test_messages.py
tests/test_messages_browser.py
tests/test_nav_active.py
tests/test_pagination.py
tests/test_permissions.py
tests/test_queryset.py
tests/test_registry.py
tests/test_router.py
tests/test_routing.py
tests/test_routing_debug.py
tests/test_stage0.py
tests/test_stage1.py
tests/test_stage2.py
tests/test_stage3.py
tests/test_stage4.py
tests/test_stage5.py
tests/test_tokens.py
tests/test_tutorial_docs.py
tests/test_view.py
tests/topbar_screenshots.py
tests/screenshots/dal/user-list-filter-groups-filtered.png
tests/screenshots/dal/user-list-filter-groups-initial.png
tests/screenshots/dal/user-list-filter-groups-selected.png
tests/screenshots/dal/user-update-groups-initial.png
tests/screenshots/dal/user-update-groups-selected.png
tests/screenshots/topbar/site-search-detail.png
tests/screenshots/topbar/site-search-initial.png
tests/screenshots/topbar/site-search-results.png
tests/views/test_template.py