hnarayanan / django-extensible-models

A robust framework for dynamically extending Django models at runtime
MIT License
1 stars 0 forks source link

Create initial documentation #1

Open hnarayanan opened 3 months ago

hnarayanan commented 3 months ago

Using the following format:

docs/
├── index.rst
│   # Overview of Django Extensible Models, its features, and navigation guide for the documentation.
│
├── installation.rst
│   # Step-by-step guide on how to install Django Extensible Models and its dependencies.
│
├── quickstart.rst
│   # A condensed guide for experienced users to quickly set up and use the package.
│
├── tutorial/
│   ├── 01_setup_project.rst
│   │   # Instructions for creating a new Django project and configuring it for use with Django Extensible Models.
│   │
│   ├── 02_create_models.rst
│   │   # Guide on creating tenant and extensible models, explaining the ExtensibleModelMixin.
│   │
│   ├── 03_create_extension_schema.rst
│   │   # Detailed explanation of creating and using ExtensionSchema, with examples of various field types.
│   │
│   ├── 04_admin_integration.rst
│   │   # Instructions for setting up and customizing the Django admin interface for extensible models.
│   │
│   ├── 05_create_forms.rst
│   │   # Tutorial on creating and using forms with ExtensibleModelFormMixin, handling extended fields.
│   │
│   ├── 06_create_views.rst
│   │   # Guide on creating views for extensible models, displaying and processing extended fields.
│   │
│   ├── 07_serializers_and_api.rst
│   │   # Instructions for creating serializers with ExtensibleModelSerializerMixin and setting up a RESTful API.
│   │
│   └── 08_advanced_usage.rst
│       # Advanced topics including querying extended fields, handling schema changes, and performance optimization.
│
├── api_reference.rst
│   # Comprehensive API reference for all classes and functions in Django Extensible Models.
│
└── configuration.rst
    # Detailed guide on configuring Django Extensible Models, including all available settings and their effects.
hnarayanan commented 3 months ago

With the difference between two similar sections being:

docs/
├── installation.rst
│   # Focused solely on installing the package:
│   # - System requirements
│   # - Step-by-step installation process (pip install, adding to INSTALLED_APPS)
│   # - Verifying successful installation
│   # - Troubleshooting common installation issues
│
├── quickstart.rst
│   # Concise guide for experienced Django users to quickly implement core features:
│   # - Brief overview of key concepts (ExtensibleModelMixin, ExtensionSchema)
│   # - Minimal example of creating an extensible model
│   # - Basic usage of admin integration, forms, and serializers
│   # - Quick reference for common operations
│   # - Pointers to relevant sections of the full tutorial for more details