Skip to content

Repository files navigation

Doppler Effect Simulation

CI

An interactive simulation of the Doppler Effect built with SceneryStack. Explore how observed sound frequency shifts when source and observer move relative to each other.

Features

  • Drag the source and observer; live frequency shift and waveform displays
  • Preset scenarios for approach, recession, same-direction, and perpendicular motion
  • Adjustable emitted frequency and speed of sound
  • Keyboard controls (WASD / arrows), pause/resume, and motion trails
  • Velocity vectors, microphone listen mode, and numerical readouts
  • English, Spanish, and French UI, projector mode, and installable PWA

Quick Start

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

Scripts

CommandDescription
npm start / npm run devStart Vite dev server
npm run buildType-check + production build → dist/
npm testRun Vitest unit tests (includes memory-leak suite)
npm run previewPreview the production build locally
npm run checkTypeScript type check
npm run lintBiome lint check
npm run formatAuto-format all files
npm run fixLint + auto-fix
npm run iconsRegenerate PNG icons from public/icons/icon.svg
npm run cleanRemove dist/

Tech Stack

ToolVersionPurpose
SceneryStack^3.0.0Simulation framework
Vite^8Build tool + dev server
TypeScript^7Type-safe JavaScript
Biome^2.5Linting + formatting
vite-plugin-pwa^1PWA + 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

Interactive simulation of the Doppler Effect — visualizes how the frequency of sound waves shifts with relative motion between source and observer.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages