How huseyinsihat/ufkumuzyildizlar works
Ufkumuz Yıldızlar is a bilingual, browser-based astronomy learning app: learners explore a simulated solar system, control its time and viewpoint, and enter guided activities, while also discovering sky events or asking the Sun questions. The graph highlights the UI entry point, simulation and rendering, education and events, and optional hardware, voice, and AI integrations. The README documents the Deneyap controls; sampled code confirms app wiring, lab-to-scene control, and event scheduling. Other subsystem links are kept at documented capability level where implementation excerpts were unavailable.
Main entry points: App.tsx App Shell · SolarSystemScene.ts Solar System Scene · labStore.ts Lab State · ActivityBody.tsx Activity UI
Components 27
Application UI
- App Shell
src/App.tsx - Explore Controls
src/components/ui/PlanetDrawer.tsx - Sun Chat Panel
src/components/chat/SunChatPanel.tsx - Activity UI
src/components/lab/ActivityBody.tsx
Simulation and Scene
- 3D Canvas Host
src/components/3d/CanvasHost.tsx - 2D Fallback
src/components/3d/SolarSystem2D.tsx - Solar System Scene
src/scene/SolarSystemScene.ts - Camera Controller
src/scene/CameraController.ts - Scene API
src/scene/sceneApi.ts - Simulation State
src/store/simulationStore.ts - Event Visual Layer
src/scene/events/AstroEventLayer.ts
Learning Features
- Lab Home
src/components/lab/LabHome.tsx - Lab State
src/store/labStore.ts - Lab Activities
src/content/labActivities.ts - Education Panels
src/components/education/EducationHub.tsx - Event Scheduler
src/features/astroEvents/useAstroEventScheduler.ts - Event Content
src/content/astroEvents.ts
Optional Integrations
- Hardware Controls
src/components/ui/HardwarePanel.tsx - Hardware Store
src/hardware/hardwareStore.ts - Voice Host
src/components/ui/VoiceHost.tsx - Chat Completion
src/features/chat/openRouter.ts
Astronomy Domain
- Time Engine
src/astronomy/timeEngine.ts - Astronomy Calculations
src/astronomy/orbitalCalculations.ts - Planet Data
src/astronomy/planetData.ts
Other components
- Learner
- Deneyap Card
- OpenRouter Service
Connections 28
- Learner → App Shell: uses
- App Shell → Explore Controls: renders
- App Shell → Sun Chat Panel: renders
- App Shell → Activity UI: renders
- App Shell → 3D Canvas Host: renders
- App Shell → 2D Fallback: renders
- App Shell → Lab Home: renders
- App Shell → Education Panels: renders
- App Shell → Hardware Controls: renders
- App Shell → Voice Host: renders
- App Shell → Event Scheduler: starts
- 3D Canvas Host → Solar System Scene: hosts
- Solar System Scene → Camera Controller: controls view
- Activity UI → Lab State: updates
- Activity UI → Lab Activities: reads
- Lab State → Scene API: controls scene
- Lab State → Simulation State: updates
- Lab State → Lab Activities: reads
- Solar System Scene → Astronomy Calculations: uses calculations
- Solar System Scene → Planet Data: reads data
- Event Scheduler → Event Content: schedules from
- Event Scheduler → Event Visual Layer: dispatches events
- App Shell → Hardware Store: watches ports
- Hardware Controls → Hardware Store: controls
- Hardware Store → Deneyap Card: communicates
- Sun Chat Panel → Chat Completion: requests replies
- Chat Completion → OpenRouter Service: sends chat
- Simulation State → Time Engine: uses time scale