$ ./vibe-coder.MY.sh --subscribe
Leave your email, no spam. Skip if you'd rather just look around first.
Check your inbox. If the email address is eligible, a verification link has been sent. Open the email and click the verification button to complete the process.
guest@vibe-coder:~$ ./vibe-coder.MY.sh --init
A beginner-to-pro path for shipping your own app — fundamentals, vibe coding, and everything between.
Click the globe to enter
guest@vibe-coder:~$ ./vibe-coder.MY.sh
A beginner's path to shipping your own app, paced for about 4-7 hours a week. Seven stages, in order — each one unblocks the next.
Master the fundamentals behind vibe coding — HTML, CSS, JavaScript, Git, APIs, databases, and deployment. Start free with freeCodeCamp, CS50, MDN, The Odin Project, roadmap.sh, and trusted YouTube channels. Choose Scrimba, Codecademy, Coursera, or selected Udemy courses when you need more structure.
Two separate, independently tracked paths — switching doesn't erase either one's progress.
Filters the reference sections below (tech stack, folder structure) to just this track.
tap once: done tap again: shaky, revisit tap a third time to clear
Reference
Not a checklist item — the actual mental model. Read this before you start the 100% vibe coding path.
Every level in the 100% vibe coding path is a different angle on this same five-step loop. There's no separate "then you learn to code" phase — the loop itself is the method.
The single highest-leverage skill in vibe coding is writing the request, not reading the result.
Weak: "Make a login thing."
Strong: "Add an email/password login form
above the fold. Show an error if
the password is wrong. Redirect
to /dashboard on success."
Weak: "Fix the button."
Strong: "The delete button works once, but
clicking it a second time does
nothing. Find out why."
Reference
Frameworks churn every few years. These don't. Come back to this list once a month and be honest about which ones are still shaky.
Reference
Almost every tool in this entire roadmap — Next.js, React, PostgreSQL, Flutter, VS Code, even the fonts you're reading right now — is open source. Understanding it properly is a genuine unlock, not optional trivia.
Not all open source licenses let you do the same things. Two categories cover almost everything you'll encounter:
Permissive (MIT, Apache-2.0, BSD) → Use it in a commercial, closed-source product with almost no restrictions. Most JS/npm packages use this. Copyleft (GPL, AGPL) → If you distribute software built on GPL code, you may have to open-source YOUR code too. AGPL extends this to software only used over a network.
Check a package's license before depending on it for anything commercial — it's usually one line in its README or a LICENSE file.
npm install package-name
# then read its README for the import syntax
import { thing } from "package-name";
Reference
Not abstract — this is roughly what you'd see after running the standard starter command for each track.
$ mkdir my-site && cd my-site
my-site/
index.html
about.html
css/
styles.css
js/
main.js
assets/
logo.svg
photos/
README.md
$ npx create-next-app@latest my-app --typescript --tailwind --eslint --app
my-app/
app/
page.tsx
layout.tsx
api/
users/route.ts
components/
Button.tsx
Navbar.tsx
lib/
db.ts
public/
.env.local
package.json
$ npx create-expo-app@latest my-mobile-app
my-mobile-app/
app/
(tabs)/
index.tsx
profile.tsx
_layout.tsx
components/
Card.tsx
constants/
Colors.ts
assets/
images/
app.json
package.json
Android Studio → New Project → Empty Activity
MyApp/
app/ # module folder
src/main/
java/com/example/myapp/
MainActivity.kt
ui/
HomeScreen.kt
theme/
Theme.kt
data/
UserRepository.kt
res/
values/
strings.xml
colors.xml
AndroidManifest.xml
build.gradle.kts # module-level build file
build.gradle.kts # project-level build file
settings.gradle.kts
Xcode → File → New → Project → App (SwiftUI)
MyApp/
MyApp/
MyAppApp.swift
ContentView.swift
Views/
HomeView.swift
ProfileView.swift
Models/
User.swift
Assets.xcassets/
MyApp.xcodeproj/
$ npm create @shopify/hydrogen@latest
my-store/
app/
root.tsx
routes/
_index.tsx
products.$handle.tsx
collections.$handle.tsx
cart.tsx
components/
ProductCard.tsx
CartDrawer.tsx
lib/
fragments.ts
public/
server.ts
package.json
vite.config.ts
Reference
One concrete beginner project per track — not just a name, the actual commands to get it running.
A one-page portfolio: your name, a short bio, 3 project cards, a contact link.
Stack: plain HTML/CSS/JS
mkdir portfolio && cd portfoliotouch index.html styles.cssnetlify deploy --prodAn event landing page: date, location, a live countdown, an RSVP form.
Stack: plain HTML/CSS/JS
mkdir event-landing && cd event-landingtouch index.html styles.css script.jsscript.js, write a countdown timer that ticks down to the event's date/timeA single-product store — one item, real checkout, no code required for v1.
Stack: Shopify (Basic plan)
A small catalog store — 3 to 5 products with a proper collection page, not just one.
Stack: Shopify (Basic plan)
A habit tracker — log in, add habits, check them off daily, see a streak.
Stack: Next.js + Supabase + Vercel
npx create-next-app@latest habit-tracker --typescript --tailwind --eslint --apphabits tablenpm run devvercel --prodA shared reading list — save links, tag them, mark as read, visible to anyone with the link.
Stack: Next.js + Supabase + Vercel
npx create-next-app@latest reading-list --typescript --tailwind --eslint --applinks table: url, title, tag, read booleannpm run devvercel --prodA photo journal — snap a photo, add a caption, pin it to a map of where you took it.
Stack: Expo (camera + location) + Supabase Storage
npx create-expo-app@latest photo-journalnpx expo install expo-camera expo-locationjournal_entries table plus a storage bucket for photoseas build --platform all, then eas submitOr: port the web app's habit tracker to your own phone, sharing the same backend.
Stack: Expo, same Supabase backend as the web app
npx create-expo-app@latest habit-tracker-mobilecd habit-tracker-mobile && npx expo starteas build --platform all, then eas submitReference
You don't need all of this — just the column that matches what you're building. Rows are in the order you'd typically adopt them.
| Layer | Website | E-commerce | Web app | Mobile app |
|---|
Why so many "not needed" cells: complexity roughly stacks in this order — website (no per-user data) < e-commerce (products + checkout, but the platform runs the hard parts) < web app (your own accounts, data, and logic) < mobile (a web app plus app-store rules). Pick the row for the layer you're wondering about; if a column says "not needed," that project type genuinely skips it — that's not a gap in the plan.
Reference
Opinionated, not exhaustive — chosen for being fast, well-maintained, and pleasant to work with, not just popular. Every name links to its official site or docs.
Goal: get something live fast, with as little config as possible.
| Layer | Website | E-commerce | Web app | Mobile |
|---|---|---|---|---|
| Framework | Plain HTML/CSS/JS | Shopify | Next.js | Expo |
| Hosting | Netlify — drag-and-drop, free HTTPS | Built into Shopify | Vercel — one command to deploy | Expo Go for testing, EAS for store builds |
| Database | Not needed | Managed by Shopify | Supabase — managed Postgres, included | Same Supabase project, via API |
| Security | Nothing to protect — static files only | PCI compliance handled by Shopify | Supabase Auth handles passwords & sessions for you | Same Supabase Auth, via its mobile SDK |
| Payments | Not needed | Shopify Payments — toggle it on, no integration work | Stripe Checkout — hosted page, a few lines of code | Same Stripe Checkout, opened via WebView |
| Testing & CI/CD | Click through it yourself before you deploy | Shopify's built-in test-mode checkout | Manual testing; Vercel auto-deploys on every push | Manual testing on your own phone via Expo Go |
Goal: more control over the result, still fast to build.
| Layer | Website | E-commerce | Web app | Mobile |
|---|---|---|---|---|
| Framework | Astro + Tailwind | Shopify Hydrogen | Next.js + TypeScript + Prisma | Expo + EAS |
| Hosting | Vercel or Netlify | Shopify Oxygen (Hydrogen's built-in host) | Railway — app + database together | EAS Build + Submit to both app stores |
| Database | Not needed | Still managed by Shopify's backend | Postgres via Railway | Same Postgres, via your API |
| Security | HTTPS automatic via host | Storefront API tokens, scoped read-only | Clerk for auth, secrets in env vars, parameterized queries via Prisma | Same Clerk auth via SDK — never store tokens in plain storage |
| Payments | Not needed | Shopify Payments, or Stripe as a secondary gateway | Stripe Elements — embedded, styled to match your app | Stripe's React Native SDK, plus native Apple/Google Pay buttons |
| Testing & CI/CD | Still mostly manual — low risk, low payoff to automate | Manual checkout runs in Shopify's test mode | Vitest for unit tests + GitHub Actions on every push | EAS Build preview builds + manual device testing |
Goal: performance and scale, full control over every layer.
| Layer | Website | E-commerce | Web app | Mobile |
|---|---|---|---|---|
| Framework | Astro or static Next.js export | Medusa (self-hostable) or Hydrogen at scale | Next.js App Router + tRPC | React Native (bare) or native Swift/Kotlin |
| Hosting | Cloudflare Pages — edge network, sub-100ms globally | Self-hosted on Fly.io/Railway, or Shopify Oxygen | Vercel or AWS, with a Redis caching layer | Fastlane-driven CI/CD to both stores |
| Database | Not needed | Self-managed Postgres (Medusa) with backups | Postgres + Redis, read replicas at scale | Same backend, offline-first local cache on-device |
| Security | CSP headers, Subresource Integrity | PCI scope minimized via Stripe tokenization, signed webhooks | Rate limiting, CSRF protection, dependency scanning (Dependabot or Snyk), secrets in a vault | Certificate pinning, secure keychain storage for tokens |
| Payments | Not needed | Direct Stripe integration, bypassing platform fees, with webhook reconciliation | Stripe with subscription billing and usage-based metering | Native Apple Pay / Google Pay + Stripe, PCI SAQ A compliance scope |
| Testing & CI/CD | Lighthouse CI gating every deploy | Automated checkout-flow tests (Playwright) against a staging store | Vitest/Jest + Playwright end-to-end, GitHub Actions gating every merge | Detox end-to-end + Fastlane CI, TestFlight/internal test tracks |
Reference
Explore what each technology category is responsible for, the recommended default, strong alternatives, and when each option makes sense. You do not need to use every tool.
Choose one primary tool for each responsibility. Alternatives are shown for learning and comparison — not as an installation checklist.
New here and don't know what applies to you? Filter by your project type first:
No matching technology found. Try another category or search term.
Reference
For genuinely large-scale needs — most solo projects never reach this table, and that's correct, not a gap. One real answer per row, not five options to weigh, plus when it's actually worth reaching for.
| Category | Excellent pick | Reach for this when... |
|---|---|---|
| Backend framework | NestJS | Your Node backend outgrows a handful of API routes and needs real structure — modules, dependency injection, a shape bigger than one file |
| Analytics database | TimescaleDB or ClickHouse | You're storing time-series or event data at real volume — regular Postgres starts to strain on that specific shape of query |
| Search at scale | OpenSearch | Meilisearch's own limits show up — for most projects that's a long way off, so start there first |
| High-throughput queue | Kafka | You're processing well over a million events a day — below that, QStash or BullMQ is simpler and considerably cheaper |
| Container orchestration | Docker always; Kubernetes only with a dedicated platform team | You have multiple services and multiple people deploying them independently |
| Infrastructure as code | Terraform | Manually clicking through cloud consoles has become error-prone or you're managing more than one environment by hand |
| Monorepo tooling | Turborepo | You're maintaining a website, an app, and an API in one repository and builds are starting to feel slow |
| Observability at scale | OpenTelemetry + Prometheus + Grafana + Loki | Sentry alone stops answering "why is this slow," and you need "what's actually happening right now" too |
| Security scanning | GitHub CodeQL or Snyk, alongside Dependabot | You want automated vulnerability scanning on your own code, not just dependency version bumps |
| AI features | Anthropic or OpenAI API + pgvector + LangGraph | You're building retrieval or multi-step agent behavior, not just a single chat completion call |
| Regional payments | Stripe/PayPal globally, plus a local gateway where it matters | Your customers are concentrated in one region with a strongly preferred local payment method (e.g. FPX and DuitNow in Malaysia) |
Reference
Short, opinionated verdicts for the comparisons beginners get stuck on most — not "it depends," an actual answer for where you're starting from.
| Debate | Verdict for a beginner | When the other choice actually wins |
|---|---|---|
| React vs Vue vs Svelte | React — biggest ecosystem, most tutorials, and it's what Next.js is built on | Vue if your team already knows it; Svelte if you want less boilerplate and don't need React's ecosystem |
| Next.js vs Remix vs Astro | Next.js — most mature, most documented, default choice in this roadmap | Astro if your site is mostly static content; Remix if you prefer its nested-routing model specifically |
| Supabase vs Firebase | Supabase — real PostgreSQL underneath, easier to move off later if you outgrow it | Firebase if you're mobile-first and want deep integration with Google's mobile SDKs |
| Cursor vs Windsurf vs Copilot | None of these — start with Claude Code (terminal-based, works with any editor, most capable at multi-file changes) | Windsurf or Cursor if you want the AI built into a full editor rather than a separate terminal tool |
| Vercel vs Cloudflare vs Netlify | Vercel — built by the Next.js team, zero-config deploys for this stack | Cloudflare Pages if you want the lowest cost at scale; Netlify if you're not using Next.js at all |
Reference
A node-based diagram system covering Website, E-commerce, Web App, and Mobile App — rounded nodes, dotted grid, colored branches, moving data particles, and a plain-English + technology label on every node.
Part 1
How the four systems connect to the shared backend, database, and external services. In beginner terms: your Website brings people in, your E-commerce system sells to them, your Web App is where your team manages everything, and your Mobile App gives customers the same experience on their phone — all four talk to the same backend, so nothing is duplicated.
Part 2
A visitor lands on the site, browses, and fills out a contact form. The diagram follows what happens the instant they click submit — including what happens if the form has a mistake, and what happens if they leave without finishing.
Part 8 — Website
Every step from the diagram above, explained without assuming you already know what any of the technical words mean.
Part 3
A customer browses, adds a product to cart, and pays. The diagram covers the full journey plus what happens when payment fails, the product is out of stock, or a refund is needed.
Part 6 — E-commerce
Part 4
A user logs in, creates a record, and — if the record needs sign-off — a manager approves or rejects it. Covers login failure with account lockout, and the full approval branch.
Part 6 — Web app
Part 5
Install through first action taken in the app, plus the four failure paths every mobile app needs: permission denied, offline, session expired, and request failure.
Part 6 — Mobile app
Part 6
Every automated step across all four systems, in the exact format requested: trigger, input, technology, action, database update, notification, success/failure result, retry behavior, and the security consideration that matters for it.
Part 7
The intended choreography for each workflow, mapped onto the actual nodes built above — written as a spec here rather than fully hand-animated frame-by-frame, since that's a real, separate engineering task beyond what the current particle-and-highlight system does automatically.
Part 15
Three different starting points depending on what you're building — the order matters more than the pace.
Glossary