From 66623ac1bd7d37bc4315e8f0c35a87752a98027e Mon Sep 17 00:00:00 2001
From: Kristina Mazur <kristina.mazur@tum.de>
Date: Fri, 28 Feb 2025 19:14:55 +0100
Subject: [PATCH] Fix pipeline

---
 .gitlab-ci.yml |  22 +--
 mkdocs.yml     | 417 ++++++++++++++++++++++++-------------------------
 2 files changed, 212 insertions(+), 227 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 07798f6..78058f5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -37,32 +37,24 @@ clone:
       # clone repos
       - git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@git.rwth-aachen.de/unicado/aircraft-design
       - cd aircraft-design
-      # Clone libraries inside the aircraft-design directory
-      - git clone --recurse-submodules https://gitlab-ci-token:${CI_JOB_TOKEN}@git.rwth-aachen.de/unicado/libraries lib
-      # Change to the project directory (useful for multi-directory repositories)
+      - git clone --recurse-submodules https://gitlab-ci-token:${CI_JOB_TOKEN}@git.rwth-aachen.de/unicado/libraries libs/
+    # Change to the project directory (useful for multi-directory repositories)
       - cd $CI_PROJECT_DIR
+      - ls -la $CI_PROJECT_DIR
   artifacts:
     # Save the generated documentation as artifacts so they can be accessed later in the pipeline
     paths:
       - $CI_PROJECT_DIR/aircraft-design
       - $CI_PROJECT_DIR/libraries
       - $CI_PROJECT_DIR/docs/documentation
-    exclude:
-      - docs/**/latex  # Exclude LaTeX-generated files
-      - docs/**/man  # Exclude manual pages if not needed
-      - docs/**/rtf  # Exclude RTF output if not needed
-      - docs/**/xml  # Exclude XML files if they are not required
-      - docs/**/tmp  # Exclude temporary files
-      - docs/**/dot  # Exclude Graphviz DOT files
-    expire_in: 1 day  # Keep artifacts only for 1 day
-
   rules:
     - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'  # Run when the commit is on the default branch
       when: on_success  # Only run if the previous jobs are successful
     - if: '$CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH'  # Allow manual triggers on non-default branches
       when: manual  # Run only when triggered manually
     - if: '$CI_PIPELINE_SOURCE == "trigger"'  # Triggered by another pipeline
-      when: on_success  # Run if the source pipeline was successful    
+      when: on_success  # Run if the source pipeline was successful
+
 # === Build and deploy the website ===
 pages:
   image: python:latest
@@ -91,6 +83,4 @@ pages:
     - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'  # Run when the commit is on the default branch
       when: on_success  # Only run if the previous jobs are successful
     - if: '$CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH'  # Allow manual triggers on non-default branches
-      when: manual  # Run only when triggered manually
-    - if: '$CI_PIPELINE_SOURCE == "trigger"'  # Triggered by another pipeline
-      when: on_success  # Run if the source pipeline was successful
\ No newline at end of file
+      when: manual  # Run only when triggered manually
\ No newline at end of file
diff --git a/mkdocs.yml b/mkdocs.yml
index 85360f8..97654a4 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -1,5 +1,6 @@
-# Site configuration for the UNICADO homepage
-# Copyright (c) UNICADO 2023
+# UNICADO - UNIversity Conceptual Aircraft Design and Optimization
+#
+# Copyright (C) 2025 UNICADO consortium
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -8,11 +9,14 @@
 #
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <https://www.gnu.org/licenses/>.
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+#
+# Description:
+# This file is part of UNICADO.
 
 # === General site meta data ===
 site_name: UNICADO                        # The name of the site, displayed in the header.
@@ -73,145 +77,145 @@ plugins:
   - mkdoxy:
       projects:
         propulsion_design:
-          src-dirs: aircraft-design/propulsion_design/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "propulsion_design"
+            OUTPUT_DIR: "docs/api/propulsion"
+            BIBTEX_FILE: "docs/assets/bibtex/propulsion_design_literature.bib"
+          src-dirs: ../aircraft-design/propulsion_design/src/
+          full-doc: True
+        ecological_assessment:
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "ecological_assessment"
+            OUTPUT_DIR: "docs/api/ecological_assessment"
+            BIBTEX_FILE: "docs/assets/bibtex/ecological_assessment_literature.bib"
+          src-dirs: ../aircraft-design/ecological_assessment/src/
           full-doc: True
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/propulsion_design"
-            BIBTEX_FILE: docs/assets/bibtex/propulsion_design_literature.bib
         initial_sizing:
