All projects
systems cli
Build a JSON parser from scratch
Write a hand-rolled lexer and recursive-descent parser that turns raw JSON text into native objects.
Why it matters
Parsing is the canonical test of whether you can hold a recursive structure in your head and handle edge cases exhaustively. Escapes, nesting depth, and precise error positions are where most attempts quietly break.
What you build
- A lexer producing a token stream
- A recursive-descent parser for the full grammar
- Errors carrying an exact line and column
- A test suite covering escapes, nesting, and malformed input
If you want more
- A streaming parser
- Benchmark against the native parser
Build it
It is small enough to hold in your head, which is why it is the right first parser.
Material for the whole build
Shows recursive parsing, exhaustive edge-case handling, and a test suite that proves it — a strong signal for systems-leaning roles.
Get a plan built around projects like this