05_28_05_project_scaffolding - Scaffolding de Proyectos Completos¶
Propósito¶
Generadores que crean proyectos completos desde cero con toda la infraestructura necesaria en < 5 segundos.
Generador Principal¶
# project_generator.py
class ProjectGenerator:
def generate_project(self, config: dict, output_dir: Path):
"""Generate complete project from YAML config"""
self.validate_config(config)
self.create_directories(output_dir, config)
self.generate_files(output_dir, config)
self.init_git(output_dir)
Configuration Schema¶
# my_project.yaml
name: my_dsp_module
type: atom
level: L1
category: oscillator
author: Your Name
parameters:
- name: frequency
type: float
default: 440.0
min: 20.0
max: 20000.0
features:
simd: true
presets: true
automation: true
Generated Structure¶
my_dsp_module/
├── CMakeLists.txt
├── README.md
├── .gitignore
├── include/
│ └── my_dsp_module.hpp
├── src/
│ └── my_dsp_module.cpp
├── tests/
│ └── my_dsp_module_test.cpp
└── examples/
└── basic_usage.cpp
CLI Command¶
Entregables¶
- Python generator
- Scaffolding < 5s
- 95% compila inmediatamente
- Schema validation
- 10+ configs ejemplo
Estimación: 3 semanas