Ethereum DApp: Supply Chain Error Propagation (github, ipfs-interface)
- A decentralized application containing a smart contract written in Solidity in a Truffle environment, and a React.js/Web3.js front-end that allows companies to propagate error reports down their supply chain.
- Written with best practices by Consensys and avoids common attacks.
- As a proof-of-concept, I wrote a small application that allows one to upload files to IPFS through an Infura node, and put this up on Docker.
Web Application: Quizmas
- Hackathon project for FinHacks 2018
- A quiz application created with React on a Node.js/Express + MySQL server that appears on Terms & Conditions pages to help customers better understand products they wish to purchase, as well as the sales teams of companies to improve sales strategy based on metrics taken from the quiz
- A dashboard hosted on a PHP server that allows sales teams to deploy new quizzes and receive insights on data retrieved from quizzes
Mesh Networks: MaESHtro (cannot release publicly)
- A solution that combines mesh networks, software defined networking, and routing to boost Internet connectivity in areas using existing IoT infrastructure.
Processor Design: RISC-style Processor (cannot release publicly)
- Final project for Computer Organization and Design class
- An implementation of a superscalar multi-pipelined processor in Verilog that is fully bypassed with branch prediction and logic that eliminates superscalar and structural hazards.
Operating System: PennOS (cannot release publicly)
- Final project for Operating Systems class
- An implementation of an operating system in C, with process life-cycles, priority scheduling, signaling, and a shell that separates the kernel and user-level.
Web Application: Trade-o-bundle (github, devpost)
- Hackathon project for PennApps
- A set of responsive web pages for suppliers, distributors and small mom-n-pop shops have been set up to automate the entire flow of information as export/import orders are processed and fulfilled.
- An intuitive "pool purchasing" option allows smaller retail stores to directly place order with international suppliers, totally bypassing the markups of the local distributors.
- Finally, analytics on order data provide insights into the purchasing behavior of the end-customers. This allowed us to anticipate demand and pre-stock international ports.
Ruby on Rails Website: Partner Basic (github)
- An app created with the Ruby on Rails framework and a PostgreSQL database, which links employers with student groups.
- Uses the gems: Better Errors, RSpec, HAML, Bcrypt
JavaScript Tool: Network Visualization Tool (github)
- A visualization tool developed for a professor using sigma.js that takes in data on switches and links to monitor data centre networks in high resolution.
Python Tool: Thesaurus.com Crawler (github)
- A web crawler that uses the scrapy module to grab synonyms from thesaurus.com.
Java Tools: Graphing-based Data Analytic Tools (cycles, exclusion)
- A tool that detects undesirable entailment cycles in paraphrase databases by creating a digraph-based representation of the data. Implements Tarjan's algorithm for cycle detection.
- A tool that can make new inferences on exclusion relations in paraphrase databases by creating a digraph-based representation of the data.
Full Stack Solution: Kare Mom App (cannot release publicly)
- A full stack solution that allows mothers to track their milk production and automates the milk management system used by nurses at a NICU.
- The client facing hybrid app uses Angular and Ionic and includes a barcode scanner, Twilio video chat integration, and APN/GCM push services. In the background, crash analytics are collected through Crashlytics.
- I also implemented a REST API for the app using Node.js to write a server deployed on an Amazon AWS instance, with a PostgreSQL database that conforms to FHIR standards.
Android Application: OktaMobile Fingerprint Auth (cannot release publicly)
- Used the Android Fingerprint API to implement fingerprint authentication in the OktaMobile app.
- Enhanced the login flow user experience by adding UI features like a customizable keypad and animations in XML and Java.
- Created unit tests using the Mockito framework.
Artificial Intelligence: Q-learning in Java + Flappy Bird (github)
- An implementation of Q-learning in Java that takes in (x, y)-coordinates of the pipes and flappy bird and, after many attempts, learns when to make the bird flap to proceed through the level.
Artificial Intelligence: Q-learning in Rust + dungeon crawler (github)
- An implementation of Q-learning in Rust that takes in a static dungeon and, after many attempts, learns how to traverse through the dungeon's traps and defeat the final boss!
Java Program: Chess Implementation with GUI (cannot release publicly)
- A school project that helped me learn concepts like data structures, enumerations, Java Swing.
- An implementation of chess where two players may play each other in a GUI
Go Proxy: Simple HTTP Proxy (cannot release publicly)
- Implemented a simple web proxy in Go that passes requests between requests and data between multiple web clients and web servers.
- Supports concurrent connections, and optimized with DNS prefetching
- Compatible with Firefox