Vibe Coding for People Who've Never Coded
6 modules · Free forever · Build a real Kanban board app from scratch
Jump to module
Module 1
What Is Vibe Coding?
Quick Summary
- The internet is made of pages built with code (HTML, CSS, JavaScript)
- AI can write that code for you when you describe what you want
- Vibe coding = describe → AI builds → you review → repeat
- You'll build a real Kanban board app by the end of this course
Already know this? Skip to Module 2 →
What is the internet?
Think of the internet like a giant library. Every website is a book in that library. When you type a website address (like google.com), you're asking the library to find that book and show it to you.
The "book" lives on a computer somewhere in the world — called a server — that's always switched on and connected to the internet. When you visit a website, your computer fetches that book from the server and displays it on your screen.
What makes a website work?
Every website is built from 3 things. You don't need to learn them — just know they exist:
- HTML — the words and pictures (like the pages of a book)
- CSS — how it looks (the fonts, colours, spacing)
- JavaScript — things that move or change (like a button you click)
In the old days you had to write all of this by hand. Learning to do that well took years. That's what people mean when they say "I know how to code."
What is AI?
AI is a computer program that's very good at predicting what comes next — like autocomplete on your phone, but a million times smarter and better trained.
When you type a sentence describing what you want, the AI figures out what code would match your description and writes it. You describe, it builds.
So what is vibe coding?
Vibe coding = using AI to write the code for you.
You describe what you want in plain English. The AI writes the code. You open it in your browser and check it looks right. If something's off, you describe the fix. The AI fixes it. Repeat until it's done.
You never write a single line of code yourself.
What you'll build in this course
A Kanban board — a task management tool with three columns:
- 📋 To Do — tasks you haven't started yet
- 🔄 In Progress — tasks you're working on now
- ✅ Done — tasks you've finished
You'll be able to add tasks, move them between columns, and delete them. The data will save to a real database. The app will be live on the internet, at a real URL, that anyone can visit.
Frequently Asked Questions
Do I need to know anything about computers to start?
Is vibe coding "real" coding?
Which AI should I use?
How long will this course take?
What if the AI makes a mistake?
Module 2
Set Up Your Tools
Quick Summary
- You need 4 free tools: Cursor (editor), GitHub (code storage), Supabase (database), Vercel (hosting)
- No credit card needed for any of them
- Each section below has a video walkthrough
- Setup takes about 20–30 minutes total
Already know this? Skip to Module 3 →
Tool 1
Cursor, Your AI-Powered Editor
Cursor is where you'll spend most of your time. Think of it like Microsoft Word, but instead of writing documents, you're describing your app — and an AI assistant inside it does the actual writing. It's free to start.
Steps to set up Cursor:
- 1Go to cursor.com
- 2Click the big Download button
- 3Open the downloaded file and install it (same as installing any app)
- 4When it opens, click Sign Up and create a free account
- 5It may ask to import VS Code settings — you can skip this
- 6You're in. File explorer on the left, big empty area in the middle.
Video Walkthrough
Frequently Asked Questions
Is Cursor really free?
I see it says 'VS Code' somewhere. What's that?
I'm on Windows, will it work?
Tool 2
GitHub, Where Your Code Lives
GitHub is like Google Drive, but for code. Every time you save your work, it goes to GitHub. Later, Vercel reads your code from GitHub and puts your app live. It's free.
Steps to set up GitHub:
- 1Go to github.com
- 2Click Sign up in the top right
- 3Enter your email, create a password, choose a username
- 4Verify your email (check your inbox)
- 5When it asks about your plan, choose Free
- 6Click the + icon → New repository
- 7Name it
kanban-app→ scroll down → click Create repository - 8Keep this page open — you'll need the URL in Module 6
Video Walkthrough
Frequently Asked Questions
What's a repository?
Do I need to understand Git commands?
Is GitHub free?
Tool 3
Supabase, Your App's Database
Supabase is your app's memory. When someone adds a task to your Kanban board, Supabase saves it. When they come back, Supabase shows it again. Think of it like a Google Sheet that your app can read and write to automatically.
Steps to set up Supabase:
- 1Go to supabase.com
- 2Click Start your project
- 3Sign up with GitHub (easiest) or your email
- 4Click New project
- 5Name it
kanban-app - 6Choose a strong database password (save it somewhere)
- 7Pick the region closest to you
- 8Click Create new project and wait ~2 minutes
- 9Go to Project Settings → API
- 10Copy both the Project URL and the anon / public key — save them in a text file for Module 5
Video Walkthrough
Frequently Asked Questions
What's a database?
What's the anon key?
Is Supabase free?
Tool 4
Vercel, Where Your App Goes Live
Vercel takes your code from GitHub and puts it on the internet. Every time you make a change and push to GitHub, Vercel updates your live app within 30 seconds. Your app gets a free URL like kanban-app.vercel.app.
Steps to set up Vercel:
- 1Go to vercel.com
- 2Click Sign Up
- 3Choose Continue with GitHub — this links Vercel to your GitHub account
- 4You'll land on your Vercel dashboard — it's empty for now. That's fine.
Video Walkthrough
Frequently Asked Questions
Why does Vercel need my GitHub?
Is Vercel free?
Can I use a custom domain?
Module 3
How to Talk to AI
Quick Summary
- A "prompt" is just what you type to the AI — like a text message
- Specific, detailed prompts get much better results than vague ones
- You have choices: Claude, GPT-4o, Gemini — all work similarly
- When something goes wrong, describe what you see and what you want instead
Already know this? Skip to Module 4 →
Pick your AI
All of these can write code. Use whatever you prefer:
| AI | Where to use it | Best for |
|---|---|---|
| Claude (Anthropic) | Cursor (built in) or claude.ai | Clean code, long context |
| GPT-4o (OpenAI) | Cursor (built in) or chatgpt.com | Very widely used, fast |
| Gemini (Google) | Cursor (built in) or gemini.google.com | Good for Google tools |
Pick your editor
| Tool | How it works | Best for |
|---|---|---|
| Cursor | Download app, AI inside | Most control |
| Bolt.new | Browser only, instant start | No downloads |
| Lovable | Browser, visual + AI | Beginners who want speed |
| Windsurf | Download app, similar to Cursor | Alternative to Cursor |
What is a prompt?
A prompt is just what you type to the AI — like a text message to a very smart assistant. The clearer you are, the better the result.
❌ Bad prompt:
Example — too vague
Make me an app
✅ Good prompt:
Example — specific and detailed
Create a Kanban board web app using HTML, CSS, and JavaScript. It should have three columns: "To Do", "In Progress", and "Done". Each column should have a button to add a new task card. Task cards should have a title and a right-arrow button that moves them to the next column. Cards in the "Done" column should have a delete button instead. The design should be clean and minimal with a white background and subtle card shadows.
The prompt formula
Template
Create [what you want]. It should have [specific features]. When someone [does action], it should [result]. The design should be [style description]. Use [technology or colours if you have a preference].
The "fix it" formula
When something looks wrong, describe what you see:
Fix-it template
The "Move Right" button on cards in the "In Progress" column is not visible. Please make it visible and style it as a small blue button.
Starter prompt for your Kanban board
Press Cmd+L (Mac) or Ctrl+L (Windows) in Cursor to open the AI chat, then paste this:
Your first prompt — copy and paste this
Create a Kanban board web app as a single HTML file called index.html. The board should have three columns: "To Do", "In Progress", and "Done". Each column should: - Have a bold heading at the top - Show a list of task cards - Have an "Add Task" button at the bottom that shows an input for typing a task name Each task card should: - Show the task title - Have a right-arrow (→) button to move it to the next column - Have a delete (×) button to remove it from the board The "Done" column should not have a right-arrow button. Style it with: - Light grey (#f4f4f5) page background - White column backgrounds with rounded corners - Subtle drop shadows on cards - Blue "Add Task" buttons - Clean font (use system-ui or Inter from Google Fonts) Store the tasks in the browser's localStorage so they persist after page refresh.
Frequently Asked Questions
Which AI gives better code — Claude or GPT-4o?
What if the AI gives me something completely different from what I asked?
Can I just paste the prompts from this course?
The AI keeps asking me questions instead of writing code.
How many times can I ask the AI to fix things?
Module 4
Build Your Kanban Board
Quick Summary
- Open Cursor, create a new project folder called
kanban-app - Open the AI chat with
Cmd+L/Ctrl+L - Paste the starter prompt — the AI writes all the code
- Preview in your browser, then make changes by describing them
Already know this? Skip to Module 5 →
Step 1: Open Cursor and create your project
- 1Open Cursor on your computer
- 2File in the top menu → Open Folder
- 3Navigate to your Desktop → New Folder → name it
kanban-app→ click Open - 4You'll see an empty file list on the left. That's your project. It's blank for now.
Step 2: Open the AI chat
Press Cmd+L (Mac) or Ctrl+L (Windows). A chat panel opens on the right. Everything you type here goes to the AI.
Step 3: Build the board with your first prompt
Copy the starter prompt from Module 3 and paste it into the AI chat. Press Enter. Watch the AI write the code — it takes 30–60 seconds. When it finishes, you'll see a file called index.html in the left panel.
Step 4: See your app in your browser
Press Ctrl+Shift+P (Windows) or Cmd+Shift+P (Mac) → type Live Preview → click Show Live Preview. Your browser opens showing your Kanban board.
Step 5: Test it
- 1Click Add Task in the "To Do" column
- 2Type a task name — a card should appear
- 3Click → — it should move to "In Progress"
- 4Click → again — it should move to "Done"
- 5Click × — it should disappear
- 6Refresh the page — tasks should still be there (localStorage)
Step 6: Make changes by describing them
Follow-up prompt
Add a task count badge to each column heading showing how many tasks are in it.
Follow-up prompt
Make the card background slightly different per column: - To Do: white - In Progress: light blue tint (#f0f7ff) - Done: light green tint (#f0fdf4)
Frequently Asked Questions
The AI made a file but I can't find it.
The Live Preview isn't working.
The AI wrote code but the board looks blank or broken.
Tasks disappear when I refresh the page.
How do I undo a change the AI made that broke something?
Module 5
Save Tasks to Supabase
Quick Summary
- Right now tasks are in your browser only — they vanish on another device
- Supabase gives your app a real database so tasks persist everywhere
- You'll create a
taskstable and connect it to your board - This module takes about 20 minutes
Already know this? Skip to Module 6 →
Why do we need Supabase?
Right now tasks are stored in localStorage — a small amount of memory inside your browser. Open the app on a different computer: no tasks. Clear your browser: tasks gone.
Supabase gives your app a real database on the internet. Tasks are saved there. Anyone who opens your app sees the same tasks.
Step 1: Create the tasks table
- 1Go to supabase.com and log in
- 2Click on your
kanban-appproject - 3Click Table Editor in the left sidebar
- 4Click New Table
- 5Name it:
tasks - 6Add column:
title— type text — uncheck "nullable" - 7Add column:
status— type text — default value:todo - 8Leave the
idandcreated_atcolumns already there - 9Click Save
Step 2: Allow your app to read and write tasks
- 1In Supabase, click Authentication in the left sidebar → Policies
- 2Find the
taskstable → click New Policy - 3Choose Enable read access for all users → Save
- 4Click New Policy again → Enable insert access for all users → Save
- 5Repeat for update and delete
Step 3: Connect your app to Supabase
Get your Supabase URL and anon key from Project Settings → API. You saved these in Module 2.
Paste this into Cursor AI chat
Update my Kanban board to use Supabase instead of localStorage. My Supabase URL is: [paste your URL here] My Supabase anon key is: [paste your key here] Changes needed: 1. Load tasks from Supabase on page load (select all rows from the "tasks" table) 2. When adding a task, insert a new row with the title and status (use "todo", "in-progress", or "done" as the status value) 3. When moving a task with the → button, update its "status" in Supabase 4. When deleting a task with the × button, delete its row from Supabase Use the Supabase JavaScript library via CDN (add it as a script tag in the HTML).
Step 4: Test the database connection
- 1Open your app in the browser and add a task
- 2Go to Supabase → Table Editor → tasks — you should see a new row
- 3Move the task to "In Progress" — refresh Supabase and the status should update
- 4Open the app in a different browser tab — the task should appear there too
Frequently Asked Questions
I see an error about "CORS" or "not allowed."
The app loads but shows no tasks.
Is my Supabase anon key secret?
Can multiple people use the board at the same time?
What do "todo", "in-progress", and "done" mean in the database?
Module 6
Go Live with Vercel
Quick Summary
- "Deploying" = copying your app to a server so anyone can visit it
- Push your code to GitHub → Vercel picks it up automatically
- Your app gets a free URL like
kanban-app.vercel.app - Every future change deploys in ~30 seconds
This is the last module — you're almost there!
Step 1: Push your code to GitHub using Cursor
In Cursor, open the Source Control panel: Ctrl+Shift+G (Windows) / Cmd+Shift+G (Mac).
- 1You'll see your changed files listed
- 2Click the + next to each file to "stage" it
- 3Type a commit message:
my kanban app - 4Click the checkmark ✓ to commit
- 5Click Publish Branch or Push
- 6Sign in to GitHub when prompted and choose your
kanban-apprepository
Alternative: terminal commands
Press Ctrl+` (Windows) or Cmd+` (Mac) to open the terminal in Cursor:
Terminal commands
git init git add . git commit -m "my kanban app" git branch -M main git remote add origin [your GitHub repo URL] git push -u origin main
Step 2: Deploy with Vercel
- 1Go to vercel.com and log in
- 2Click Add New… → Project
- 3Find
kanban-appin your GitHub repos → click Import - 4Leave all settings as default — Vercel detects your project automatically
- 5Click Deploy
- 6Wait ~30 seconds
Step 3: Get your URL
When Vercel shows "Congratulations!" you'll see a URL like kanban-app.vercel.app. Click it. Your app is live.
Send that URL to anyone. They can use your board right now, from anywhere.
Step 4: Future updates are automatic
- 1Edit your code in Cursor
- 2Go to Source Control → stage your changes → commit
- 3Click Push
- 4Vercel detects the new code and redeploys in ~30 seconds
Frequently Asked Questions
The deployment failed.
My app works on my computer but not on Vercel.
Can I get a custom domain?
How do I update my app after it's live?
Is Vercel really free forever?
You did it.
You just built and deployed a real Kanban board app. Without writing a single line of code.
- A working Kanban board with To Do / In Progress / Done columns
- Tasks that save to a real database (Supabase)
- A live URL anyone in the world can visit
- A GitHub repository with your code
- Automatic deploys — every change goes live in 30 seconds
Ideas for what to build next: expense tracker · habit tracker · reading list · simple CRM