Advanced 3D Satellite Tracking & Orbital Mechanics Platform
Real-time visualization, pass prediction, and conjunction analysis powered by CesiumJS and SGP4.
Live Demo ยท Wiki ยท Theory ยท Report Bug
| Desktop Command Center | Mobile Pocket Lab |
|---|---|
![]() |
![]() |
Scientific Satellite Tracker & Orbital Analysis
Responsive, High-Performance, and Mobile-First
- Pocket Lab Interface: A native-app-like mobile UI shell (
MobileAppShell) locked to100dvhto prevent browser bounce and safe-area overlap. - Native Snapping Sheet: A gesture-driven bottom sheet using
framer-motionwith 3 snapping heights: Tier 1 (Preview), Tier 2 (Split Tracker), and Tier 3 (Full Scientific Lab). - Ankara Command Deck: Integrated Doppler frequency shift analysis, space solar weather decay metrics, and visible overhead pass predictions relative to Ankara coordinates.
- Haptic & Scrubber integration: Translucent timeline play/pause controller with speed cycling and haptic triggers.
- Hardware-Aware Profiling: Dynamically downscales globe details and satellite load on lower-tier mobile hardware to secure 60fps rendering.
- ๐ฅ๏ธ Pure HSL Glassmorphic CSS Variables โ Frosted glass panels and neon spatial theme color tokens (uplink cyan, orbit gold) decoupled from Tailwind.
- โฑ๏ธ Adaptive Timeline โ Context-aware time scrubber that adjusts positions to prevent component clashing.
- ๐ฅ Satellite Cockpit View (POV) โ Camera locked to the velocity vector with smooth Quaternion rotations.
- ๐ฌ Scientific Modals & Bottom Sheets โ Mobile-first scientific lab cards with premium frosted backgrounds and high contrast readability.
- ๐ฐ๏ธ Real-time SGP4 Propagation โ Web Worker-driven batch processing for 25,000+ satellites at 60 FPS
- ๐งฎ Spatial Hashing Collision Engine โ O(N) link calculation with 1000kmยณ grid cells
- ๐ High-Fidelity Inertial Orbit Rendering โ Fixed GMST algorithm shows true Kepler rings
- โก Offline-First Architecture โ IndexedDB caching with Stale-While-Revalidate
- ๐ฆ OTA Payload Minification โ Server-side TLE parsing and comment/whitespace stripping reduces network overhead by ~40% for mobile connections
- ๐ Scientific Data Export โ TLE, CSV, and JSON format export for research
- ๐ Interactive 3D Globe โ Real-time visualization of 25,000+ satellites and space objects
- ๐ฌ Scientific Analysis โ Doppler shift, orbital decay, conjunction analysis, pass prediction
- ๐ฐ๏ธ Professional TLE Hub โ Multi-source fallback (Space-Track, CelesTrak, AMSAT)
- โ๏ธ Eclipse Detection โ Real-time sunlight/shadow status for all objects
- โ๏ธ Deep Linking โ Share specific satellites via URL (e.g.,
?sat=25544) - โฑ๏ธ Time Travel โ Simulate orbits at any point in history or future
- ๐ญ Scientific Tool Suite โ Pass prediction, Skyplot polar view, Orbital decay analysis & Doppler calculator
- ๐งญ AR Compass Mode โ Use device orientation to spot satellites in the sky
- โจ๏ธ Power User Tools โ Keyboard shortcuts, analyst mode, and TLE exporting
- โญ Favorites System โ Save and quickly access your favorite satellites
- Node.js 18+
- npm or yarn
# Clone the repository
git clone https://github.com/SpaceEngineerSS/OrbitVieW.git
cd orbitview
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env.local
# Add your Cesium Ion access token to .env.local
# Start development server
npm run devOpen http://localhost:3000 to see the app.
NEXT_PUBLIC_CESIUM_ACCESS_TOKEN=your_cesium_token_hereGet your free Cesium Ion token at cesium.com/ion.
| Technology | Purpose |
|---|---|
| Next.js 15 | React framework with App Router & Turbopack |
| CesiumJS + Resium | 3D globe visualization |
| satellite.js | SGP4/SDP4 orbital propagation |
| Zustand | High-performance state management |
| Web Workers | Spatial Hashing physics engine |
| TailwindCSS | Utility-first CSS |
| Framer Motion | Animations |
| Native IndexedDB | Offline caching |
| Puppeteer | Automated Documentation Screenshots |
src/
โโโ app/ # Next.js App Router pages
โโโ components/
โ โโโ Globe/ # Cesium globe & satellite rendering
โ โโโ HUD/ # Heads-up display components
โ โโโ Scientific/ # Analysis dashboards
โ โโโ layout/ # Responsive layouts (MobileNavBar, InspectorPanel)
โโโ lib/ # Core calculations
โ โโโ DopplerCalculator.ts
โ โโโ OrbitalDecay.ts
โ โโโ ConjunctionAnalysis.ts
โ โโโ PassPrediction.ts
โโโ hooks/ # Custom React hooks
โโโ workers/ # Web Workers for heavy computation
โโโ store/ # Zustand state management
| Key | Action |
|---|---|
/ |
Focus search |
F |
Toggle favorite |
R |
Random satellite |
Space |
Toggle play/pause |
Escape |
Close panels |
? |
Show shortcuts |
A |
Toggle Analyst Mode |
| Feature | Description |
|---|---|
| Doppler Shift | Calculate frequency shifts for satellite radio signals based on relative velocity |
| Orbital Decay | Estimate satellite lifetime using atmospheric drag models and B* coefficients |
| Conjunction Analysis | Analyze close approach events between space objects with risk assessment |
| Pass Prediction | Predict when satellites will be visible from your location with sky plots |
| Source | Purpose |
|---|---|
| Space-Track.org | Official source for 25,000+ active payload and debris TLEs |
| CelesTrak | Secondary mirror and supplemental data provider |
| NASA Horizons | High-precision ephemeris for deep space missions (JWST) |
| SatNOGS | Real-time frequency and communication metadata |
OrbitView is engineered with high-fidelity astrodynamic models to ensure research-grade accuracy.
-
Propagation: High-precision SGP4/SDP4 models considering Earth's oblateness (J2-J4), atmospheric drag (
$B^*$ ), and deep-space perturbations - Orbit Rendering: Fixed GMST inertial frame rendering for true Kepler orbit visualization
-
Atmospheric Model: Optimized exponential decay model correlated with real-time
$B^*$ terms - Signal Analysis: Relativistic Doppler shift calculations based on ITRF radial velocity vectors
| Parameter | Modelled Accuracy | Benchmark Source | Status |
|---|---|---|---|
| LEO Propagation | ~1-3 km (1-day) | NAVSTAR GPS (Post-Fit) | โ Validated |
| Pass Prediction | ยฑ5 seconds (AOS/LOS) | ISS (Zarya) TLE Observations | โ Validated |
| Doppler Shift | ยฑ5 Hz @ 435 MHz | SatNOGS Network Telemetry | โ Validated |
| Orbital Decay | ยฑ15% (Altitude < 400km) | NRLMSISE-00 High-Fidelity | โ Validated |
For in-depth analysis and methodology, see THEORY.md
| Phase | Timeline | Feature |
|---|---|---|
| Phase 1 | Q1 2026 | TLE History Analysis โ Track orbital changes over time |
| Phase 2 | Q2 2026 | Maneuver Detection โ Identify impulsive maneuvers via TLE residuals |
| Phase 3 | Q3 2026 | High-Fidelity Shadow Model โ Penumbra/Umbra atmospheric refraction |
| Phase 4 | Q4 2026 | Space Weather Integration โ Real-time F10.7 solar flux for dynamic density |
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Type checking
npm run type-check
# Generate Documentation Screenshots
node scripts/capture-screens.mjsContributions are welcome! Please see CONTRIBUTING.md for guidelines.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project was developed by Mehmet Gรผmรผล.
๐ Website: spacegumus.com.tr
๐ GitHub: OrbitVieW
๐ X (Twitter): @persesmg
๐ง Email: contact@spacegumus.com.tr
This project is licensed under the MIT License - see the LICENSE file for details.
- CelesTrak โ TLE data source
- CesiumJS โ 3D globe engine
- satellite.js โ SGP4 implementation

