fenris

  • A networked file system with a client-server architecture that allows multiple users to simultaneously access remote files using various synchronization primitives.
  • Includes features such as ECDH key exchange, AES-GCM encryption, and Zlib compression for all messages in a custom protocol implemented using Protobufs, as well as LRU caching of recently accessed files.
  • Tools Used: C++, CMake, GitHub Actions, Protobufs, CryptoPP, zlib, spdlog.

Chip8 Emulator

  • A fully functioning Chip8 emulator that can emulate Chip8 games with all opcodes along with visuals and sounds.
  • Tools Used: Rust, SDL2.

ReDi-OpenCL

  • A simulator for the reaction diffusion algorithm based on the Gray-Scott model using OpenCL shaders for computation and SDL2 for rendering.
  • Tools Used: C++, SDL2, OpenCL.

LibraLynx

  • A full-fledged library management system using the Go HTML templating engine to render pages, with MySQL as the database.
    It includes features such as JSON Web Tokens, secure routes, password hashing, and is fully dockerized with config files for Apache to virtually host on your computer.
  • Tools Used: Golang, Apache, MySQL, Docker, JavaScript, HTML, CSS.

p-torrent

  • A simple, concurrent, download-only torrent client, including torrent file parsing using goroutines.
  • Tools Used: Golang.