-          src-dirs: aircraft-design/initial_sizing/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "initial_sizing"
+            OUTPUT_DIR: "docs/api/initial_sizing"
+            BIBTEX_FILE: "docs/assets/bibtex/initial_sizing_literature.bib"
+          src-dirs: ../aircraft-design/initial_sizing/src/
           full-doc: true
-          doxy-cfg:
-            OUTPUT_DIRECTORY: "./docs/initial_sizing"
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
         create_mission_xml:
-          src-dirs: aircraft-design/create_mission_xml/src
-          full-doc: True
-          doxy-cfg:
-            OUTPUT_DIRECTORY: "./docs/create_mission_xml"
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            BIBTEX_FILE: docs/assets/bibtex/create_mission_xml_literature.bib
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "create_mission_xml"
+            OUTPUT_DIR: "docs/api/create_mission_xml"
+            BIBTEX_FILE: "docs/assets/bibtex/create_mission_xml_literature.bib"
+          src-dirs: ../aircraft-design/create_mission_xml/src/
+          full-doc: true
         fuselage_design:
-          src-dirs: aircraft-design/fuselage_design/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "fuselage_design"
+            OUTPUT_DIR: "docs/api/fuselage_design"
+            BIBTEX_FILE: "docs/assets/bibtex/fuselage_design_literature.bib"
+          src-dirs: ../aircraft-design/fuselage_design/src/
           full-doc: true
-          doxy-cfg:
-            OUTPUT_DIRECTORY: "./docs/fuselage_design"
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
         wing_design:
-          src-dirs: aircraft-design/wing_design/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "wing_design"
+            OUTPUT_DIR: "docs/api/wing_design"
+            BIBTEX_FILE: "docs/assets/bibtex/wing_design_literature.bib"
+          src-dirs: ../aircraft-design/wing_design/src/
           full-doc: True
-          doxy-cfg:
-            OUTPUT_DIRECTORY: "./docs/wing_design"
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
         empennage_design:
-          src-dirs: aircraft-design/empennage_design/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "empennage_design"
+            OUTPUT_DIR: "docs/api/empennage_design"
+          src-dirs: ../aircraft-design/empennage_design/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/empennage_design"
         tank_design:
-          src-dirs: aircraft-design/tank_design/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "tank_design"
+            OUTPUT_DIR: "docs/api/tank_design"
+          src-dirs: ../aircraft-design/tank_design/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/tank_design"
         landing_gear_design:
-          src-dirs: aircraft-design/landing_gear_design/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "landing_gear_design"
+            OUTPUT_DIR: "docs/api/landing_gear_design"
+          src-dirs: ../aircraft-design/landing_gear_design/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/landing_gear_design"
         systems_design:
-          src-dirs: aircraft-design/systems_design/src
-          full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/systems_design"
-        ecological_assessment:
-          src-dirs: aircraft-design/ecological_assessment/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "systems_design"
+            OUTPUT_DIR: "docs/api/systems_design"
+          src-dirs: ../aircraft-design/systems_design/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/ecological_assessment"
-            BIBTEX_FILE: docs/assets/bibtex/ecological_assessment_literature.bib
         aerodynamic_analysis:
-          src-dirs: aircraft-design/aerodynamic_analysis/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "aerodynamic_analysis"
+            OUTPUT_DIR: "docs/api/aerodynamic_analysis"
+          src-dirs: ../aircraft-design/aerodynamic_analysis/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/aerodynamic_analysis"
         aircraftGeometry2:
-          src-dirs: aircraft-design/libs/aircraftGeometry2/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "aircraftGeometry2"
+            OUTPUT_DIR: "docs/api/aircraftGeometry2"
+          src-dirs: ../aircraft-design/libs/aircraftGeometry2/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/aircraftGeometry2"
         engine:
-          src-dirs: aircraft-design/libs/engine/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "engine"
+            OUTPUT_DIR: "docs/api/engine"
+          src-dirs: ../aircraft-design/libs/engine/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/engine"
         mission_analysis:
