Created a React and Node.js web application to help Villanova students find an ideal roommate. Our matching algorithm API uses a user's profile/preferences to generate a list of potential roommates. This list is then displayed through an intuitive UI that allows the user to view the public profile of their possible roommates and either confirm or decline. If two users both agree to match, they are able to converse with one another through the Roomie Radar's realtime chat feature. Additionally, it implements strong authentication and authorization security measures using Auth0.
Developed a machine-learning model using Python to classify URLs as malicious or benign. I extracted 29 features from each URL and analyzed the performance of different machine-learning model. I then deployed final model on a React front-end which allows a user to input a URL for classification.
Researched the current software testing practices used in VR projects, specially in relation to unit testing by conducting a manual analysis of Unity projects to identify recurring patterns and areas of limitations.
For this project, I first used the JavaCC tool to generate a pure parser for my project language. I then modified the parser so that it would return an Abstract Syntax Tree (AST) after a successful parse. This AST would then be passed to my interpreter, implemented using Java, for evaluation.
Created an online store using HTML, CSS, and JavaScript. Used SQL to create a database to manage customer and inventory data. Connected to SQL database using Node.js. Worked in a team to establish business rules and create ER Diagram and Schema.
A collection of Jupyter Notebook projects completed in Python.
A simple file system implemented using C. It seeks to highlight the primary data structures and access structures used by a basic file system. This file system is a disk-based file system and uses a disk image file to simulate how the file system would interact with true hardware.
Solutions to weekly sets of coding problems in which we endeavor to further our understanding of programming languages, algorithms, and data structures.