My Projects

Monte Carlo Tree Search PAD Agent

Monte Carlo Tree Search PAD Agent

reinforcement learning
  • An agent that solves Puzzle & Dragons boards using MCTS
  • TODO: try reinforcement learning algorithms
  • TODO: demo website
Crypto Balancer

Crypto Balancer

google cloudserverlessTypescript
  • Trading bot written in TypeScript
  • Pulls market shares of cryptocurrencies from CoinMarketCap and balances portfolios accordingly
  • Deployed on Google Cloud Functions & Cloud Scheduler
ResumeBuilder

ResumeBuilder

Next.jsReact.jsTypescriptSass
  • Resume builder app built with react-pdf
  • Real time pdf preview that provides instant feedback
  • Fully customizable sections that can be easily modified
imbiased

imbiased

Next.jsReact.jsReduxTypescriptSass
  • Voting platform implemented with Next.js in Typescript
  • Supports authentication, creating topics and comments
  • Protects against spam and abuse with google reCAPTCHA
  • Loads topics with infinite scrolling
imbiased Backend API

imbiased Backend API

C#.Net CoreDockerSwarmSQLTraefik
  • Restful API service implemented with .Net Core
  • Implemented the code with the Repository-Service Pattern and DI
  • Deployed with docker swarm mode as a service with traefik as reverse proxy
  • Supports authentication, creating topics, comments, reCAPTCHA verification, pagination, etc.
  • Connects to a PostgreSQL database
Trending Topics

Trending Topics

React.jsNext.jsTypescriptSassHTML
  • App to view historical daily trends collected by Daily Trend Scraper
  • Implemented in typescript with next.js, a react framework that supports server-side rendering
  • Uses server side rendering for the index page
Daily Trend Scraper

Daily Trend Scraper

TypescriptNode.jsMongoDB
  • Automatically collects data from google trends into a database
  • Implemented with node.js and typescript
  • Uses node-cron to collect google trends data every hour
  • Inspired by the observation that google trends only supports looking up data up to 3 weeks ago. I wrote this app to keep historical data, allowing users to look up trends further in the past
Markdown Table Generator

Markdown Table Generator

C#.Net CoreBlazorWEBASSEMBLYSassHTML
  • Markdown table generator built with blazor webassembly
  • Uses C# data structures to manage 2d array state more efficiently
DevConnector

DevConnector

React.jsHTMLCSSJavascriptNode.jsExpress.jsMongoDB
  • Social network for developers for to create resumes to showcase their experience, skills and education
  • Supports creating and editing posts, commenting on posts, and liking/unliking posts
  • Implemented RESTful backend API with Node.js and MongoDB, and frontend with React and Redux
  • Automatically fetches users repositories from Github and displays them on the profile page
storybooks

storybooks

React.jsHTMLCSSJavascriptNode.jsExpress.jsMongoDB
  • Online platform where user can share their stories and leave comments on posts
  • Used Node.js and MongoDB to build backend API to store users’ stories and comments
  • Uses passport and google authentication for user login
Tiling Puzzle solver

Tiling Puzzle solver

React.jsHTMLCSSJavascript
  • Tiling puzzle solver visualized with React
  • Supports custom input files
CPU simulator

CPU simulator

C++
  • Processor simulator that imitates the behavior of a MIPS processor in running instructions in C++
  • Implemented functionalities such as forwarding, pipelining, TLB and a caching algorithm
© 2024 ALL RIGHTS RESERVED