Skip to content

Latest commit

 

History

History
101 lines (76 loc) · 3.13 KB

File metadata and controls

101 lines (76 loc) · 3.13 KB

Contributing to NovaTurbo AI

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

Areas Where We Need Help

🚀 Aerospace Propulsion

  • 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

🌊 CFD / Computational Fluid Dynamics

  • 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

🔬 Materials & Manufacturing

  • 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)

🧠 Machine Learning

  • Physics-informed neural networks (PINNs)
  • Surrogate model architecture improvements
  • Uncertainty quantification / ensemble methods
  • Active learning strategies
  • Generative design approaches (VAE, diffusion models)

🎨 Visualization & UI

  • Three.js rendering improvements
  • WebGL shader effects
  • Better simulation overlays
  • Design comparison tools

How to Contribute

Setting Up

# 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

Making Changes

  1. Create a feature branch: git checkout -b feature/your-feature
  2. Make your changes
  3. Add or update tests in tests/
  4. Run existing tests: pytest tests/
  5. Commit with a clear message
  6. Push and open a Pull Request

Code Style

  • Python: Follow PEP 8
  • JavaScript: ES6+ modules
  • Keep functions focused and documented
  • Add docstrings for public functions

Pull Request Guidelines

  • 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

Project Architecture

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.

Questions?

Open an issue with the question label, or start a Discussion thread. We're happy to help newcomers get oriented in the codebase.