Skip to content
View bharadwajsanket's full-sized avatar
🌴
On vacation
🌴
On vacation

Block or report bharadwajsanket

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.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. 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
bharadwajsanket/README.md


I build systems to understand how they work — parsers, runtimes, version control, bootloaders.
The implementation is the documentation.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  C · C++ · NASM · VYOM · Python          Linux · Git · QEMU · POSIX
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━



vyom  ·  Programming Language  C99 zero deps ~2700 LOC

source  ──▶  lexer  ──▶  tokens  ──▶  parser  ──▶  AST  ──▶  evaluator  ──▶  output

A dynamically-typed language built without external compiler infrastructure. The lexer is a hand-rolled state machine producing a flat token stream. The parser is handwritten recursive descent — no generators, no parser tables — constructing the AST directly during traversal.

The runtime is a tree-walking evaluator. Environments are chained hash maps: each scope holds a pointer to its enclosing scope, enabling lexical variable resolution up the chain. Memory is managed manually; execution remains fully deterministic — no GC pauses, no hidden allocation.

The goal was not to create a language ecosystem. It was to own every stage between source text and output.

  getvyom.vercel.app  ·  source →




ion  ·  Version Control System  C++

Snapshot-based VCS. No staging area. Each commit stores a full snapshot of tracked files, content-addressed by hash. Branching is pointer manipulation over the commit graph. Diff uses LCS for line-level deltas; merge detects conflicts before applying.

The .ion/ directory is intentionally human-readable — objects, refs, and the commit log are inspectable without tooling. The complexity Git accumulates around the index is absent by design.

  source →




sanix  ·  x86 Bootloader + Shell  NASM x86 real mode

Boots directly into a VGA shell from 16-bit real mode into 0x7C00. Stage 1 sets up segments and loads stage 2 via INT 13h. Stage 2 clears VGA text memory through direct writes to 0xB8000, initializes a stack, and enters a command loop. Input is handled via INT 16h keyboard interrupts — scan codes mapped, characters rendered to the VGA buffer manually.

No OS. No libc. Nothing between the code and the hardware.




neotree  ·  Directory Visualizer  C99 zero deps

Single-pass recursive walk via opendir/readdir. Glob matching is implemented manually through recursive pattern traversal — no fnmatch. Output uses box-drawing characters; prefix state is tracked through a bitmask passed down the call stack. Zero dependencies. POSIX surface only.

  source →




vyp  ·  Archive Tool  C

Custom binary archive format: fixed-size header, file index with per-entry offsets and sizes, contiguous data blocks. The index lives at a known offset — random access without a full scan. Compaction rewrites the archive in-place to reclaim space from deleted entries. Format is hand-parseable; no dependency on existing archive standards.

  source →




decodethecode  ·  Codebase Analyzer  Web

Parses a repository to extract module dependencies, call graphs, and structural relationships. Produces a navigable view of how a codebase is organized — file boundaries, import graphs, dependency depth. Useful for understanding unfamiliar codebases without reading every file.

  source →




control         over convenience
correctness     over shortcuts
implementation  over usage



active

vyomstdlib design, structured error reporting
dsaimplementations from scratch
linuxsystem-level internals

Bhubaneswar, IN

Pinned Loading

  1. neotree neotree Public

    Modern, fast, zero-dependency tree CLI for developers with filtering, stats, find mode, exports, and multi-root traversal.

    C

  2. sanix sanix Public

    A minimal x86 bootloader written in assembly with direct VGA output and keyboard input handling.

    Assembly

  3. VYOM VYOM Public

    A minimal scripting language in C focused on clarity, explicit behavior, and predictable execution.

    C