Srira's Projects
Websites & PWAs









Rebmemer is a mobile-first Progressive Web App designed for spaced repetition practice with a sleek, modern UI. Create question-and-answer flashcards, organize them into decks, and customize how cards are picked for each practice session. Flip the flow with reverse practice mode to review cards from answer to question. Easily import and export your card data via CSV. Simple, flexible, and designed to make spaced repetition a seamless pa...Show more
Local Ledger







Local Ledger is a minimal Progressive Web App (PWA) that helps you track expenses effortlessly. It works completely offline, with features like filters for organizing transactions, interactive graphs for visualizing spending, and import/export options for easy data management. With a clean, simple interface, it offers a secure and hassle-free way to manage your finances on your mobile.





GeoBITs is a custom-built web mapping and navigation platform developed exclusively for the Bannari Amman Institute of Technology campus. Built without relying on any third-party map APIs, it features an SVG map meticulously drawn using Illustrator, combined with a satellite layer stitched from satellite images. The platform supports dynamic route rendering through SVG animations and uses Dijkstra’s algorithm to compute the shortest pat...Show more
Ruby on Wasm



RubyOnWasm is a fully browser-based Ruby interpreter built with WebAssembly, requiring no backend server. Powered by Ruby 3.2.0’s WASI support, it runs CRuby directly in the browser and other WASM environments. The platform includes syntax highlighting, code execution, copy support, keyboard shortcuts, and native sharing via the Web Share API.
GitHub
Weaviate Record
Weaviate Record is an ORM for Weaviate vector database that follows the same conventions as the ActiveRecord and brings the power of Vector database and Retrieval augmented generation (RAG) to your Ruby/Rails application.
Dijkstra Trace
Dijkstra trace is an ruby gem to find the shortest path between two places in the graph using the Dijkstra algorithm. The user would first need to create an object for the graph and can add edges of that graph object. The edge name can be a number, character or strings. After adding the edges, the shortest path between any two edges can be easily calculated.