Projects
-
Twitch+: A Personalized Twitch Resources Recommendation Engine
Designed and built a full-stack web application for users to search twitch resources (stream/video/clip) and get recommendations
Built a web page with rich + user friendly experience using React and Ant Design
Implemented RESTful APIs using Java servlets, retrieved real Twitch resources using Twitch API and stored data in MySQL
Support login/logout and favorite collection
Explored multiple recommendation algorithms and extracted game information from Twitch resources to implement a Content-based algorithm
Deployed to AWS EC2 for more visibility
-
Staybooking: An online stay rental application based on React and Spring Boot
Designed and built a single page web application using React. Bootstrap the development with mature component library AntD
Implemented the backend services based on Spring Boot to support stay upload, delete, search and reserve functionality
Used MySQL to store user-generated data, e.g. stay information and reservation history, and utilized Google Cloud Storage to store media files for the uploaded stays
Created geo index by Elasticsearch to support geo-based stay search based on user’s selected locations
Implemented token-based server side user authentication based on the Spring Security framework
Deployed the backend service to Google App Engine for better scalability and reliability
-
Tinnews: a Tinder-like News App
Designed the Instagram Flavor News app based on Google Component Architectural MVVM Pattern
Implemented the bottom bar & page navigation using JetPack navigation component
Utilized 3rd party CardStackView(RecyclerView) to support swipe gestures for liking/disliking the news
Built the Room Database with LiveData & ViewModel to support local cache and offline model
Integrated Retrofit and LiveData to pull the latest news data from a RESTFUL endpoint (newsapi.org)
-
Starlink: React JS based Starlink Trajectory Visualization
Designed and developed a visualization dashboard using ReactJS and D3 to track satellites in real-time based on geo-location
Built location, altitude and duration based selector to refine satellite search
Animated selected satellite paths on a world map using D3 to improve the user friendliness
Deployed the dashboard to Amazon Web Service for demonstration