This is an attempt to build one of those 'terminal simulators' you see on so many portfolio pages these days. Initially I thought of just jumping into this with React but I decided to go with vanilla JS to really dig in and learn some stuff as I built the tool. One of the functions I built into the terminal needed me to traverse the DOM element by element so I wrote a recursive function to do that which was super satisfying. I still love React for what it does but this project helped me understand how to do a lot of that dynamic work myself.
I also built an email server (Node + Express with Nodemailer) to handle emails through the terminal. Go in there and type 'contact [your email address] [the message you want to send me]' (the brackets are NOT needed!) Also, go in and type in 'style change' for some light-hearted fun.
I used Gulp to automate a few things in my workflow, like compiling all the JS files into a bundle script and SCSS to CSS. That was actually super fun and I finally understand what Gulp is!
Check it out here.