Два года назад я писал диплом. Это был серьёзный, монументальный проект: классические микросервисы на Java, тяжёлый фронтенд, настройка CI/CD пайплайнов, возня с Docker, чтобы всё это красиво деплоилось. Я потратил на это полгода своей жизни, кучу нервов и литры кофе. Тогда казалось, что разработка любого нормального продукта — это долго, больно и требует армии программистов.
А в эти выходные я за пару вечеров поднял полноценный рабочий сервис, который сам ходит по интернету, агрегирует тренды из нескольких источников, генерирует идеи стартапов через LLM и рассылает их подписчикам. И нет, я не стал киборгом. Просто технологии шагнули так далеко, что разработка пет-проектов превратилась из рутины в тот самый мемный «вайбкодинг».
Проблема: пет-проект хочется, а идей нет
Как у любого разработчика, у меня вечно чешутся руки что-то закодить. Но всё часто разбивается о стадию придумывания идеи.
В очередной раз, когда я сидел и ломал голову, подумал: а почему бы не написать автоматический генератор этих самых идей?
Просто прикрутить ChatGPT к кнопке «сгенерируй случайную идею» — это мусор. Идеи должны быть актуальными, опираться на то, что реально происходит прямо сейчас. Нужен data-пайплайн: брать сырые сигналы из нескольких источников, агрегировать их и на этой основе генерировать концепты стартапов.
Архитектура: как устроен Trendling
Стек: бэкенд — Kotlin + Ktor (JVM 21), фронт — Next.js 16 App Router с next-intl, база — PostgreSQL с миграциями через Flyway, деплой — Docker Compose за nginx. LLM — DeepSeek API (модель для генерации тяжёлая, для перевода — лёгкая chat-модель, чтобы вписаться в бюджет).
Откуда берутся тренды. Несколько внешних API, у каждого свои rate limits и квоты. Первое, что я написал — budget guard, который считает прогнозируемые вызовы до того, как они случились:
val snapshotsThisMonth = countSnapshotsInMonth(yearMonth)val projectedSpend = (snapshotsThisMonth + 1) * feedCountval allowed = projectedSpend <= config.trendsMonthlyCap
Как работает генерация. Собранные тренды по источникам скармливаются DeepSeek с системным промптом:
You are a startup analyst. Based on the provided trending topics from multiple sources,generate exactly {count} startup ideas.Respond with a JSON array only, no markdown, no explanation.Each element must have: title, description, target_audience, why_now.Where possible, synthesize ideas that connect trends across different sources.
Ключевая идея промпта — «synthesize ideas that connect trends across sources». Модель должна находить неочевидные связи между сигналами из разных мест. В реальности работает через раз, но когда попадает — выходит любопытно.
Опыт «Вайбкодинга»
Конечно, я жил не в вакууме и знал, что ИИшка развивается, даже пользовался CLI инструментами :)) Но то, что она мне может целиком стенды поднимать, настраивать CI/CD, читать внешнюю доку и интегрировать без ошибок с первого раз — меня это удивило!
Что получилось в итоге
Так родился Trendling — сервис, который каждое утро агрегирует тренды из нескольких источников, прогоняет через LLM и выдаёт 10 свежих идей для стартапов.
Trendling.space — Идеи стартапов на сегодня (обновляется каждый день).
Буду рад фидбэку от хабровчан. И какие источники трендов вы бы подключили сами?
ссылка на оригинал статьи https://habr.com/ru/articles/1046716/