-          src-dirs: aircraft-design/mission_analysis/src
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "mission_analysis"
+            OUTPUT_DIR: "docs/api/mission_analysis"
+            BIBTEX_FILE: "docs/assets/bibtex/mission_analysis_literature.bib"
+          src-dirs: ../aircraft-design/mission_analysis/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/mission_analysis"
-        constraint_analysis:
-          src-dirs: aircraft-design/constraint_analysis/src
+        weight_and_balance_analysis:
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "weight_and_balance_analysis"
+            OUTPUT_DIR: "docs/api/weight_and_balance_analysis"
+          src-dirs: ../aircraft-design/weight_and_balance_analysis/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/constraint_analysis"
-        performance_assessment:
-          src-dirs: aircraft-design/performance_assessment/src
+        performance_assesment:
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "performance_assesment"
+            OUTPUT_DIR: "docs/api/performance_assesment"
+          src-dirs: ../aircraft-design/performance_assesment/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/performance_assessment"
-        weight_and_balance_analysis:
-          src-dirs: aircraft-design/weight_and_balance_analysis/src
+        cost_estimation:
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "cost_estimation"
+            OUTPUT_DIR: "docs/api/cost_estimation"
+          src-dirs: ../aircraft-design/cost_estimation/src/
+          full-doc: true
+        aircraft_geometry2:
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "aircraft_geometry2"
+            OUTPUT_DIR: "docs/api/aircraft_geometry2"
+          src-dirs: ../aircraft-design/libs/aircraftGeometry2/src/
+          full-doc: true
+        engine:
+          doxyfile: Doxyfile
+          variables:
+            PROJECT_NAME: "engine"
+            OUTPUT_DIR: "docs/api/engine"
+          src-dirs: ../aircraft-design/libs/engine/src/
           full-doc: true
-          doxy-cfg:
-            FILE_PATTERNS: "*.cpp *.h"
-            RECURSIVE: True
-            EXTRACT_ALL: YES
-            OUTPUT_DIRECTORY: "./docs/weight_and_balance_analysis"
-
   - glightbox                             # Plugin for lightbox-style image and content viewing.
 
 # === Theme configuration ===
@@ -251,25 +255,48 @@ nav:                                      # Customizes the main navigation struc
     - Getting Started: download/getting-started.md  # Link to the getting started page.
     - Requirements: download/requirements.md  # Link to the installation requirements page.
     - Cleared for Take-Off: download/takeoff.md  # Link to the takeoff/getting started page.
-    - Release notes: download/release-notes.md  # Link to the release notes page.
+    - Release Notes: download/release-notes.md
   - Tutorials:
-    - Changing Design Specifications: tutorials/changing-design-specifications.md
-    - "Video: Standalone Workflow": tutorials/standalone.mp4  # Link to the standalone tutorial video.
+    - Standalone Workflow: tutorials/standalone.md  # Link to the standalone tutorial page.
     - Separate Tool Execution: tutorials/seperate-tool-execution.md  # Link to the separate tool execution tutorial page.
+    - Changing Design Specifications: tutorials/changing-design-specifications.md
   - Documentation:                        # Top-level item for documentation.
     - Overview: documentation/overview.md   # Overview of modules.
     - Aircraft Design:
       - Sizing:
           - documentation/sizing/index.md # Link to aircraft sizing documentation.
+          - Initial Sizing:
+            - Introduction: documentation/sizing/initial_sizing/index.md
+            - Getting Started: documentation/sizing/initial_sizing/getting-started.md
+            - Methods: documentation/sizing/initial_sizing/initialSizing.md
+            - Changelog: documentation/sizing/initial_sizing/changelog.md
+            - API Reference:
+              - initial_sizing/classes.md
+              - initial_sizing/namespaces.md
+              - initial_sizing/files.md
+              - initial_sizing/functions.md
           - Create Mission XML:
             - Introduction: documentation/sizing/create_mission_xml/index.md
             - Getting Started: documentation/sizing/create_mission_xml/getting_started.md
             - Mission Steps: documentation/sizing/create_mission_xml/mission_steps.md
