Skip to content

OpenPhysics/ExtrasolarPlanets

Repository files navigation

Extrasolar Planets

SceneryStack port of the NAAP Extrasolar Planets lab — two screens for the radial-velocity (Doppler wobble) and transit (light-curve dip) detection methods. Built with SceneryStack, Vite 8, TypeScript, and Biome 2.

Features

  • Two screens: Radial Velocity and Transit, with shared orbital / star-property math
  • English, Spanish, and French localization via StringManager
  • Default and projector color profiles
  • Progressive Web App (installable, offline-capable)
  • Unit tests for orbital mechanics, eclipse geometry, presets, and related helpers
  • Git hooks for Biome pre-commit checks
  • Shared GitHub Actions CI via OpenPhysics/Baton

Quick Start

npm install
npm run icons    # generate PNG icons from public/icons/icon.svg
npm start        # dev server → http://localhost:5173

Scripts

Command Description
npm start / npm run dev Start Vite dev server
npm run build Type-check + production build → dist/
npm run preview Preview the production build locally
npm run check TypeScript type check
npm run lint Biome lint check
npm run format Auto-format all files
npm run fix Lint + auto-fix
npm test Run Vitest unit tests
npm run icons Regenerate PNG icons from public/icons/icon.svg
npm run decompile Extract ActionScript from NAAP Flash .swf sources
npm run clean Remove dist/

Quality gate before release: npm run check && npm run lint && npm run test && npm run build.

Tech Stack

Tool Version Purpose
SceneryStack ^3.0.0 Simulation framework
Vite ^8 Build tool + dev server
TypeScript ^6 Type-safe JavaScript
Biome ^2.5 Linting + formatting
vite-plugin-pwa ^1 PWA + service worker

License

GNU Affero General Public License v3.0 — see OpenPhysics org license.

Contributing

See OpenPhysics contributing guidelines. Report bugs via GitHub Issues; use org issue templates.

About

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages