Edit your pydantic models with a nice GUI - CRUD Create Update Replace Delete
Project description
NiceCRUD
NiceCRUD is a CRUD (Create, Read, Update, Delete) interface built with python. The library integrates with pydantic models and NiceGUI to handle data manipulation with a browser interface.
Features
- Automatically generate CRUD interfaces from pydantic models.
- Field options, ranges, contraints, descriptions etc. are directly taken from your pydantic model
- Integrated validation and error handling with pydantic.
- Support for nested models and selection options.
- Inject your own (database?) update methods
- Minimal configuration required with sensible defaults.
Screenshots
Taken from the input_choices example:
Installation
To install NiceCRUD, use pip:
pip install niceguicrud
Quick Start
Here is a very basic example:
from nicegui import ui
from pydantic import BaseModel, Field
from niceguicrud import NiceCRUD
class MyModel(BaseModel, title="User"):
id: int
name: str = Field(title="Name")
age: int = Field(gt=0, title="Age")
instance1 = MyModel(id=1, name="Alice", age=30)
instance2 = MyModel(id=2, name="Bob", age=25)
crud_app = NiceCRUD(basemodels=[instance1, instance2], id_field="id", heading="User Management")
ui.run()
Find more in the examples folder.
Example Name | Description |
---|---|
minimal | The above minimal example |
validation | Example showcasing how pydantic validation features are used in the GUI |
submodel | Demonstrates usage of a pydantic submodel that can also be used in the GUI. |
input_choices | Shows the different input choices. |
database | Shows how to customize the update, create and delete operations |
Contributing
Contributions are welcome!
License
This project is licensed under the MIT License. See the LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
niceguicrud-0.1.2.tar.gz
(13.2 kB
view details)
Built Distribution
File details
Details for the file niceguicrud-0.1.2.tar.gz
.
File metadata
- Download URL: niceguicrud-0.1.2.tar.gz
- Upload date:
- Size: 13.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.12.4 Linux/6.9.5-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 698c67b4e47f25001534212d64105ad70bf70d785273b7038b2723fc7e2bc66f |
|
MD5 | c6e0ebb93c53ad2a218e350ef491fe2b |
|
BLAKE2b-256 | 1ac66d2341f3f2ac8a5ff2ff4bbcc36fd3b10528bf95555bfb334f18c4cc22da |
File details
Details for the file niceguicrud-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: niceguicrud-0.1.2-py3-none-any.whl
- Upload date:
- Size: 13.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.12.4 Linux/6.9.5-arch1-1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c911fbc1e2cdb4da1915dedb82655f401fbf050cdc3caa9b9ebbac77e75552d |
|
MD5 | 5f0372468fab3faa31a16d174bfaa7e2 |
|
BLAKE2b-256 | 7ec60e72e1db0e2036742a9816abe40214cb2e11f00ed3577a9226ce34177819 |