GitHub

Check out the code for my projects on my GitHub page.

GitHub

Interactive Web Applications

Check out some of the applications I developed in JavaScript.

Projects

Find me on LinkedIn

Visit my GitHub

Skills

HTML5

CSS3

JavaScript

Salesforce

Projects

Crypto Tracker

Written in JavaScript, this program uses the chart.js library and the Coinpaprika API to chart trends in cryptocurency prices. Different coins can be chosen/searched in the left menu, datapoints can be clicked in order to view Google's trending news for that day (for analytics purposes). This program is not meant to be used for investing; it was made to practice API calls and learn the chart.js library. No mobile support yet.

Code Breaker

Code Breaker is a JavaScript puzle game based on the 1970 board game Mastermind. Use the clues given after each turn to determine the computer's randomly generated, 4-color code.

WWII Plane Game in Phaser.js

WWII themed plane game made in the Phaser 3 JS library. Use the arrow keys to move, use the space bar to fire. Points are subtracted for allowing a plane to get away. All assets and code were created by me aside from the background and the music.

Scheduling Algorithms Simulator

Program made to demonstrate the advantages of a dynamic algorithm over the fixed priority, rate monotonic algorithm, as outlined in the paper "Scheduling Algorithms for Multipogramming in a Hard-Real-Time Environment" by Liu and Layland.

Knapsack Algorithm

This is a modified version of the knapsack problem, created for my algorithms class. The program accepts a value for k, then accepts a set of numbers. It then tests to see if a combination of the given numbers will add up to k.

Canvas Game

My first interactive game. After reading the HTML Canvas documentation, I challenged myself to create a game using it in under 24 hours. Use the mouse or the arrow keys to maneuver the ball. Dodge the blue rectangles and collect the red squares to earn points. THe game uses an HTML canvas as the game field and JavaScript for the game physics. Doesn't work on mobile devices.

Maze

The maze is created by a random depth-first search algorithm. The 'DFS' button will solve the maze with another depth-first search. When entering the site, a window will prompt you to enter the size of the maze. Anything over 100x100 will probably lag. Clicking on a block will allow you to remove/place a wall in that square.

Articles

Scheduling Algorithms: Fixed Priority Vs. Dynamic

This article goes over the difference between fixed priority and dynamic scheduling algorithms, as outlined in Liu and Layland's "scheduling Algorithms for Multi-Programming in a Hard-Real-Time Environment." Examples, definitions, and explainations provied.