Skip to content
Aman SinghWorkshop
AmanSinghNp / Mini-JavaScript-Projects

Mini JavaScript Projects

Thirty browser apps and twenty-five algorithm visualisers, all without a framework or a build step. They range from small DOM exercises to a text editor built on a piece table, a neural network with backpropagation and a set of market-microstructure simulators. This report covers the whole collection; the ray caster and matching engine have their own reports.

55Runnable apps
24,660Lines of JS
30Projects
25Visualisers
0Frameworks
Gallery

Twelve of the fifty-five, running

Dark code editor with syntax-highlighted JavaScript
Code Editor. Piece-table buffer, virtual scrolling, multiple cursors, highlighting in a Web Worker.
Neural network diagram with red and green weights next to a blue decision boundary heatmap
The Glass Box AI. A 2-2-1 network learning XOR, weights coloured by sign, decision boundary live.
Options calculator with inputs and Greeks cards showing analytical and numerical values
Black-Scholes Greeks. Closed-form Greeks compared with finite-difference estimates.
Dark table of live cryptocurrency tickers with prices and percentage changes
The Market Firehose. Live Binance tickers; captured 26 September 2026.
Market making dashboard with bid 99.35 and ask 100.65 around a 100 mid price
Spread Controller. Avellaneda-Stoikov quotes around a $100 mid.
Order book drawn as a wall of red bricks with an order ball flying toward it
Order Book Ray Caster. A market order "walks the book" as a ball breaking bricks.
World map from OpenStreetMap tiles with a side panel for saved places
Location Marker. A slippy map written from scratch on canvas with OSM tiles.
Weather app showing 14 degrees and partly cloudy in London with an hourly forecast
Weather Now. Open-Meteo data, saved cities, a service worker.
Grid of cards for data structure visualisers: stack, queue, deque, trees
Visualiser hub. 25 separate apps, from stacks to B-trees.
Red-black tree visualiser with red and black nodes after seeding
Red-Black Tree. One click seeds a demo tree.
Dark grid puzzle with a cyan laser beam and a column of wall blocks
Optics Lab. A 250-line mirror puzzle.
Typing test with a mistyped word highlighted and an on-screen keyboard
Typing Speed Test. Live WPM and accuracy, history, accessibility and performance work.
Shape

What's in the box

Apps by category
Largest projects by lines of JavaScript
Blue projects have their own report.
Shared techniqueProjectsWhere it shows up
Tailwind Play CDN13 + 25Every December and January app and every visualiser, each with its own inline config
Canvas 2D10Physics, ray caster, Black-Scholes heatmap, Drawing, Location map, Order Book, Optics, Glass Box
localStorage10Notes, todos, cities, typing history, map markers, theme
requestAnimationFrame loop9Games, engines, and the Firehose's once-per-frame DOM flush
ES6 classes as structure9 + 12PieceTable, BlackScholes, OrderBook, Network / Layer / Neuron
ARIA attributes8The later, polished apps; none of the visualisers
Standouts

Six beyond the deep dives

Code Editor

The largest app at 3,273 lines. A piece-table buffer, a virtual scroller, multiple cursors with Alt-click, find and replace, bracket matching, 1,000-step undo, and tokenising moved to a Web Worker.

The Glass Box AI

A neural network from scratch with backpropagation, a live weight diagram and a decision-boundary heatmap. Its 47 Vitest tests pass. Its console demo prints "Converged" and then marks all four XOR answers as failed, because its two success thresholds disagree.

Black-Scholes Greeks

Analytical pricing with dividend yield, a separate finite-difference class to check each Greek, and a heatmap of any Greek over price and volatility. The README calls it TypeScript; there are no .ts files.

The Market Firehose

The cleanest engineering pattern in the repo: WebSocket messages write to a map, a set marks changed symbols, and the DOM is patched once per animation frame. Reconnects back off from 1 s to 30 s.

Spread Controller

A correct Avellaneda-Stoikov implementation, badly calibrated: with volatility fixed at 0.02, maximum inventory skews quotes by only $0.04, so the skew indicator moves about 1.6 px. The model's main lesson is nearly invisible.

Location Marker

974 lines: OpenStreetMap tile maths, pan and zoom, a tile cache, markers with notes, haversine distances, and JSON import and export with de-duplication. Filed under Utilities in the README; it deserves better.