Set Up Your Environment
Get your Mac or Windows PC ready to build and ship real apps — install the essential tools, create your first project from a template, and run it locally with an AI coding agent.
Before you can build anything, you need a few tools on your computer. You won't memorize any of this — you're setting up a workshop once, then the AI agent does the heavy lifting. Take it one step at a time.
The commands differ on Mac vs Windows PC, so this lesson has a switch: pick your OS and the steps update to match.
Follow the steps in order — each tool depends on the ones before it. Everything is free. Set aside 1.5–2 hours, most of it downloads, sign-ups, and waiting rather than typing. If a command fails, jump to Troubleshooting for your OS — most issues are a few known things. Or paste the command and error into an LLM like Claude or ChatGPT and ask what went wrong; that's often the fastest way to unstick yourself.
We'll build around the Mark-Life/netxjs-monorepo template — a ready-to-go Next.js + Bun + Turborepo + Biome + shadcn/ui starter. Rather than wiring up a project from scratch, you'll create your own copy in one command (or prompt).
Prefer to let the agent do it? Jump straight to Step 8 — Install a coding agent, install one, then hand it this lesson: paste the link to this page with a prompt like "Follow this lesson and set up my computer for coding for this course." The agent can install and configure most tools itself — it'll usually only need you to sign up for a GitHub account and run the
ghbrowser login (Step 3), since those need your real identity. Once you've authenticated, let the agent handle the rest and use the steps below to follow along or troubleshoot.
What you'll end up with
A complete, modern web-dev setup: a terminal, Git, a GitHub account, the VS Code editor, the Bun runtime, Node.js, and an AI coding agent. The tools have different names on each OS, but the end result is identical — a real app running on your own machine. The steps below list the exact tool and installer for your system.
Make it yours: settings, configs & quality of life
Everything you just installed is configurable, and small tweaks add up to a much smoother day. You don't have to learn it up front — the most useful thing to know is that your coding agent can set all of this up for you. Just tell it what annoys you.
Most people don't even know what's possible, and that's fine. You don't need a list of settings — you need to notice friction and describe it. Next time something makes you sigh ("why do I keep typing this long command", "why does this text run off the screen"), turn it into a prompt:
- "How can we make my terminal nicer to use? Set up some helpful aliases for me."
- "How can we improve my VS Code experience with settings? Turn on word wrap and anything else worth having."
- "Every time I do X it's annoying — can we configure something to fix that?"
The agent knows where these settings live, what they do, and how to change them safely — so you get the benefit without the research.
A couple of concrete examples
Shell aliases are short nicknames for longer commands. Define them once and they work in
every terminal. For example, mapping cl to clear (which wipes the terminal screen) saves
a few keystrokes every time:
# In your shell config (~/.zshrc on Mac, your $PROFILE on Windows)
alias cl="clear"
alias cc="claude --dangerously-skip-permissions"That second one is worth explaining. Normally your agent asks for approval before every edit
or command (you saw this in Step 8). The --dangerously-skip-permissions flag — often called
YOLO mode — turns that off: the agent just does the work without stopping to ask. The
alias cc launches it that way in two keystrokes instead of typing claude plus the flag.
The trade-off: with permissions skipped, the agent can run any command, including destructive ones — in theory it could delete files it shouldn't. So this is a personal call, and the responsibility is yours. I run agents only this way — approving every action drove me up the wall. But make the choice knowingly: keep your code in Git (so anything can be undone), and maybe sit with the default approval flow for a while first. If in doubt, leave it off — you can always add the alias later.
Do the same for whatever you use most — Git commands, project shortcuts, your dev server. And
again, you don't have to write any of this by hand: tell the agent "add an alias cc that
runs Claude with permissions skipped" and it'll edit the right file for you.
The takeaway: treat your tools as yours. They bend to fit how you like to work, and your agent is the fastest way to bend them.
You did it
You now have a working development environment and a real app running on your own machine — created from the Mark-Life/netxjs-monorepo template in a single command. You didn't need to know what any of the code means yet — that's the point. From here, you'll learn how the pieces fit together so you can direct the agent with confidence.
What's next
Next we'll open up that project and make sense of it: how a Next.js app is organized, how pages
and components work, and how to make it look the way you want. Once bun dev shows the app at
https://web.localhost, you're ready to build. 🎉