Prolog
Django IS Core is a lightweight framework built on Django. It augments Django great design patterns and minimizes annoying programming work. It takes best from Django-admin. ISCore provides a simple way how to build a rich administration. It is very simlar to Django admin but there are several differences that justifies why IS Core is created.
Features
- same detail/add/table views as Django admin, but it uses REST and AJAX call to achieve it (it adds easier usage and broaden usability)
- it can be used for creation only REST resources without UI
- models UI (add/detail) is more linked together, links between foreign keys are automatically added
- it provides more posibilities for read-only fields (e.g. the fields defined only inside form can be readonly too)
- add new custom view is for Django admin is nightmare, with IS Core is very easy
- it uses class based views, it is cleaner and changes are simplier
- add new model administration without its registration
- generated forms from models with validations
- generated REST resources from models again with validations (no code duplication)
- automatic exports to XLSX, PDF, CSV can be very simply add to a table view
- automatic filtering and sorting for list views
- pre-built reusable views and forms
- automatic CRUD views for models (with REST resources)
- authorization (token based) and permissions
- advanced permissions (e.g. a link between objects is not added to UI if a user does not have permissions to see it)
- and much more ...
Docs
For more details see docs
Development Setup
All development (running tests, building docs, etc.) is done through the example application. The example app's virtual environment includes django-is-core installed in editable mode along with all required dependencies.
Prerequisites
- Python 3
virtualenvcommand available- Docker (for running required services)
Setting Up the Development Environment
-
Navigate to the example directory:
cd example
-
Start the required Docker services (Elasticsearch and DynamoDB):
make runservices -
Install and set up the application:
make installThis will:
- Create a virtual environment at
example/var/ve - Install django-is-core in editable mode (from the parent directory)
- Install all dependencies (Django, test tools, etc.)
- Initialize the database
- Set up logging directories
- Create a virtual environment at
-
Activate the virtual environment:
source var/ve/bin/activate
Running Tests
With the virtual environment activated:
cd example
make test
Running the Example Application
cd example
make runserver
The application will be available at http://localhost:8080
Stopping Services
When done, stop the Docker services:
make stopservices
Other Useful Commands
From the example directory:
make clean # Remove Python bytecode files
make resetdb # Reset the database
make showurls # Display all registered URLs
Building Documentation
Documentation requires the example app's virtual environment since it uses autodoc to generate API documentation from the django-is-core source code.
-
First, set up the development environment (see above)
-
Install documentation dependencies:
source example/var/ve/bin/activate pip install sphinx sphinx_rtd_theme
-
Build the HTML documentation:
cd docs make html
-
View the documentation by opening
docs/.build/html/index.htmlin your browser, or serve it locally:python -m http.server 8000 --directory .build/html
Then visit http://localhost:8000
Contribution
Metadata
Release files for skip-django-is-core 2.30.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| skip_django_is_core-2.30.0.tar.gz | 2.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| skip_django_is_core-2.30.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.0 MB
Release files / skip_django_is_core-2.30.0.tar.gz
| Download URL | skip_django_is_core-2.30.0.tar.gz |
|---|---|
| Size | 2.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2d6b2cbdb5c2e6c874e61f94861cab1dfed393044f8856faaa8abb07287e858d
|
|
BLAKE2b-256 checksum How to use checksums |
f015b002bb188505a5135cc4095caf12c92adf8ba2d3b85728964ae8b17d9f2e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / skip_django_is_core-2.30.0-py3-none-any.whl
| Download URL | skip_django_is_core-2.30.0-py3-none-any.whl |
|---|---|
| Size | 2.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6700816ce9c607902ccaa8c5f8d84273c2ff39e4e40fd56111dc38bc41171b48
|
|
BLAKE2b-256 checksum How to use checksums |
0adaa78c627850078f72af68131e4c553e848daa2a0d129ccc02be9ce30dcaf9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|