github gbozo/no-sdr v0.2.0
v0.2.0 — First Release

latest releases: v2.10.5, v2.10.4, v2.10.3...
5 months ago

no-sdr v0.2.0 — First Release

The first public release of no-sdr, a multi-user WebSDR built on Node.js.

Highlights

  • 7 analog demodulation modes — WFM (stereo), NFM, AM, USB, LSB, CW, Raw IQ
  • Stereo FM — PLL-based 19kHz pilot detection with SNR hysteresis, L-R DSB-SC demodulation, per-channel de-emphasis
  • Real-time waterfall — Canvas 2D with 5 color palettes (turbo, viridis, classic, grayscale, hot) and auto-range
  • Spectrum analyzer — Peak-hold, tuning indicator, frequency labels
  • 5-band parametric EQ — LOW 80Hz · L-MID 500Hz · MID 1.5kHz · H-MID 4kHz · HIGH 12kHz (all ±12dB)
  • Audio controls — Stereo balance, loudness compression, squelch gate with tune bypass
  • Per-user IQ extraction — Server-side NCO frequency shift + 4th-order Butterworth LPF + decimation
  • 3 source types — Local USB (rtl_sdr), remote (rtl_tcp), demo mode (signal simulator)
  • Profile system — Admin-managed dongle profiles with CRUD API and config persistence
  • Digital mode decoders — Spawn external C binaries (dump1090, acarsdec, dumpvdl2, multimon-ng, direwolf)
  • 3 UI themes — Default (cyan), CRT (phosphor green), VFD (amber)
  • Multi-user — Shared waterfall broadcast, independent per-user tuning within dongle bandwidth
  • Docker ready — Multi-stage Dockerfile with USB passthrough and rtl_tcp sidecar support
  • Bandwidth meter — Real-time SVG sparkline with FFT rate and data throughput

Tech Stack

Node.js 22 · TypeScript 5 · Hono · SolidJS · Vite 6 · Tailwind CSS v4 · fft.js · Web Audio API

Quick Start

```bash
npm install && npm run build && npm run start:demo
```

Then open http://localhost:3000

Bundle Size

  • JS: 76.10 KB (22.50 KB gzipped)
  • CSS: 26.39 KB (5.72 KB gzipped)

Don't miss a new no-sdr release

NewReleases is sending notifications on new releases.