«Достаток» — расходы всей семьи без таблицы
Telegram-бот для учёта расходов на семью: запись — 10 секунд с телефона на кнопках, без единого поля свободного ввода, кроме суммы. Дашборд и графики по категориям и участникам собираются сами.
Открыть проект
Задача
Общая таблица расходов на семью работала, только пока кто-то не забывал её открыть — а открывали раз в несколько дней, задним числом, без разбивки по людям.
Идея
Telegram-бот на кнопках (без единого поля свободного ввода, кроме суммы) плюс дашборд на собственной дизайн-системе «Достаток» — запись становится частью привычного мессенджера, а картина по категориям и участникам собирается сама.
Результат
От архитектуры до рабочего кода — один сеанс с AI: бот, сервер, база и дашборд готовы к деплою. Список участников не хардкод — управляется командами. Дашборд ждёт первого реального расхода.
Боли до решения
Общая таблица на семью работала, пока кто-то не забывал её открыть — а открывали её раз в несколько дней, задним числом. По записи было не видно, кто именно потратил и на что конкретно: только общая сумма в столбик. Чтобы понять, куда уходят деньги в этом месяце, нужно было отдельно строить график руками.
Решение
Telegram-бот на кнопках, без единого поля свободного ввода, кроме суммы: категория → сумма → комментарий (или «без комментария») → подтверждение. Каждая запись сразу попадает на сервер и сразу видна на дашборде — тренд трат за 6 месяцев, факт против плана по 7 категориям, разбивка по участникам, лента последних записей.
Список участников — не хардкод. Добавить человека или отключить его — одна команда на сервере, без переустановки и без правки кода:
npm run users:add -- <telegram_id> "Имя"
npm run users:remove -- <telegram_id>
Отключение мягкое: доступ к боту пропадает, история трат остаётся на графиках.
Дашборд — не общий шаблон визуализации, а собственная дизайн-система «Достаток»: токены, типографика, светлая и тёмная тема — та же, что уже была в макетах бренда.
Стек
Node.js / TypeScript, Telegraf (бот), Express (API и дашборд с одного порта), SQLite (без внешней СУБД — семье из нескольких человек этого хватает с запасом), графики — на чистом SVG без сторонних библиотек визуализации. Минимум зависимостей осознанно: чтобы всё поднималось на самом дешёвом VPS без лишней инфраструктуры.
Срок
От архитектуры до рабочего, проверенного кода — один рабочий сеанс с AI. Не найм подрядчика и не спринт на две недели: бот, сервер, база данных и дашборд спроектированы и собраны за один заход, потому что задачи не решались по очереди — они дирижировались параллельно.
Что отдано
Код (бот + сервер + дашборд, готов к деплою), пошаговая инструкция по развёртыванию — от установки Node на VPS до HTTPS-домена, интерактивный дашборд с примерными данными — посмотреть, как это будет выглядеть, до того как первая реальная трата попадёт в базу.