Skip to content
An iPod Classic built using React Hooks, TypeScript, & GraphQL
TypeScript JavaScript HTML
Branch: master
Clone or download


by Tanner Villarete | LinkedIn | Website

As we head into the next decade, here's a throwback to remind ourselves how far we've come. An iPod Classic build using React Hooks (no Redux this time), TypeScript, and GraphQL.

I built this thing to be very extensible – to the point where it can even run games (like brick!). In the future I might consider adding a few more little apps and easter eggs (theming?).



Here's a breakdown of the Full Stack:


  • JS: TypeScript, React (Hooks, Context)
  • Styles: Styled Components, Framer Motion (for some of the animations)
  • Textures/Icons: All SVGs created by me in Figma
  • API: GraphQL


  • API: Laravel (PHP) with GraphQL middleware
  • DB: MySQL

Running Locally

In the project directory, you can run:

yarn start

Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

You can’t perform that action at this time.