Projects

Things I've built to understand how they work. I learn best by implementing from scratch rather than just reading about it.

Book Summarizer

Python / FastAPI / React / PostgreSQL GitHub →

An AI-powered learning platform that transforms books and course materials into an intelligent study system. Think of it as GPS for learning - it tells you what to study next based on your knowledge gaps.

Key features

  • Hierarchical summaries - Book → chapter → section breakdowns at multiple detail levels
  • Spaced repetition - Extracts testable facts and schedules reviews using SM-2
  • Cross-source search - Semantic search across all uploaded content
  • Adaptive assessment - Quizzes that adjust difficulty based on your responses
  • Course mode - Turn slide decks into deep lectures

This is my most ambitious project - a full-stack application with background task processing (Celery), vector embeddings for semantic search, and a React frontend.

zero (zero2bevy)

Rust / wgpu GitHub →

A learning project for Rust and graphics programming. I wanted to understand rendering from first principles before using a game engine.

The journey

  • Phase 1 - Pure math rendering. No GPU, just CPU calculations to understand how pixels get drawn.
  • Phase 2 - Moved to wgpu. Learned about GPU pipelines, shaders, and how graphics APIs actually work.
  • Goal - Eventually progress to Bevy with a solid understanding of what's happening under the hood.

This is how I prefer to learn: start from zero, build up understanding layer by layer.

Redis Clone

A Redis implementation from the Codecrafters challenge. Building it from scratch taught me about:

  • RESP (Redis Serialization Protocol)
  • In-memory data structures for key-value stores
  • TCP server implementation in Go
  • Handling concurrent connections

Other experiments

Smaller projects and learning exercises.