+          - Fuselage Design:
+            - Introduction: documentation/sizing/fuselage_design/index.md
+            - Getting Started: documentation/sizing/fuselage_design/getting_started.md
+            - Design Method: documentation/sizing/fuselage_design/design_method.md
+            - Run your First Design: documentation/sizing/fuselage_design/run_your_first_design.md
+            - Software Architecture: documentation/sizing/fuselage_design/software_architecture.md
+          # - API Reference: # TODO define for Python
+          - Wing Design:
+            - Introduction: documentation/sizing/wing_design/index.md
+            - Getting Started: documentation/sizing/wing_design/getting-started.md
+            - Design Method: documentation/sizing/wing_design/design-methods.md
+            - Basic Concepts: documentation/sizing/wing_design/basic-concepts.md
+            - Run your First Design: documentation/sizing/wing_design/run-your-first-wing-design.md
             - API Reference:
-              - create_mission_xml/classes.md
-              - create_mission_xml/namespaces.md
-              - create_mission_xml/files.md
-              - create_mission_xml/functions.md
+              - wing_design/classes.md
+              - wing_design/namespaces.md
+              - wing_design/files.md
+              - wing_design/functions.md
           - Empennage Design:
             - Introduction: documentation/sizing/empennage_design/index.md
             - Getting Started: documentation/sizing/empennage_design/getting-started.md
@@ -281,32 +308,16 @@ nav:                                      # Customizes the main navigation struc
               - empennage_design/namespaces.md
               - empennage_design/files.md
               - empennage_design/functions.md
-          - Fuselage Design:
-            - Introduction: documentation/sizing/fuselage_design/index.md
-            - Getting Started: documentation/sizing/fuselage_design/getting_started.md
-            - Design Method: documentation/sizing/fuselage_design/design_method.md
-            - Run your First Design: documentation/sizing/fuselage_design/run_your_first_design.md
-            - Software Architecture: documentation/sizing/fuselage_design/software_architecture.md
-          # - API Reference: # TODO define for Python
-          - Initial Sizing:
-            - Introduction: documentation/sizing/initial_sizing/index.md
-            - Getting Started: documentation/sizing/initial_sizing/getting-started.md
-            - Methods: documentation/sizing/initial_sizing/initialSizing.md
-            - Changelog: documentation/sizing/initial_sizing/changelog.md
-            - API Reference:
-              - initial_sizing/classes.md
-              - initial_sizing/namespaces.md
-              - initial_sizing/files.md
-              - initial_sizing/functions.md
-          - Landing Gear Design:
-            - Introduction: documentation/sizing/landing_gear_design/index.md
-            - Getting Started: documentation/sizing/landing_gear_design/getting_started.md
-            - Design Method: documentation/sizing/landing_gear_design/design_method.md
-            - Run your First Design: documentation/sizing/landing_gear_design/run_your_first_design.md
-            - Software Architecture: documentation/sizing/landing_gear_design/software_architecture.md
+          - Tank Design:
+            - Introduction: documentation/sizing/tank_design/index.md
+            - Getting Started: documentation/sizing/tank_design/getting_started.md
+            - Design Method: documentation/sizing/tank_design/tank_design_method.md
+            - Run your First Design: documentation/sizing/tank_design/run_your_first_tank_design.md
+            - Software Architecture: documentation/sizing/tank_design/software_architecture.md
             # - API Reference: # TODO define for Python
           - Propulsion Design:
             - Introduction: documentation/sizing/propulsion_design/index.md
+            - Overview: documentation/sizing/propulsion_design/overview.md
             - Getting Started: documentation/sizing/propulsion_design/getting-started.md
             - Engineering Principles: documentation/sizing/propulsion_design/engineering_principles.md
             - Software Architecture: documentation/sizing/propulsion_design/software_architecture.md
@@ -317,6 +328,13 @@ nav:                                      # Customizes the main navigation struc
               - propulsion_design/namespaces.md
               - propulsion_design/files.md
               - propulsion_design/functions.md
+          - Landing Gear Design:
+            - Introduction: documentation/sizing/landing_gear_design/index.md
+            - Getting Started: documentation/sizing/landing_gear_design/getting_started.md
+            - Design Method: documentation/sizing/landing_gear_design/design_method.md
+            - Run your First Design: documentation/sizing/landing_gear_design/run_your_first_design.md
+            - Software Architecture: documentation/sizing/landing_gear_design/software_architecture.md
+            # - API Reference: # TODO define for Python
           - Systems Design:
             - Introduction: documentation/sizing/systems_design/index.md
             - Getting Started: documentation/sizing/systems_design/getting-started.md
