Project Timeline Estimation
Monte Carlo simulation to help you estimate how long your project will take to complete.
Built with: Vite, React, TypeScript, Radix, recharts
tjhawkins1992@gmail.com
Monte Carlo simulation to help you estimate how long your project will take to complete.
Built with: Vite, React, TypeScript, Radix, recharts
Demo of global theming for light and dark themes through UI controls or system preferences.
Built with: Vite, React, JavaScript
npm package and learning tool complete with a playground of interactive examples.
Built with: Vanilla JavaScript, React, Storybook
Example demos for key features in Webpack, including various loaders and plugins.
Built with: Webpack 4, Vanilla JavaScript, React
Example demos to illustrate different key pieces of React's functionality, including some of its newest features.
Built with: React, React Router
Demo app for better understanding the Node.js event loop.
Built with: Node.js, Express, Vanilla JavaScript, Heroku
Examples and guidance for building accessible tables and grids in React.
Built with: React, Storybook
Similarity search using the Pinecone SDK to find articles that are similar to ones you've read in the past.
Built with: Python, Flask, Pinecone SDK
Workshop on common accessibility issues, how to identify them, and how to correct them.
Built with: React, React Router
Examples and guidance for building accessible nested interactive content in React.
Built with: React
Examples and guidance for building accessible card components in React.
Built with: React
App that allows users to enter their phone number to receive an SMS text with a fun fact.
Built with: Node.js, Express, Infobip API
Simple REST API. Tests written with Insomnia and Inso. Run in a CI pipeline using GitHub Actions.
Built with: Node.js, Express, Insomnia, Inso CLI, GitHub Actions
Demo of some concepts from Clean Code, Chapter 8. Thin layers of abstraction and API wrappers.
Built with: React, Moment.js, Day.js, date-fns
Similarity search using the Pinecone SDK to find articles that contain the same or similar content as what's entered by the user.
Built with: Python, Flask, Pinecone SDK
Similarity search using the Pinecone SDK to find similar questions from a dataset.
Built with: Python, Flask, Pinecone SDK
Reddit clone app. View subreadits, posts, comments, and users.
Built with: React, React Router, Apollo Client, Slash GraphQL
Gotta catch 'em all. Mark which ones you've captured. Filter your Pokémon by type or captured status.
Built with: React, Material UI, Slash GraphQL
Tinder clone app, but for puppies. Find the perfect friend for your new puppy.
Built with: React, Apollo Client, Slash GraphQL
Where do you keep your dad jokes? In a "dadabase" of course. Rate my jokes.
Built with: Vanilla JavaScript, Heroku, GraphQL, JSON Server
Demo app exploring various PDF export solutions.
Built with: Vanilla JavaScript, DocRaptor, pdfmake, jsPDF
Simple demo app resulting from my single-spa tutorial.
Built with: single-spa, React, React Router, Heroku, AWS S3
Uses seven new JavaScript features from ES2020.
Built with: Vanilla JavaScript, Heroku
View some terrible puns with this app. Experimental test strategy using DOM Testing Library.
Built with: Vanilla JavaScript, DOM Testing Library
Full stack voting app complete with authentication and CRUD API.
Built with: MongoDB, Express, AngularJS, Node.js, C3.js
Full stack app for leaderboard rankings for games like ping pong.
Built with: MongoDB, Express, Node.js, Passport, jQuery
HTML5 Frogger-like game.
Built with: MongoDB, Express, AngularJS, Node.js, Canvas element, requestAnimationFrame
App similar to Yelp to help you find great places for entertainment in any geographic location.
Built with: MongoDB, Express, AngularJS, Node.js, Yelp API
Knock-off Breakout game.
Built with: MongoDB, Express, AngularJS, Node.js, Canvas element, requestAnimationFrame
WebRTC app that creates a simple chatroom. Complete with a Giphy integration.
Built with: MongoDB, Express, AngularJS, Node.js, Socket.io, Giphy API
Everyone's favorite Flappy Bird knock-off, complete with a theme song.
Built with: MongoDB, Express, AngularJS, Node.js, requestAnimationFrame
Multiplayer game (WebRTC) similar to agar.io
Built with: MongoDB, Express, AngularJS, Node.js, Socket.io, Canvas element, requestAnimationFrame
Parody app for helping you communicate with your boss.
Built with: Express, Node.js, jQuery
HTML5 game in which you must dodge all the incoming obstacles to stay alive.
Built with: Canvas element, requestAnimationFrame, Vanilla JavaScript
HTML5 game in which you must jump on top of incoming platforms to make the tallest stack.
Built with: jQuery, CSS3 animations
Walking skeleton of a React+Redux app built using create-react-app.
Built with: React, Redux
Post a comment and your name to contribute to the discussion.
Built with: MongoDB, Express, Node.js, jQuery
App that allows you to write marked up content and see the output side by side.
Built with: React, Marked library
Sortable/filterable table pulling in data from a webservice.
Built with: React, FreeCodeCamp API
App for storing your favorite recipes. CRUD API.
Built with: React, React Router, Local Storage
Desktop camera app that lets you take a picture and download it using the HTML5 getUserMedia API. (Note: HTTPS is required.)
Built with: jQuery, getUserMedia API
Simple demo for reading JSON from a file via an AJAX request.
Built with: XMLHttpRequest, JSON
Simple demo for text suggestions, reading JSON from a file, and using a weather API service.
Built with: Express, Node.js, Weather API
Find a good movie to watch with this simple API demo with a sortable/filterable table.
Built with: jQuery, Movie Database API
Search for top Wikipedia articles or find a random article.
Built with: jQuery, Wikipedia API, CSS3 Keyframe Animation
Upload your favorite songs and then vote on them.
Built with: MongoDB, Express, AngularJS, Node.js
Uses your location and a weather API to find the current weather for your location.
Built with: Geolocation, Weather API
Simple app that uses the TwitchTV API to show which of your favorite streamers are online and which are offline.
Built with: jQuery, TwitchTV API
Gotta catch 'em all. Keep track of your Pokemon here by adding an image and a name.
Built with: MongoDB, Express, AngularJS, Node.js, C3.js
News feed delivered to you via the FreeCodeCamp API.
Built with: jQuery, FreeCodeCamp API
Create a user, log workouts, and view past workouts with this microservice and GUI.
Built with: MongoDB, Express, Node.js
Provide a date in any format and get a UNIX timestamp and normalized date back.
Built with: Express, Node.js
Shows some basic request header data like your IP address, language, and user agent.
Built with: Express, Node.js
Similar to bit.ly or tinyURL. Enter a URL and get back a shortened URL which points to your original URL.
Built with: MongoDB, Express, Node.js
Search API built off of Imgur's search API.
Built with: MongoDB, Express, Node.js, Imgur API
Turns your boring computer keyboard into an exciting piano keyboard.
Built with: jQuery, HTML5 audio
Showcases a simple animation using an HTML5 canvas. Keep watching until all the whitepace is covered.
Built with: Vanilla JavaScript, Canvas element
Make all the dots blue to win. It's harder than it looks.
Built with: Vanilla JavaScript, Canvas element
Qualtrics survey feeding off the hype around the latest Jurassic Park movie.
Built with: HTML, CSS
Psychology experiment to compare task speed in matching objects with various colors and letters.
Built with: jQuery, jQueryUI drag and drop
Test your memory and click the colors in the right order.
Built with: jQuery, HTML5 audio
Clear the bubbles of the correct color from the screen. How many rounds can you last?
Built with: jQuery, jQuery animations, Soundcloud
I’m a software engineer, writer, speaker, leader, and accessibility advocate with 12+ years of experience. My background is mostly in developer productivity and developer experience, focusing on design systems, accessibility, developer tooling, automated testing, and CI/CD. I enjoy working on the frontend using React, JavaScript, HTML, and CSS.
I make the people, teams, and companies I work with better. I’ve contributed to interviewing working groups, company engineering blogs, frontend guilds, and have led hundreds of engineers through onboarding trainings. I love teaching, reading, and writing. My 130+ blog posts have been viewed over 2 million times, I’ve spoken at 15+ tech conferences, and I’ve been interviewed as a guest on several podcasts.
In my free time you'll find me playing music with friends (drums), reading, playing games, hiking, biking, and spending time with my wife and kids.
Webflow
October 2024 - June 2026
Webflow
June 2023 - October 2024
Adobe
February 2021 - June 2023
Workfront
March 2020 - February 2021
Instructure
February 2020 - March 2020
Instructure
February 2019 - February 2020
Younique
October 2018 - February 2019
Younique
September 2017 - October 2018
Qualtrics
October 2015 - September 2017
Qualtrics
June 2015 - October 2015
Qualtrics
April 2014 - June 2015