Coding for designers

Something not making sense? For help or questions, ping @mikestilling in Slack.

Course / Lesson 1 / Get setup
30m

Get setup to build stuff with code and AI tools

Making things with AI is easier said than done. Engineers building these new tools assume a foundational familiarity that most folks don't have. This course will help bridge that gap.

Course overview

In this mini course we're going to cover a whole lot at a very high level. The goal is not to come out of it feeling like a code wizard. Instead, my hope is that you feel broadly more familiar with how this dumpster fire of a process works. This should put you in a great place to start leveraging AI and "100x" your coding skillset.

Here's how things are structured: this course is made of several lessons (e.g. "Get setup," "Learn the tools"), and each lesson is broken into steps (the headings you see in the sidebar). At a glance:

  • Lessons 1-3: No AI. Get acquainted with the workflow. The tools and the code.
  • Lesson 4: Animation and interactivity. Plus, some AI to implement a WebGL effect.
  • Lesson 5: Full send. All AI, all the time. Prompting, pulling in assets, and vibing.

In 2026, we don't need to be the best at anything. As long as we know enough, AI can pick up the slack. Let's go!

The foundations Lessons 1-3
Get setup
Accounts, tools, workflows
Learn the tools
Code, GitHub, deployment
Design in code
Basics of HTML and CSS
Advanced concepts + AI Lessons 4-5
Make it interactive
Animations and WebGL
Do more with AI
Prompting and vibing

Workflow overview

Code-based projects utilizing AI usually start by creating or opening a project in a code editor that supports AI tools, like Cursor or Claude Code.

From there, code edits are made until the output is adequate. Once it is, the code is essentially uploaded to GitHub. At this point, deployment tools (like Netlify or Vercel) can grab the code from GitHub, render it, and make it publicly available on a domain.

For a simplified visual, take a peek at the diagram below:

Where you work
VS Code
Fancy code storage
Deploy and share

While that may sound simple enough, the reality is that getting to this point requires a handful of accounts, installations, and understanding.

Fear not, this document is going to guide you through every step of this overly complex process. By the end, you'll know how it all works together and start being able to command it. Below we'll walk through:

  1. What you need to create accounts for and install
  2. How to set up a "project" in this workflow
  3. What Git and GitHub are and how to use them
  4. What Netlify/Vercel do and how to use them
1
Accounts + installs
Sign up and set up your dev environment
2
Set up a project
Create and configure a codebase
3
Git & GitHub
Version control and syncing code
4
Deploy & share
Launch a site with Netlify or Vercel

Create your accounts

To get started, we're going to do the most boring thing first: create some accounts. You'll need three: GitHub, Cursor, and either Netlify or Vercel (no need to create both).

Mike's hot take 🌶️: Creating personal accounts rather than using accounts through Stripe makes it easier to get started by avoiding the complex processes and quirks of SaaS provisioned for enterprises. But then, don't put confidential data into prototypes!

When choosing between Netlify or Vercel, I prefer Netlify. Mainly, because it's less opinionated. Vercel promotes a specific, complex stack code-wise.

Create a GitHub account

As mentioned earlier, GitHub is where we'll store and sync our code in the cloud via Git. I'll show how in the next lesson. It primarily makes iterating and collaborating on code-based projects easier. Click the button below to create your GitHub account. Once you have an account, move to the next step.

Pro-tip: If it's not already taken, make your GitHub handle your name—like "mikestilling". It's easier to remember and looks cooler when sharing (more so than something random).

Create a Cursor account

Claude Code is cool, but it's a complex tool to start your journey with. To begin, we'll be using Cursor as our AI-assisted code editor of choice.

To prevent having to pay for Cursor, you can use your Stripe email to create this account. If you're in the design org, you should already have access to Cursor. In which case, you should be able to use the Continue with Google option.

While we're here, we might as well download Cursor, too. You can use Managed Software Center for this. Or, if on a personal machine, get it by clicking below.

Create a Netlify or Vercel account

Netlify and Vercel will turn our code in GitHub into a real, live website. You've already heard my 2¢ on which to use, but it's up to you! Both do the same thing.

Make your life easier by creating an account via the Continue with GitHub option. Or, at least, use the same email you used for GitHub.


Install the tools

Now that we have the accounts we need, let's install the tools. We need four things: Homebrew, NodeJS, GitHub Desktop, and Cursor.

We'll do this in two parts:

  1. Install command line tools via Apple's Terminal app
  2. Download the desktop apps we need

If you haven't used Apple's Terminal app before, this first part is going to seem funky. We'll keep explanations high-level here since this is a one-time setup.

Install HomeBrew

Homebrew is a package manager for macOS -- it makes it easier to install other stuff. To begin, open up the Terminal app on your computer.

Check if Homebrew is already installed by pasting this into Terminal and hitting enter:

brew -v

If Terminal replies with a version number, you're good, skip ahead. If not, install Homebrew following these instructions or paste this into Terminal and hit enter:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Follow any prompts that Homebrew surfaces within Terminal. After it's complete, run brew -v again to confirm the installation was successful. Terminal should now respond with a version number.

Every step after this builds on Homebrew, so it's crucial we get this right. If you run into trouble, reach out to @mikestilling in Slack.

Install NodeJS and NPM

NodeJS lets us create servers, web apps, and command line tools with JavaScript. NPM lets us pull in other people's code from across the internet to use in our projects.

Check if NodeJS is already installed by pasting this into Terminal and hitting enter:

node -v

If Terminal doesn't return a version number, install NodeJS via Homebrew:

brew install node

Follow the prompts in Terminal, then run node -v again to confirm it worked.

While we're here, we'll also install nodenv. Different projects sometimes need different versions of Node. Nodenv lets you switch between them and keeps each project running on the right one.

Honestly, it doesn't fully make sense to me either, but we won't need to use it that often, so that's perfectly fine 😅. To install it, paste this into Terminal and tap enter:

brew install nodenv

For now, this is all we'll need to do in Terminal 🙂.

Install GitHub Desktop

GitHub Desktop makes it way easier to interface with Git and saves us from more Terminal usage. Download it by clicking the button below.

After it downloads, you can install it like you'd install any other app on your Mac. Once installed, open it up and sign in to your GitHub account from within the app.

Install Cursor if you haven't already

If you didn't install Cursor earlier in this process, do so now. If on a Stripe machine, you can use Managed Software Center for this. Or, if on a personal machine, get it by clicking the button below.


Next step: Lesson 2 – Learn the tools

This first bit is a boring whopper. Congrats on making it through. Thankfully, we won't have to do this ever again... Or, at least until we get a new computer.

Trust me, the next steps will be much more exciting as we start diving into the tools and actually making things. Without further ado, click on the next lesson below to continue this journey.

Next lesson
Learn how to use code-based tools
This course was designed for desktop.
Please view on a larger screen for the best experience.