42 lines
1.1 KiB
Python
42 lines
1.1 KiB
Python
"""
|
|
Modelgen - Generic Model Generation Tool
|
|
|
|
Generates typed models from various sources to various output formats.
|
|
|
|
Input sources:
|
|
- Configuration files (soleprint config.json style)
|
|
- Python dataclasses in schema/ folder
|
|
- Existing codebases: Django, SQLAlchemy, Prisma (for extraction)
|
|
|
|
Output formats:
|
|
- pydantic: Pydantic BaseModel classes
|
|
- django: Django ORM models
|
|
- typescript: TypeScript interfaces
|
|
- protobuf: Protocol Buffer definitions
|
|
- prisma: Prisma schema
|
|
|
|
Usage:
|
|
python -m modelgen from-config -c config.json -o models.py
|
|
python -m modelgen from-schema -o models/ --targets pydantic,typescript
|
|
python -m modelgen extract --source /path/to/django --targets pydantic
|
|
python -m modelgen list-formats
|
|
"""
|
|
|
|
__version__ = "0.2.0"
|
|
|
|
from .generator import GENERATORS, BaseGenerator
|
|
from .loader import ConfigLoader, load_config
|
|
from .model_generator import ModelGenerator
|
|
|
|
# Backwards compatibility
|
|
WRITERS = GENERATORS
|
|
|
|
__all__ = [
|
|
"ModelGenerator",
|
|
"ConfigLoader",
|
|
"load_config",
|
|
"GENERATORS",
|
|
"WRITERS",
|
|
"BaseGenerator",
|
|
]
|