Matt Goldsmith

employee tracker screenshot

Employee Tracker

See the code | See a demo video

A Node.js based back end application that performs CRUD operations on a hypothetical MySQL employee database.

password generator snip

Password Generator

See the code | See the app

A secure password generator written with JavaScript, HTML, and CSS. This application provides a user with a unique password once a series of prompts has been answered.

javascript quiz snip

JavaScript Quiz

See the code | See the app

This application is a short quiz on a handful of JavaScript topics. The application's displayed content updates in response to user feedback via DOM manipulation through a custom Web API.

work day scheduler snip

Work Day Scheduler

See the code | See the app

Work Day Scheduler is an app that allows the user to type and save notes to help stay organized throughout the work day. The app uses local storage to retain a user's notes so that they aren't lost on refresh and also leverages third party APIs for additional functionality.

weather dashboard snip

Weather Dashboard

See the code | See the app

The Weather Dashboard allows a user to see a five day weather summary for a given city. The app uses the OpenWeather third party API for its weather data and uses JavaScript to render the data for the user.

NoSQL social network back end snip

NoSQL Social Network Back End

See the code | See a demo video

This NoSQL Social Network API acts as the back end for a fictional social network used by a few of the characters from the Jojo's Bizarre Adventure series. It contains routes for performing CRUD operations on a NoSQL database, allowing for viewing, adding, modifying, or deleting users, comments, or posts. Yareyareda ze..

team profile generator snip

Team Profile Generator

See the code | See a demo video

My Team Profile Generator is a Node.js CLI application that allows a user to generate a homepage for a team of leaders, engineers, and interns without writing any code. The user replies to a few simple questions for each member and, once complete, the homepage is created using the information provided by the user. The application uses object-oriented programming principles to construct objects representing each team member from the user's responses and applies those objects to an HTML skeleton to create each team's unique homepage.

note taker snip

README Generator

See the code | See a demo video

README Generator is a Node.js application that generates a markdown file populated with static text and inputs provided by a user. The user inputs are responses to questions created using the Inquirer package.

e-commerce back end snip

E-Commerce Back End

See the code | See a demo video

This application is an Express.js back end for a fictional e-commerce site configured to use Sequelize, a JavaScript object-relational mapper that uses object-oriented programming, to make the relationships between data across multiple tables more easily understood and easier to leverage.

Coming Soon

work in progress snip

Overachiever

A spiffy idea I had to get more practice building MERN stack applications.

Modern games nearly always include Achievements - essentially virtual merit badges and sometimes paired with a score of its own - that indicate that a player has met certain objectives or cleared specific challenges. Sometimes these challenges are straightforward and completed just by running through a game as it's intended to be played - "Cleared the first level" or "Defeated the final boss." Other times these are more obscure or obscenely difficult and not required to actually complete the game - "Got over it 50 times" from Bennet Foddy's Getting Over It or "Insane in the Membrane" from World of Warcraft, for instance.

Achievement systems provide a way for players to get extra mileage out of their games - whether it's through getting more hours of entertainment for the same price or a sense of pride from overcoming something incredibly challenging or simply rubbing a friend's nose in the fact that you got one over them in some good faith, competitive ribbing.

Overachiever will allow a user to create their own Achievements - either because the game they're playing predates modern Achievement systems or because they simply want to try some new challenge to experience a game in a new way. Users will be able to create Achievements for any game and share those Achievements with other users.

work in progress snip

Freewheel

I'm a minimalistic flywheel bike user that doesn't like the idea of having to spend around $500 a year solely to track my rides and the stats tied to each of them (since I never could convince my introvert self to get into classes). That said, I do like the idea of tracking my rides and the stats tied to them with something more sophisticated than an Excel spredsheet.

Freewheel will be a full-stack application with an interactive, functional front end that connects to a SQL DB that will give me a frugal means of satisfying the aforementioned desire. The metrics that it will track will be much simpler than some other options on the market, but simple data beats no data, especially at the cost of free.

And yes, the semi-pun is intentional.