Anthony Rota
Github
Projects
Full Stack Typing Test
Tech: React, RxJS, Node, Postgres, Caddy, SendGrid, Docker, CI
  • Authentication with email/password, email verification, profile management etc.
  • See history of typing tests, with filters, and replay them in real time
  • Deployed to DigitalOcean droplet using Docker images built with GitHub CI
  • Caddy serves the static files and reverse proxies to the node server for API requests
  • GitHub
YeType website screenshot
Infinite Procedural Terrain
Tech: WebGL, WebAssembly, Rust
  • First person camera
  • Lazy infinite chunk loading
  • Terrain generated in rust compiled to WebAssembly run parallel in Web Workers
  • Seeded noise and simulated hydraulic erosion with water droplets
  • Sky atmosphere shader, water
  • Also have a version that renders with low-poly terrain and low-poly water
  • GitHub
Procedurally generated terrain mountains with hydraulic erosion
Procedural Golf Game
Tech: Python, OpenGL
  • Procedurally generated levels using cave cellular automata, marching squares, and other algorithms
  • Pseudo 3d effect using shapely for geometric manipulation and then OpenGL Tessellation
  • Rendered using OpenGL
  • Physics using Pymunk
  • Sand pits, sticky walls, difficulty modes, sound, gui
  • GitHub
Golf game level
Automatic Documentation Generator
Tech: Preact, API Extractor
  • Analyses codebase using TypeScript and API Extractor and then generates both the documentation website and also markdown output
  • Also will render written markdown pages into the website
  • Site-wide instant search done on the client
  • Offline-first, accessibility, light/dark mode
  • GitHub
Example generated documentation website
Advanced WYSIWYG Text Editor
Tech: React, WebAssembly
  • Batched text deltas rendered in Vanilla JS
  • Incremental search
  • Spellcheck with Hunspell through Emscripten
  • Multiple selections, composition handling
  • Performant: Thousands of paragraphs and no lag
  • State updates handled using reactive programming
  • *Currently only works on MacOS but that's because I haven't setup keybindings for the other platforms, I can set them but I haven't got around to it yet*
  • GitHub
Text editor screenshot
Older projects here GitHub