← Вайбкодинг · Курс 30/70 EN FR Курс по OpenCode →

Проекты для капстоуна

Выбор по критерию «ценность для вас / неизвестность для агента». Оценка сложности: ● низкая, ●● средняя, ●●● высокая. Все варианты рассчитаны на 126 минут практики, то есть на MVP.


1. Учёт расходов из банковского CSV — ●●●

Суть. Загружаете выписку из банка, приложение группирует траты по категориям по правилам (ключевые слова в описании) и показывает итоги за месяц.

Почему хорош. Реальные данные, понятная ценность, проверяемость руками. Неизвестность: парсинг конкретного формата CSV — решается с одним fixtures/sample.csv.

Главный сценарий. Загрузить CSV → увидеть таблицу «категория: сумма» за месяц.

Что вырезать. Авторизацию, графики, редактирование правил в UI (правила в JSON-файле).

Стек. Node + Fastify + ванильный HTML, или Python + FastAPI.


2. Трекер привычек на localStorage — ●

Суть. Отметки «сделано» по дням, серия подряд, недельная сетка.

Почему хорош. Нет бэкенда и базы — половина рисков исчезает. Идеален, если время поджимает.

Главный сценарий. Отметить сегодня → серия увеличилась → после перезагрузки страницы всё на месте.

Что вырезать. Аккаунты, синхронизацию, напоминания.

Стек. Один HTML + JS, или React + Vite.


3. Конвертер Markdown → HTML с CLI — ●●

Суть. Утилита читает .md, отдаёт .html с базовыми стилями; поддержка заголовков, списков, ссылок, кода.

Почему хорош. Идеально для TDD: каждый элемент синтаксиса = один тест. Много границ (пустой файл, вложенные списки, незакрытый код).

Главный сценарий. convert input.md -o out.html → валидный HTML с нужными тегами.

Что вырезать. Таблицы, сноски, кастомные расширения, watch-режим.

Стек. Python (без зависимостей) или Node (без зависимостей).


4. Дашборд погоды по городам — ●●

Суть. Список городов, текущая температура и ветер из публичного API, обновление по кнопке.

Почему хорош. Тренирует модуль 7 целиком: реальный API, кэш, ошибки сети, валидация ответа. API без ключа есть у open-meteo.

Главный сценарий. Ввести город → увидеть температуру; при недоступном API — понятная ошибка, а не белый экран.

Что вырезать. Графики, прогноз на 7 дней, геолокацию.

Стек. Node + Express + статический фронт, деплой на Vercel.


5. Парсер вакансий с фильтром — ●●●

Суть. Скрипт тянет вакансии по запросу, фильтрует по ключевым словам и зарплате, выгружает в CSV.

Почему хорош. Реальная польза при поиске работы; учит валидации чужих данных. Неизвестность: доступность API — проверяйте до старта, публичного без ключа может не быть (тогда — фикстуры).

Главный сценарий. Запуск команды → CSV с 10 отфильтрованными вакансиями.

Что вырезать. Веб-интерфейс, расписание, дедупликацию.

Стек. Python + requests.


6. Мини-CRM на одной таблице — ●●●

Суть. Список клиентов: имя, статус (new/active/lost), заметка, дата следующего контакта. CRUD + фильтр по статусу.

Почему хорош. Тренирует полный цикл: модель данных, API, UI, тесты, деплой. Неизвестность: база — берите SQLite локально и Vercel Postgres/Supabase, если хочется прод.

Главный сценарий. Добавить клиента → изменить статус → отфильтровать по статусу после перезагрузки.

Что вырезать. Авторизацию, роли, историю изменений, вложения.

Стек. Node + Fastify + SQLite, или Next.js + Supabase.


7. Генератор README для репозитория — ●●

Суть. CLI читает package.json/pyproject.toml и структуру папок, генерирует README с разделами: установка, запуск, тесты, структура.

Почему хорош. Утилита, которой вы будете пользоваться на всех проектах курса. Много строковых границ — хорошие юнит-тесты.

Главный сценарий. readme-gen . → файл README с корректными командами.

Что вырезать. Шаблоны, кастомизацию, работу с GitHub API.

Стек. Node или Python, без зависимостей.


8. Проверка битых ссылок на сайте — ●●

Суть. Скрипт обходит страницу, собирает ссылки, проверяет статус-коды, выдаёт отчёт.

Почему хорош. Учит таймаутам, параллельности, обработке сети — самый богатый набор ошибок на единицу кода.

Главный сценарий. check-links https://example.com → отчёт со списком 4xx/5xx.

Что вырезать. Рекурсивный обход, кэш, отчёты HTML.

Стек. Python + httpx.


9. Телеграм-бот-напоминалка — ●●●

Суть. Бот принимает «напомни завтра в 10 позвонить», хранит и пишет в срок.

Почему хорош. Реальная ценность; учит внешним API и секретам в проде. Неизвестность: токен и хостинг с постоянным процессом (Railway/Fly), Vercel не подойдёт для поллинга.

Главный сценарий. Отправить сообщение → получить подтверждение → получить напоминание.

Что вырезать. Повторяющиеся напоминания, часовые пояса (кроме своего), команды.

Стек. Python + aiogram, SQLite.


10. Сравнение цен по сохранённым URL — ●●●

Суть. Список URL товаров, скрипт тянет цену по селектору, пишет историю в CSV, показывает изменение.

Почему хорош. Самая высокая учебная плотность: парсинг HTML, селекторы, история, ошибки изменённой вёрстки.

Неизвестность. Сайты блокируют ботов; берите один сайт, проверьте curl до старта. Если блокирует — работайте на сохранённых HTML-фикстурах.

Главный сценарий. Запуск → по каждому URL цена и дельта с прошлого раза.

Что вырезать. Уведомления, планировщик, обход антибота.

Стек. Python + httpx + selectolax (или cheerio в Node).


Как выбрать за 5 минут

  1. Нужен ли вам результат после курса? Если да — берите 1, 5 или 7.
  2. Хотите минимум риска и гарантированную сдачу — берите 2 или 3.
  3. Хотите потренировать API и деплой — берите 4 или 6.

Чего не брать в капстоун: всё, где больше одного экрана авторизации, где нужен платёжный провайдер, где нужна мобильная нативная сборка. Это не про 126 минут.