В тебе є ідеї. Вони живуть у тебе місяцями. Сидять у нотатках, повільно бродять і перетворюються на почуття провини. Щопонеділка ти думаєш 'наступних вихідних' — а щонеділі ввечері чомусь замість запуску ти перекладаєш речі на столі.

Проблема не в таланті й не в інструментах. Проблема — в процесі. Більшість вікенд-проєктів вмирають, бо білдери витрачають суботу на рішення, які треба було прийняти в п'ятницю, а неділю — на полірування того, що ніхто не просив. 🔍

Пів року тому цей гайд був би нереальним. Claude Code не міг надійно наскафолдити фулстек-додаток з одного спек-файлу. Безкоштовний тариф Supabase не включав edge functions. Hobby-план Vercel мав жорсткіші ліміти на деплой. Але на кінець березня 2026 кожен інструмент у цьому плейбуку працює на free tier, якого достатньо, щоб зашіпити реальний продукт — не іграшковий демо. Вартість вікенд-MVP впала від 'кілька сотень доларів на хостинг і API' до 'буквально нуль доларів, якщо бути обережним'. Ось таке вікно. 💰

А ось плейбук, який я зреверсив із сотень вікенд-запусків за останній рік — тих, що реально дали живий URL з реальними юзерами до неділі ввечері. Не прототип. Не макет у Figma. Задеплоєний продукт. Секретна зброя: Claude Code — термінальний AI-асистент для кодингу від Anthropic, який читає твій проєкт, пише код і запускає команди прямо у твоєму кодбейсі.

П'ятничний вечір: одна година рішень (не коду)

Вікенд починається в п'ятницю о 21:00. Не з коду — з рішень. Кожна хвилина, яку ти витратиш на роздуми в суботу, — це хвилина, коли ти не білдиш.

Обери форму проєкту

Ось єдині форми, які реально шіпляться за вікенд:

Форма Приклад Складність
Тулза Об'єднання PDF, стиснення зображень, форматування тексту Низька
Дашборд Перегляд аналітики, сторінка статусу, дисплей метрик Середня
Маркетплейс лайт Каталог, сайт із лістингами, курована колекція Середня
Мікро-SaaS Продукт з однією фічею + авторизація + сторінка оплати Середня-Висока
API-обгортка Взяти потворний API — спосіб, яким програми спілкуються між собою — і зробити його гарним Низька-Середня

Напиши однострінковий спек

Відкрий файл. Напиши рівно це. Нічого більше:

# Weekend MVP: [Назва]

## Одне речення
[Що робить, для кого]

## Основний флоу
1. Юзер потрапляє на сторінку
2. Юзер робить [основну дію]
3. Юзер отримує [результат]

## Must have (субота)
- [ ] Лендінг
- [ ] Основна фіча
- [ ] Деплой на продакшн URL

## Nice to have (неділя)
- [ ] Авторизація
- [ ] Email-сповіщення
- [ ] Базова аналітика

## НЕ будуємо
- [ ] Адмінка
- [ ] Інтеграція оплати
- [ ] Мобільний додаток
- [ ] Профілі юзерів

Секція 'НЕ будуємо'? Найважливіша частина всього документа. Це твій щит проти scope creep — природної тенденції додавати 'ще одну дрібничку', доки не пройде неділя і ти не збілдив нічого завершеного.

Налаштуй репо

Репо (репозиторій) — це просто папка проєкту під контролем Git — системи версій, яка зберігає кожну зміну, як нескінченний Ctrl+Z для твого коду.

mkdir my-mvp && cd my-mvp
git init

# Обери ОДИН стек. Без роздумів.
# Варіант A: Next.js + Supabase (фулстек, максимум гнучкості)
npx create-next-app@latest . --typescript --tailwind --app

# Варіант B: Статика + API (простіше, швидше)
# Просто створи index.html і папку /api

touch SPEC.md  # Встав сюди свій спек
git add -A && git commit -m "init: weekend mvp"

Next.js — це фреймворк на React, вважай стартер-кіт для веб-додатків, який бере на себе маршрутизацію, серверний рендеринг і деплой з коробки. Supabase дає тобі базу даних, авторизацію і файлове сховище без налаштування серверів.

Суботній ранок: білдимо ядро (4-5 годин)

Прокидаєшся. Кава. Термінал відкритий. Жодних соцмереж, жодної пошти, жодного 'тільки одну річ гляну'.

Години 1-2: Скафолдинг із Claude Code

Тут Claude Code відпрацьовує на повну. Відкривай його в директорії проєкту:

claude

Дай йому повний контекст:

Read SPEC.md. This is a weekend MVP — we're building
the minimum possible product.

