├── .claude └── commands │ ├── speckit.analyze.md │ ├── speckit.checklist.md │ ├── speckit.clarify.md │ ├── speckit.constitution.md │ ├── speckit.implement.md │ ├── speckit.plan.md │ ├── speckit.specify.md │ ├── speckit.tasks.md │ └── speckit.taskstoissues.md ├── .github └── workflows │ └── publish.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .specify ├── memory │ └── constitution.md ├── scripts │ └── bash │ │ ├── check-prerequisites.sh │ │ ├── common.sh │ │ ├── create-new-feature.sh │ │ ├── setup-plan.sh │ │ └── update-agent-context.sh └── templates │ ├── agent-file-template.md │ ├── checklist-template.md │ ├── plan-template.md │ ├── spec-template.md │ └── tasks-template.md ├── CLAUDE.md ├── LICENSE ├── README.md ├── TESTING.md ├── examples ├── database.py ├── input_choices.png ├── input_choices.py ├── input_choices_add.png ├── integration_example.py ├── list_fields.py ├── markdown_field.py ├── minimal.py ├── nested_lists.py ├── pathminimal.py ├── select_options.py ├── submodel.py └── validation.py ├── niceguicrud ├── __init__.py ├── basemodel_to_table.py ├── input_handlers │ ├── __init__.py │ ├── base.py │ ├── boolean.py │ ├── collections.py │ ├── nested.py │ ├── numeric.py │ ├── selection.py │ ├── string.py │ └── temporal.py ├── nicecrud.py └── show_error.py ├── pyproject.toml ├── pytest.ini ├── specs └── 001-modular-input │ ├── checklists │ └── requirements.md │ ├── contracts │ ├── input-handler-protocol.md │ └── registry-api.md │ ├── data-model.md │ ├── plan.md │ ├── quickstart.md │ ├── research.md │ ├── spec.md │ └── tasks.md ├── test-versions.sh ├── tests ├── __init__.py ├── integration │ └── test_handler_registry.py ├── playwright │ ├── README.md │ ├── conftest.py │ ├── test_input_choices.py │ ├── test_minimal_example.py │ └── test_validation.py ├── test_basemodellist.py ├── test_config.py ├── test_examples_import.py ├── test_nicecrud.py └── unit │ └── test_input_handlers.py └── uv.lock /.claude/commands/speckit.analyze.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.analyze.md -------------------------------------------------------------------------------- /.claude/commands/speckit.checklist.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.checklist.md -------------------------------------------------------------------------------- /.claude/commands/speckit.clarify.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.clarify.md -------------------------------------------------------------------------------- /.claude/commands/speckit.constitution.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.constitution.md -------------------------------------------------------------------------------- /.claude/commands/speckit.implement.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.implement.md -------------------------------------------------------------------------------- /.claude/commands/speckit.plan.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.plan.md -------------------------------------------------------------------------------- /.claude/commands/speckit.specify.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.specify.md -------------------------------------------------------------------------------- /.claude/commands/speckit.tasks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.tasks.md -------------------------------------------------------------------------------- /.claude/commands/speckit.taskstoissues.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.claude/commands/speckit.taskstoissues.md -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.github/workflows/publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /.specify/memory/constitution.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/memory/constitution.md -------------------------------------------------------------------------------- /.specify/scripts/bash/check-prerequisites.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/scripts/bash/check-prerequisites.sh -------------------------------------------------------------------------------- /.specify/scripts/bash/common.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/scripts/bash/common.sh -------------------------------------------------------------------------------- /.specify/scripts/bash/create-new-feature.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/scripts/bash/create-new-feature.sh -------------------------------------------------------------------------------- /.specify/scripts/bash/setup-plan.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/scripts/bash/setup-plan.sh -------------------------------------------------------------------------------- /.specify/scripts/bash/update-agent-context.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/scripts/bash/update-agent-context.sh -------------------------------------------------------------------------------- /.specify/templates/agent-file-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/templates/agent-file-template.md -------------------------------------------------------------------------------- /.specify/templates/checklist-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/templates/checklist-template.md -------------------------------------------------------------------------------- /.specify/templates/plan-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/templates/plan-template.md -------------------------------------------------------------------------------- /.specify/templates/spec-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/templates/spec-template.md -------------------------------------------------------------------------------- /.specify/templates/tasks-template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/.specify/templates/tasks-template.md -------------------------------------------------------------------------------- /CLAUDE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/CLAUDE.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/README.md -------------------------------------------------------------------------------- /TESTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/TESTING.md -------------------------------------------------------------------------------- /examples/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/database.py -------------------------------------------------------------------------------- /examples/input_choices.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/input_choices.png -------------------------------------------------------------------------------- /examples/input_choices.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/input_choices.py -------------------------------------------------------------------------------- /examples/input_choices_add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/input_choices_add.png -------------------------------------------------------------------------------- /examples/integration_example.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/integration_example.py -------------------------------------------------------------------------------- /examples/list_fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/list_fields.py -------------------------------------------------------------------------------- /examples/markdown_field.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/markdown_field.py -------------------------------------------------------------------------------- /examples/minimal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/minimal.py -------------------------------------------------------------------------------- /examples/nested_lists.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/nested_lists.py -------------------------------------------------------------------------------- /examples/pathminimal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/pathminimal.py -------------------------------------------------------------------------------- /examples/select_options.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/select_options.py -------------------------------------------------------------------------------- /examples/submodel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/submodel.py -------------------------------------------------------------------------------- /examples/validation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/examples/validation.py -------------------------------------------------------------------------------- /niceguicrud/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/__init__.py -------------------------------------------------------------------------------- /niceguicrud/basemodel_to_table.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/basemodel_to_table.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/__init__.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/base.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/boolean.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/boolean.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/collections.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/collections.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/nested.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/nested.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/numeric.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/numeric.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/selection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/selection.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/string.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/string.py -------------------------------------------------------------------------------- /niceguicrud/input_handlers/temporal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/input_handlers/temporal.py -------------------------------------------------------------------------------- /niceguicrud/nicecrud.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/nicecrud.py -------------------------------------------------------------------------------- /niceguicrud/show_error.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/niceguicrud/show_error.py -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/pyproject.toml -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/pytest.ini -------------------------------------------------------------------------------- /specs/001-modular-input/checklists/requirements.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/checklists/requirements.md -------------------------------------------------------------------------------- /specs/001-modular-input/contracts/input-handler-protocol.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/contracts/input-handler-protocol.md -------------------------------------------------------------------------------- /specs/001-modular-input/contracts/registry-api.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/contracts/registry-api.md -------------------------------------------------------------------------------- /specs/001-modular-input/data-model.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/data-model.md -------------------------------------------------------------------------------- /specs/001-modular-input/plan.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/plan.md -------------------------------------------------------------------------------- /specs/001-modular-input/quickstart.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/quickstart.md -------------------------------------------------------------------------------- /specs/001-modular-input/research.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/research.md -------------------------------------------------------------------------------- /specs/001-modular-input/spec.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/spec.md -------------------------------------------------------------------------------- /specs/001-modular-input/tasks.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/specs/001-modular-input/tasks.md -------------------------------------------------------------------------------- /test-versions.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/test-versions.sh -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/integration/test_handler_registry.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/integration/test_handler_registry.py -------------------------------------------------------------------------------- /tests/playwright/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/playwright/README.md -------------------------------------------------------------------------------- /tests/playwright/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/playwright/conftest.py -------------------------------------------------------------------------------- /tests/playwright/test_input_choices.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/playwright/test_input_choices.py -------------------------------------------------------------------------------- /tests/playwright/test_minimal_example.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/playwright/test_minimal_example.py -------------------------------------------------------------------------------- /tests/playwright/test_validation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/playwright/test_validation.py -------------------------------------------------------------------------------- /tests/test_basemodellist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/test_basemodellist.py -------------------------------------------------------------------------------- /tests/test_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/test_config.py -------------------------------------------------------------------------------- /tests/test_examples_import.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/test_examples_import.py -------------------------------------------------------------------------------- /tests/test_nicecrud.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/test_nicecrud.py -------------------------------------------------------------------------------- /tests/unit/test_input_handlers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/tests/unit/test_input_handlers.py -------------------------------------------------------------------------------- /uv.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dronakurl/nicecrud/HEAD/uv.lock --------------------------------------------------------------------------------