Projects
This is a selection of technology / computer science related projects that I have worked on. You can also find me on GitHub.
Dictionary (ReactJS, TypeScript)
I wanted to sharpen my TypeScript skills, so I built a simple dictionary web app using the free dictionary API.
You can see the code on GitHub, and the demo here on Netlify.
Drag and Drop Sticky Notes (ReactJS)
I wanted to learn how to built an accessible user experience with drag and drop functionality, so I built a to-do app in React using the react-beautiful-dnd library.
Users can create to-do items (styled as sticky notes), and drag and drop them between columns. They can also be moved using a keyboard (tab to focus on a note, space to 'pick it up', arrow keys to move it, and space to 'drop' it).
The code is on GitHub, and the site is hosted here.
Ultrasonic Self-Driving Car
As the capstone project of my undergraduate degree, I designed and built a small prototype of a self driving car. More information is available on the academic poster that I presented during my live demo of the car at Queen’s University’s Creative Computing show.
I also presented it as a conference talk at the 2018 CSearch Conference.
Quiz Game (React, TypeScript)
A trivia game inspired by Jeopardy!, built with React, TypeScript, NextJS, and Tailwind.
The source code is available on GitHub, and the demo is here on Netlify.
Temperature Tweets (IoT Project)
This was a group project for an upper year computer science course at Queen’s. A thermosensor connected to an Arduino reads the current temperature, then the Arduino sends the temperature data to a Carriots server. Carriots then sends this data out as a tweet.
You can read more details on this slideshow, and see the Twitter account (inactive after the class was over).
The Elastic Controller (IoT Project)
My first introduction to Arduino & related technology was in a creative computing course at Queen’s. My group’s final project was a stretching synthesizer, comprised of an Arduino, rubber stretch sensors, and a program in Max MSP. You can see it in action in this video.