Scaffold the project:
1. Set up the page structure based on the core flow
2. Create the main feature component
3. Set up basic styling with Tailwind
4. Create a layout with nav and footer
5. No auth yet, no database yet — just the UI and core logic

Claude Code генерує 5-15 файлів. Не ревʼюй кожен рядок. Перевіряєш три речі: чи запускається (npm run dev), чи є основний флоу, чи адекватна структура коду?

Години 2-4: Імплементуємо основну фічу

Це єдиний код, який має значення. Все інше — скафолдинг, допоміжна структура, яка сама по собі не є продуктом.

Допустимо, ти білдиш калькулятор вартості мітингів. Кажеш Claude Code:

The core feature is a calculator that takes:
- Number of participants
- Average hourly rate
- Meeting duration

And shows a real-time cost counter, total cost, and
cost-per-minute breakdown. Single React component.
No backend needed. Use useState for the timer,
useEffect for the counter animation.

Claude Code пише. Ти тестуєш у браузері. Ітеруєш:

The counter animation is jerky. Use requestAnimationFrame
instead of setInterval. Make the cost number huge — 72px,
monospace font.

Ключова дисципліна: ітеруй тільки основну фічу. Якщо нав виглядає криво — запиши. Косметику полагодиш у неділю.

Години 4-5: Деплой 🚀

Задеплой до обіду. Мати живий URL — реальну адресу, яку може відвідати будь-хто — змінює твою психологію з 'граюся з кодом' на 'білджу продукт'.

# Vercel (найшвидше для Next.js)
npx vercel

# Або Cloudflare Pages (найшвидше для статичних сайтів)
npx wrangler pages deploy ./out

Vercel автоматично деплоїть щоразу, коли ти пушиш код. Безкоштовного тарифу вистачає на будь-який MVP. Надішли URL одній людині. Її 30-секундна реакція скаже тобі більше, ніж тиждень соло-розробки.

Обід: відійди від компа

Серйозно. Поїж нормальну їжу не за робочим столом. Продуктивність після обіду подвоюється, коли мозок відпочив.

Суботній день: зв'язуємо все разом (3-4 години)

Основна фіча працює. Тепер зроби так, щоб це виглядало як продукт.

Години 6-7: База даних (якщо треба)

Не кожному MVP потрібна база даних — структуроване сховище для збереження та отримання даних. Калькулятору — ні. Каталогу — так.

Якщо твоєму потрібна, кажи Claude Code:

Set up Supabase:
1. Design the minimum schema — only tables for the core flow
2. Set up the client in lib/supabase.ts
3. Add basic CRUD for the main data type
4. No RLS yet, no complex queries — just make it work

CRUD означає Create, Read, Update, Delete — чотири базові операції з будь-якими даними. RLS (Row Level Security) контролює, хто бачить які рядки. Поки що пропускаємо.

Безкоштовний тариф Supabase дає 500 МБ PostgreSQL — потужної опенсорсної бази даних. Для MVP ти використаєш десь 1 МБ. Це запас на 500 MVP. 💰

// lib/supabase.ts — це все, що тобі потрібно
import { createClient } from '@supabase/supabase-js'

export const supabase = createClient(
  process.env.NEXT_PUBLIC_SUPABASE_URL!,
  process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!
)

Години 7-8: Авторизація (якщо треба)

Auth (автентифікація) — це коли юзери логіняться, щоб ідентифікуватися. Калькулятору мітингів не треба. Персональному дашборду — так.

Add Supabase Auth:
1. Email + password signup/login
2. Simple auth form component
3. Protected route for the dashboard
4. Session management via middleware
5. No social login, no MFA — just email and password

MFA (багатофакторна автентифікація) — це той другий код із телефону. Supabase Auth обробляє 50 000 активних юзерів на місяць безкоштовно. За вікенд-MVP ти цей ліміт не доб'єш ніколи.

Години 8-9: Лендінг

Твоєму лендінгу потрібні рівно чотири речі:

  1. Заголовок — що робить продукт (5-8 слів)
  2. Підзаголовок — для кого (1 речення)
  3. CTA-кнопка — 'Спробувати безкоштовно' / 'Почати'
  4. Один скріншот — покажи працюючий продукт
Create a landing page:
- Hero section with headline, subheadline, and CTA
- One section showing the core feature
- Simple footer with contact info
- No testimonials, no pricing, mobile responsive

Жодної таблиці порівняння фіч. Жодних логотипів 'нам довіряють'. Жодних анімованих градієнтів. Шіпни реальний продукт, а не маркетинговий сайт про реальний продукт.

Неділя: поліш і запуск (6-8 годин)

