My projects and open-source contributions

Contents

Work Experience

Contributor at Graphite Editor Rust · wgpu · Vello · ~25k★

github.com/GraphiteEditor/Graphite · May ’25 – Sep ’25

Worked on Graphite, a Rust 2D vector graphics editor, as part of the 2025 Google Summer of Code program, merging 45+ PRs across the editor and its rendering stack.

Worked on large bitmaps used to pass through base64-encoded SVG image data, which made the preview stutter. I moved that pixel data to an off-screen HTMLCanvas cache using JavaScript's Reflect API and bitmap-heavy documents became much smoother to work with.

Added performance-aware masking to Graphite which in turn supports more features such as inverted masks, stroke alignment, and custom paint ordering. I implemented luminance-based clipping in Vello and updated Graphite's codebasee to Vello v0.5.0 and WGPU v25 so the editor could use it.

Built Blender-style transformation pivots where each layer has its own origin, and the Select and Path tools can switch between Active Object and Average of Origins while editing.

Implemented level ancestory queries to return the set of nodes at their shallowest common level for shallow selection option.

A lot of the work was smaller fixes such as transform cage fixes, node deserialization, isometric grids that didn't persist, and undo bugs when switching tools to name a few and many more math issues boundary edge cases and off-by-one issues.

Audio & DSP

Śaq Rust · PipeWire

A easy to use audio enhancer using PipeWire that instantly makes audio sound much better on Linux.

Languages & Compilers

rayfuck Python · C · Brainfuck

A ray tracer written in Brainfuck, made by compiling Ray Tracing in One Weekend's C code into Brainfuck using a simple IR.

tjit Rust · Cranelift

An experimental statically typed systems language with a JIT compiler. It supports algebraic data types (ADTs), arrays, pattern matching with ranges, destructuring, and wildcards, arbitrary-width integers such as u13 and i42 with bit-packing to maximize cache efficiency, a pipeline operator (|>) that provides a form of UFCS, and libc FFI for input/output.

Desktop & window managers

enkiwm Rust · Smithay · Wayland

An experimental Wayland window manager built on Smithay, with intuitive grid-based navigation and a Vim-like modal input mode.

Filesystems

ghfs Rust · fuser · Tokio

A read-only FUSE mount that makes GitHub look like folders under /tmp/ghfs/. As you browse, it fetches users, repositories, and files from the GitHub API only when they're needed.

Terminal tools & CLIs

coxide C

A minimalist zoxide in C. It maintains a frequency-weighted database of directories you visit, and o jumps to the most relevant one based on a fuzzy match.

sscli & ssr C · Rust · ratatui

Two takes on student-search for IITK, one is a pipe-friendly C CLI and the other is a full ratatui TUI in Rust. "Fortunately", IITK finally took the privacy of the students seriously and the endpoint has been shut down.

kbdgen Python

A keyboard-layout generator that uses simulated annealing to find optimal layouts for a given body of text.

cypercine C

A tiny hyperfine-style CLI microbenchmarker in C. It runs each command n times, aggregates timing statistics, and tells you which is fastest.

tch Rust

A tiny CHIP-8 emulator based on Cowgod's CHIP-8 Technical Reference.

Graphics & GPU

griw Rust

A real-time GPU path tracer written for wgpu using Slang. It includes Lambertian, Metal, and Dielectric materials and Temporal Anti-Aliasing.

wants Rust

A 65,536-ant pheromone-trail simulation, on GPU. inspired by Sebastian Lague's ant simulation video.

nbody Rust

A 5,000-body gravitational simulator with a quadtree-based Barnes–Hut O(N log N) approximation, using leapfrog integration written to be cash optimal and very fast.

physarum C++

100,000-agent slime-mould simulation modelled on Physarum polycephalum with different parameters producing vastly different aesthetics from the same underlying model. My only project with OpenGL and C++.

Other open source

Tools I use

primary
Rust, C++
also
C, Python, Lua, JavaScript, TypeScript, R, shell
systems
FUSE, FFI, X11, Wayland, PipeWire, WebGPU, OpenGL
tooling
git, GitHub, Cargo, CMake, Nix, Docker, neovim, Linux

Education

B.S. in Statistics & Data Science at IIT Kanpur 2024–2028. CPI 8.8 / 10.0.

IIT Kanpur Academic Excellence Award (top 10% of the cohort, 2025,26). Perfect 10.0 / 10.0 SPI in the 2024–25 even semester.

Programming Club secretary for the previous year. Introduced the Graphics domain and authored the Graphics and Systems roadmaps from scratch.

Led a 10-day Graphics Spring Camp as instructor, walking campers through a GPU path tracer modelled on griw.

Contributed tch as the reference architecture for the Systems Spring Camp.