Thank you for your interest in contributing to NovaTurbo! This is an ambitious open-source project aiming to build an AI-powered micro turbojet engine design system, and we need help from people with diverse expertise.
💬 Join our Discord to discuss ideas before coding: discord.gg/SQDBr8Mt8
- Combustion chamber design and flame stability modeling
- Turbomachinery aerodynamics (compressor/turbine blade profiles)
- Nozzle flow analysis and thrust vectoring
- Real gas effects at high temperatures
- Multi-spool engine configurations
- OpenFOAM or SU2 case templates for turbojet simulations
- Mesh generation for complex internal geometries (TPMS lattice)
- Validation against experimental data
- Turbulence model selection and tuning
- High-temperature alloy databases (Inconel 718, Hastelloy X, etc.)
- Temperature-dependent material properties (Cp, k, σ_yield, creep)
- DMLS/SLM print constraints (min wall thickness, overhang angles)
- Build orientation optimization
- Post-processing requirements (HIP, heat treatment)
- Physics-informed neural networks (PINNs)
- Surrogate model architecture improvements
- Uncertainty quantification / ensemble methods
- Active learning strategies
- Generative design approaches (VAE, diffusion models)
- Three.js rendering improvements
- WebGL shader effects
- Better simulation overlays
- Design comparison tools
# Fork and clone
git clone https://github.com/YOUR_USERNAME/novaturbo.git
cd novaturbo
# Install dependencies
pip install -r requirements.txt
# Generate a small dataset to work with
python app.py --generate 1000
# Launch the viewer
python app.py --ui- Create a feature branch:
git checkout -b feature/your-feature - Make your changes
- Add or update tests in
tests/ - Run existing tests:
pytest tests/ - Commit with a clear message
- Push and open a Pull Request
- Python: Follow PEP 8
- JavaScript: ES6+ modules
- Keep functions focused and documented
- Add docstrings for public functions
- Describe what your PR does and why
- Reference any related issues
- Include before/after screenshots for UI changes
- Add tests for new functionality
- Keep PRs focused — one feature/fix per PR
app.py (CLI) → src/geometry/ (parametric models)
→ src/physics/ (Brayton cycle solver)
→ src/ai/ (PyTorch surrogate + NSGA-II optimizer)
→ src/export/ (STL/STEP output)
→ ui/ (Flask server + Three.js viewer)
The neural network surrogate model (MLP, 144K params) is trained on design variants generated by the parametric geometry + physics pipeline, enabling real-time performance prediction during optimization.
Open an issue with the question label, or start a Discussion thread. We're happy to help newcomers get oriented in the codebase.