Ранок: полагодь усе, що ігнорував ⚡

Відкрий нотатки з суботи. Закинь їх у Claude Code батчем:

Fix these in order:
1. Nav doesn't highlight the active page
2. Mobile menu doesn't close after clicking a link
3. Loading state shows blank — add a skeleton
4. Form validation missing on email field
5. Footer links go nowhere — add pages or remove links

Кожен фікс маленький. Разом вони перетворюють 'демо' на 'продукт'.

День: чекліст перед запуском

### Працює
- [ ] Основна фіча працює на десктопному Chrome
- [ ] Основна фіча працює на мобільному Safari
- [ ] Усі посилання кудись ведуть
- [ ] Форми валідують введення
- [ ] Помилки показують зрозумілі повідомлення

### Виглядає правильно
- [ ] Фавікон є
- [ ] Тайтл сторінки і мета-опис задані
- [ ] OG-картинка для шерінгу в соцмережах
- [ ] Жодного тексту-заглушки ('Lorem ipsum')
- [ ] Консистентні відступи та типографіка

### Готово до продакшну
- [ ] Змінні середовища задані на продакшні
- [ ] HTTPS працює
- [ ] Час завантаження менше 3 секунд
- [ ] Жодних помилок у консолі
- [ ] Сторінка 404 існує

Скажи Claude Code: 'Run through this checklist against our codebase. Tell me what passes, what fails, fix the failures.' Він упорається за хвилини.

Вечір: шіпай

Постиш у Twitter/X, релевантні Discord-сервери, один тред у Reddit, Hacker News 'Show HN', якщо пасує. Формат посту, який працює:

Я збілдив [назва продукту] за вікенд — він [робить річ] для [аудиторія]. [URL] Збілджено на Next.js + Supabase + Claude Code. Фідбек вітається.

Не пиши есе на 2000 слів про вікенд-проєкт. Продукт говорить сам за себе — або ні.

Пожирачі часу, що вбивають вікенд-MVP 🗑️

Пожирач часу Чому тягне Чому це пастка
Кастомна дизайн-система 'Має виглядати професійно' Дефолти Tailwind виглядають нормально
Auth з нуля 'Не довіряю стороннім сервісам' Supabase Auth займає 10 хвилин
Оптимізація бази даних 'А якщо будемо скейлитися?' В тебе 0 юзерів. Оптимізуй на 1 000
CI/CD пайплайн 'Кращі практики' Пуш у main. Vercel деплоїть автоматично
Набір тестів 'Треба мати тести' Мануально тестуй вікенд-MVP
Інтеграція оплати 'Треба монетизуватися' Спочатку юзери. Stripe — на другому тижні
Адмінка 'Потрібно керувати даними' Юзай дашборд Supabase напряму

CI/CD (Continuous Integration/Continuous Deployment) — це автоматичне тестування і деплой щоразу, коли ти пушиш код. Цінна річ у правильний час. Цей вікенд — не той час.

Реалістичний таймлайн

П'ятниця 21:00:  Пишеш спек, налаштовуєш репо        (1 год)
Субота 9:00:     Скафолдинг + основна фіча             (4 год)
Субота 13:00:    Обідня перерва                         (1 год)
Субота 14:00:    База даних + auth + лендінг             (4 год)
Субота 20:00:    На сьогодні все
Неділя 10:00:    Поліш + баг-фікси                      (3 год)
Неділя 14:00:    Чекліст перед запуском + деплой         (2 год)
Неділя 17:00:    Постиш онлайн + збираєш фідбек         (1 год)
Неділя 18:00:    Вікенд-MVP відшіплено

Загальний час фокусного кодингу:                       ~14 год

14 годин фокусної роботи. Не 48 годин безсонного хаосу. Спиш обидві ночі. Зарядка в неділю вранці. Відпочилий код б'є виснажений код щоразу.

🦝 Думка Schnapps

Вікенд-MVP стрес-тестить твою ідею, а не витривалість. Якщо не можеш пояснити, що робить продукт, одним реченням — ти не збілдиш його за вікенд. Якщо не можеш збілдити основну фічу за 4 години з Claude Code — фіча занадто складна для MVP.

Проєкти, які шіпляться, мають одну спільну рису: білдер нещадно різав скоуп. Одна секція на лендінгу. Одна фіча в додатку. Дві таблиці в базі. І воно відшіпилось.

Проєкти, які не шіпляться, мають іншу спільну рису: білдер витратив суботній день на ресерч, яку бібліотеку анімацій використати для переходів між сторінками. В MVP немає переходів між сторінками. Є сторінка, і вона працює. Шіпни це. 🚀