Skip to content
View SAMARTHJAISWAL's full-sized avatar
🏠
Working from home
🏠
Working from home

Block or report SAMARTHJAISWAL

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
SAMARTHJAISWAL/README.md

Hi, I'm Samarth Jaiswal 👋

I build software that shows its work: a compiler, a black-hole ray tracer, a consensus simulator, real-time collaboration, audio analysis and computer vision, most of it running right in the browser.

LinkedIn X Repositories

  • 🧠 Systems and languages: a compiler to WebAssembly, a Raft consensus simulator, a Rust physics engine, a Zig CSV profiler built on streaming sketches, an OCaml SQL lineage analyzer, all tested with fuzzing
  • 🎨 Graphics and sound: WebGL2 ray tracing, canvas rendering, Web Audio synthesis and real-time sound analysis
  • 🧍 Computer vision: pose detection and exercise tracking with MediaPipe, in Python and entirely in the browser
  • 🌐 Full stack: React, Next.js and Vue/Nuxt in front; Node.js, Go, FastAPI, Flask and Spring Boot behind them
  • 🤖 AI apps: Gemini and LLM-powered tools for documents, data and video

🚀 Featured projects

A black hole rendered by vivar, the disk bent over and under the shadow A black hole ray-traced live in WebGL2: every pixel follows a light ray through curved spacetime. Add spin and the shadow turns into the D shape of a Kerr black hole, matching Bardeen's curve to within a pixel.

Live demo WebGL2 GLSL General relativity
The lipi playground: a program on the left and a Mandelbrot set drawn by its compiled code on the right A small programming language whose compiler, written from scratch, turns your code into real WebAssembly in the browser, showing tokens, typed tree, WebAssembly text and bytes. 20,000 fuzzed programs agree with a reference interpreter.

Live demo Compilers WebAssembly Fuzzing
The sahmati simulator: five servers on a ring exchanging Raft messages, with their logs below An interactive Raft consensus simulator: crash servers, split the network and watch leader election and log replication one message at a time. Fuzzed against Raft's five safety properties over 120,000 runs.

Live demo Distributed systems Raft TypeScript
The dhool sandbox: sand, water, fire and lava interacting A falling-sand physics sandbox: sand, water, oil, fire, lava, acid and ice reacting to each other. The simulation is a Rust cellular automaton compiled to a 36 KB WebAssembly module with no dependencies.

Live demo Rust WebAssembly Simulation
A shared rangoli board with an eight-fold design and sixteen diyas, and a second person's cursor A Diwali rangoli board you share with a link and draw on together in real time, with mandala symmetry and diyas that light the board at night. Peer to peer over WebRTC, kept in sync by a hand-written CRDT.

Live demo WebRTC CRDT Canvas
The patakha meter: a gauge reading in dB(A), tonight's cracker count and the loudest moment Your phone as a Diwali cracker noise meter: live A-weighted decibels, a spectrogram, and every bang, ladi and rocket detected as it goes off. Audio never leaves the device.

Live demo Web Audio DSP AudioWorklet

🧰 More projects

Project What it is
aavedan · आवेदन A job search that finds roles in India, remote and worldwide, ranks them against your resume with Claude, fills each application in Chrome, reads every answer back, and sends only what you approve. Live demo
sutra · सूत्र An Excel formula engine in Gleam: 127 functions, incremental recalculation, dynamic arrays that spill like Excel 365, and circular-reference detection, from one codebase on the BEAM and in the browser. Incremental recalculation is fuzz-tested against full rebuilds over 625,000 random edits. Live demo
vansh · वंश Column-level lineage for SQL and dbt in OCaml: traces every column through CTEs, joins and SELECT * back to its sources, answers "what breaks if I change this column?", and runs in the browser via js_of_ocaml. Parses 346 real-world dbt models with zero errors. Live demo
parakh · परख A CSV profiler in Zig: one pass and a few MB of memory for files of any size, with types, nulls, distinct counts (HyperLogLog), quantiles (KLL), top values and data-quality warnings. About 4× faster than pandas on 1M rows; the live demo runs it in your browser via WebAssembly. Live demo
RepCount A workout rep counter that runs in the browser: on-device pose tracking counts squats, push-ups, curls and jumping jacks, with form cues. Live demo
linkly A self-hosted URL shortener in Go with privacy-first click stats; the live demo is the real Go code compiled to WebAssembly. Live demo
Raga Explorer · राग दर्शन 25 Hindustani ragas with a synthesised tanpura, aroha and avaroha playback, a swara wheel and a raga clock, all generated with Web Audio. Live demo
CAT Quant PYQ Bank 656 CAT Quant previous-year questions (2014–2025) by topic, year and difficulty, each solved step by step. Open
CAT VARC PYQ Bank 642 CAT VARC questions from every slot of 2017–2025, each explained with the method and the trap. Open
ekagra · एकाग्र A quiet listening room for deep work: sitar over an illustrated lamplit loop, with a focus timer. Live site
RealTimePoseDetection Tracks 33 body landmarks from a webcam, video or image and classifies yoga poses in real time from joint angles.
celea AI video generation: Gemini sharpens the prompt, Veo renders the clip, and an analyse-and-refine loop repeats until it meets the goal.
medical-imaging-platform A browser-based medical image viewer for PNG, JPEG and DICOM, with window/level and measurements, all client-side.

🛠️ Tech I use

Python, Go, Rust, Zig, OCaml, TypeScript, JavaScript, Java, C, React, Next.js, Vue, Nuxt, Tailwind CSS, HTML
Node.js, Express, FastAPI, Flask, Spring Boot, PostgreSQL, SQLite, MongoDB, Prisma, Supabase, Docker, OpenCV, WebAssembly, Vite

📊 GitHub at a glance

Contributions, commits, pull requests, repositories and languages A snake eating my GitHub contribution graph

Stats and the snake are generated daily from public GitHub data by a workflow in this repo.

Pinned Loading

  1. dhool dhool Public

    Falling-sand physics sandbox: a Rust cellular automaton compiled to a 36 KB WebAssembly module. Sand, water, oil, fire, lava, acid and more.

    Rust

  2. raga-explorer raga-explorer Public

    Interactive guide to 25 Hindustani ragas in the browser: synthesised tanpura, playable raga keyboard, swara wheel and raga clock. Web Audio, no samples.

    TypeScript

  3. rangoli rangoli Public

    Draw a Diwali rangoli together, live. Peer-to-peer over WebRTC with a hand-written CRDT: mandala symmetry, powder brushes, glowing diyas, shared fireworks. No server.

    TypeScript

  4. RealTimePoseDetection RealTimePoseDetection Public

    Real-time human pose detection and yoga pose classification (Warrior II, T Pose, Tree Pose) from a webcam with MediaPipe and OpenCV

    Python

  5. sahmati sahmati Public

    Interactive Raft consensus simulator: crash servers, split the network and watch leader election and log replication. Deterministic simulation, fuzzed against Raft's five safety properties.

    TypeScript

  6. vivar vivar Public

    Real-time black hole renderer: every pixel traces a light ray through Schwarzschild spacetime in a WebGL2 shader. Lensed accretion disk, photon ring, Doppler beaming, gravitational redshift.

    TypeScript