init
This commit is contained in:
113
DETAILED_PROJECT_STRUCTURE_OUTLINE.md
Normal file
113
DETAILED_PROJECT_STRUCTURE_OUTLINE.md
Normal file
@@ -0,0 +1,113 @@
|
||||
# Detailed Project Structure Outline
|
||||
|
||||
## I. Root Directory Structure
|
||||
A. Configuration Files
|
||||
1. package.json - Project dependencies and scripts
|
||||
2. vite.config.js - Vite build configuration
|
||||
3. eslint.config.js - ESLint configuration
|
||||
4. .gitignore - Git ignore patterns
|
||||
|
||||
B. Documentation Files
|
||||
1. README.md - Project introduction and setup
|
||||
2. PROJECT_OVERVIEW.md - Detailed project description
|
||||
3. PROJECT_STRUCTURE.md - Technical architecture
|
||||
4. Various other documentation files (.md)
|
||||
|
||||
C. Directories
|
||||
1. src/ - Main source code
|
||||
2. public/ - Static assets
|
||||
3. dist/ - Build output (generated)
|
||||
4. node_modules/ - Dependencies (generated)
|
||||
|
||||
## II. Source Code Directory (src/)
|
||||
A. Entry Points
|
||||
1. main.jsx - Application entry point
|
||||
2. App.jsx - Main application component with routing
|
||||
3. index.css - Global styles
|
||||
|
||||
B. Components Directory (src/components/)
|
||||
1. General UI Components
|
||||
a. VariablePalette.jsx - Sidebar with draggable variables
|
||||
b. Workspace.jsx - Main area for variable manipulation
|
||||
c. ResultsPanel.jsx - Display area for calculation results
|
||||
d. VariableCard.jsx - Draggable elements representing variables
|
||||
e. PropellantModal.jsx - Modal for propellant selection
|
||||
f. EquationBrowser.jsx - Interface for browsing equations
|
||||
|
||||
2. Specialized Component Subdirectories
|
||||
a. engine/ - Engine-specific 3D visualization components
|
||||
b. rocket/ - Rocket-specific components (currently minimal)
|
||||
|
||||
C. Pages Directory (src/pages/)
|
||||
1. Home.jsx - Landing page showcasing available tools
|
||||
2. Solver.jsx - Main equation solving interface
|
||||
3. EnginePage.jsx - Engine design tool with 3D visualization
|
||||
4. RocketPage.jsx - Rocket design interface (placeholder)
|
||||
5. KnowledgebaseFuelsPage.jsx - Reference information about fuels
|
||||
|
||||
D. Engine Directory (src/engine/)
|
||||
1. Core Calculation Modules
|
||||
a. equations.js - Mathematical formulas for rocket propulsion
|
||||
b. solver.js - Constraint propagation algorithm implementation
|
||||
c. engineDesignCalcs.js - Engine design calculations
|
||||
d. rocketDesignCalcs.js - Rocket design calculations
|
||||
e. numerics.js - Numerical methods and algorithms
|
||||
f. units.js - Unit conversion utilities
|
||||
g. variables.js - Variable definitions and management
|
||||
h. format.js - Formatting utilities for display
|
||||
|
||||
2. Data Handling Modules
|
||||
a. exportImport.js - General workspace save/load functionality
|
||||
b. engineExportImport.js - Engine-specific import/export
|
||||
c. rocketExportImport.js - Rocket-specific import/export
|
||||
d. exportOdt.js - ODT document generation
|
||||
e. knowledgebaseData.js - Knowledgebase reference data
|
||||
|
||||
3. Field Information
|
||||
a. engineFieldInfo.js - Metadata about engine parameters
|
||||
|
||||
E. Hooks Directory (src/hooks/)
|
||||
1. useSolver.js - State management for equation solver
|
||||
2. useEngineDesign.js - State management for engine design
|
||||
3. useRocketDesign.js - State management for rocket design
|
||||
|
||||
F. Assets Directory (src/assets/)
|
||||
1. Images and icons
|
||||
2. Other static media
|
||||
|
||||
## III. External Dependencies Analysis
|
||||
A. Core Framework
|
||||
1. react/react-dom - UI framework
|
||||
2. vite - Build tool and development server
|
||||
|
||||
B. Specialized Libraries
|
||||
1. @dnd-kit/* - Drag-and-drop functionality
|
||||
2. @react-three/fiber/@react-three/drei - 3D rendering
|
||||
3. three.js - 3D graphics library
|
||||
4. react-router-dom - Client-side routing
|
||||
|
||||
C. Utilities
|
||||
1. jszip - File compression for exports
|
||||
2. tailwindcss - Styling framework
|
||||
|
||||
## IV. Data Flow Architecture
|
||||
A. Component to Hook Communication
|
||||
1. Pages utilize custom hooks for state management
|
||||
2. Hooks interface with engine modules for business logic
|
||||
|
||||
B. State Management Patterns
|
||||
1. Custom hooks encapsulate complex state logic
|
||||
2. Context API potential for cross-component state (if needed)
|
||||
|
||||
C. Data Persistence
|
||||
1. Export/import functionality for workspace saving
|
||||
2. ODT generation for report creation
|
||||
|
||||
## V. Build and Deployment Structure
|
||||
A. Development Server
|
||||
1. Vite HMR for rapid development
|
||||
2. Hot module replacement configuration
|
||||
|
||||
B. Production Build
|
||||
1. Optimized bundle generation
|
||||
2. Asset optimization and minification
|
||||
Reference in New Issue
Block a user