@@ -327,62 +345,8 @@ nav:                                      # Customizes the main navigation struc
               - systems_design/namespaces.md
               - systems_design/files.md
               - systems_design/functions.md
-          - Tank Design:
-            - Introduction: documentation/sizing/tank_design/index.md
-            - Getting Started: documentation/sizing/tank_design/getting_started.md
-            - Design Method: documentation/sizing/tank_design/tank_design_method.md
-            - Run your First Design: documentation/sizing/tank_design/run_your_first_tank_design.md
-            - Software Architecture: documentation/sizing/tank_design/software_architecture.md
-            # - API Reference: # TODO define for Python
-          - Wing Design:
-            - Introduction: documentation/sizing/wing_design/index.md
-            - Getting Started: documentation/sizing/wing_design/getting-started.md
-            - Design Method: documentation/sizing/wing_design/design-methods.md
-            - Basic Concepts: documentation/sizing/wing_design/basic-concepts.md
-            - Run your First Design: documentation/sizing/wing_design/run-your-first-wing-design.md
-            - API Reference:
-              - wing_design/classes.md
-              - wing_design/namespaces.md
-              - wing_design/files.md
-              - wing_design/functions.md
       - Analysis:
           - documentation/analysis/index.md # Link to analysis module page.
-          - Aerodynamic Analysis:
-            - Introduction: documentation/analysis/aerodynamic_analysis/index.md
-            - Getting Started: documentation/analysis/aerodynamic_analysis/getting_started.md
-            - Aerodynamic Principles: documentation/analysis/aerodynamic_analysis/aerodynamic_principles.md
-            - Software Architecture: documentation/analysis/aerodynamic_analysis/software_architecture.md
-            - API Reference:
-              - aerodynamic_analysis/classes.md
-              - aerodynamic_analysis/namespaces.md
-              - aerodynamic_analysis/files.md
-              - aerodynamic_analysis/functions.md
-          - Constraint Analysis:
-            - Introduction: documentation/analysis/constraint_analysis/index.md
-            - Principles: documentation/analysis/constraint_analysis/principles.md
-            - API Reference:
-              - constraint_analysis/classes.md
-              - constraint_analysis/namespaces.md
-              - constraint_analysis/files.md
-              - constraint_analysis/functions.md
-          - Cost Estimation:
-            - Introduction: documentation/analysis/cost_estimation/index.md
-            - Getting Started: documentation/analysis/cost_estimation/getting_started.md
-            - Design Method: documentation/analysis/cost_estimation/operating_cost_method.md
-            - Run your First Estimation: documentation/analysis/cost_estimation/run_your_first_cost_estimation.md
-            - Software Architecture: documentation/analysis/cost_estimation/software_architecture.md
-          # - API Reference: # TODO define for Python
-          - Ecological Assessment:
-            - Introduction: documentation/analysis/ecological_assessment/index.md
-            - Basic Concepts: documentation/analysis/ecological_assessment/basic-concepts.md
-            - Module Usage: documentation/analysis/ecological_assessment/usage.md
-            - Software Architecture: documentation/analysis/ecological_assessment/software-architecture.md
-            - Changelog: documentation/analysis/ecological_assessment/changelog.md
-            - API Reference:
-              - ecological_assessment/classes.md
-              - ecological_assessment/namespaces.md
-              - ecological_assessment/files.md
-              - ecological_assessment/functions.md
           - Mission Analysis:
             - Introduction: documentation/analysis/mission_analysis/index.md
             - Getting Started: documentation/analysis/mission_analysis/getting_started.md
@@ -393,6 +357,11 @@ nav:                                      # Customizes the main navigation struc
               - mission_analysis/namespaces.md
               - mission_analysis/files.md
               - mission_analysis/functions.md
