Developers
Code architecture
A map of the actual AstroGuide repository structure.
Structure observed in the product repository:
AstroGuide/
├── .github/ # templates and CI / image workflows
├── public/ # logo, screenshot and textures
├── src/
│ ├── components/ # 3D, 2D, comparison, demo and interface
│ ├── config/ # demo-mode detection
│ ├── data/ # celestial catalogue and integrity tests
│ ├── i18n/ # UI copy and language catalogue
│ ├── store/ # Zustand state and tests
│ ├── App.tsx
│ ├── index.css
│ └── main.tsx
├── Dockerfile
├── docker-compose.yml
├── nginx.conf
├── vercel.json # demo build only
└── package.jsonDemoExperience is rendered only when import.meta.env.MODE === 'demo'. The normal product imports the module but displays neither its badge nor welcome screen.
The Zustand store remains in memory. resetExploration() restores the 3D view, hides the information card and includes every object in comparison again. Language selection is managed separately and persisted locally.