+          - Weight and Balance Analysis:
+            - Introduction: documentation/analysis/weight_and_balance_analysis/index.md
+            - Basic Concepts: documentation/analysis/weight_and_balance_analysis/basic-concepts.md
+            - Usage: documentation/analysis/weight_and_balance_analysis/usage.md
+            # - API Reference: # TODO define for Python
           - Performance Assessment:
             - Introduction: documentation/analysis/performance_assessment/index.md
             - Getting Started: documentation/analysis/performance_assessment/getting_started.md
@@ -402,16 +371,31 @@ nav:                                      # Customizes the main navigation struc
               - Landing Performance: documentation/analysis/performance_assessment/landing_performance.md
               - Flight Envelope: documentation/analysis/performance_assessment/flight_envelope.md
               - Ceiling Performance: documentation/analysis/performance_assessment/ceiling_performance.md
+          - Cost Estimation:
+            - Introduction: documentation/analysis/cost_estimation/index.md
+            - Getting Started: documentation/analysis/cost_estimation/getting_started.md
+            - Design Method: documentation/analysis/cost_estimation/operating_cost_method.md
+            - Run your First Estimation: documentation/analysis/cost_estimation/run_your_first_cost_estimation.md
+            - Software Architecture: documentation/analysis/cost_estimation/software_architecture.md
+            # - API Reference: # TODO define for Python
+          - Ecological Assessment:
+            - Introduction: documentation/analysis/ecological_assessment/index.md
+            - Basic Concepts: documentation/analysis/ecological_assessment/basic-concepts.md
+            - Module Usage: documentation/analysis/ecological_assessment/usage.md
+            - Software Architecture: documentation/analysis/ecological_assessment/software-architecture.md
+            - Changelog: documentation/analysis/ecological_assessment/changelog.md
             - API Reference:
-              - performance_assessment/classes.md
-              - performance_assessment/namespaces.md
-              - performance_assessment/files.md
-              - performance_assessment/functions.md
-          - Weight and Balance Analysis:
-            - Introduction: documentation/analysis/weight_and_balance_analysis/index.md
-            - Basic Concepts: documentation/analysis/weight_and_balance_analysis/basic-concepts.md
-            - Usage: documentation/analysis/weight_and_balance_analysis/usage.md
-          # - API Reference: # TODO define for Python
+              - ecological_assessment/classes.md
+              - ecological_assessment/namespaces.md
+              - ecological_assessment/files.md
+              - ecological_assessment/functions.md
+          - Aerodynamic Analysis:
+            - Introduction: documentation/analysis/aerodynamic_analysis/getting_started.md
+            - Aerodynamic Principles: documentation/analysis/aerodynamic_analysis/aerodynamic_principles.md
+            - Software Architecture: documentation/analysis/aerodynamic_analysis/software_architecture.md
+          - Constraint Analysis:
+            - Introduction: documentation/analysis/constraint_analysis/index.md
+            - Principles: documentation/analysis/constraint_analysis/principles.md
     - Libraries:
         - documentation/libraries/index.md # Link to libraries overview.
         - AircraftGeometry2:
@@ -422,8 +406,19 @@ nav:                                      # Customizes the main navigation struc
             - Geometry: documentation/libraries/aircraftGeometry2/tutorial-geometry.md
             - Factory: documentation/libraries/aircraftGeometry2/tutorial-factory.md
             - Convert: documentation/libraries/aircraftGeometry2/tutorial-convert.md
+          - API Reference:
+            - aircraftGeometry2/classes.md
+            - aircraftGeometry2/namespaces.md
+            - aircraftGeometry2/files.md
+            - aircraftGeometry2/functions.md
         - engine:
-          - Introduction: documentation/libraries/engine/index.md
+          - Overview:
+            - documentation/libraries/engine/index.md
+          - API Reference:
+            - engine/classes.md
+            - engine/namespaces.md
+            - engine/files.md
+            - engine/functions.md
     - Utilities: documentation/additional-software.md
     - Workflow: 'workflow.md' # Link to the workflow page.
   - Get Involved:
@@ -465,4 +460,4 @@ nav:                                      # Customizes the main navigation struc
       - About us: 'about.md'              # Link to the about page.
       - License: 'license.md'             # Link to license information.
       - Contact: 'contact.md'             # Link to contact page.
-      - Partners: 'partners.md'           # Link to partners page.
\ No newline at end of file
+      - Partners: 'partners.md'           # Link to partners page.
-- 
GitLab