Финансовый трекер · 2026
Finch
Тёмный финансовый дашборд в стиле Mercury: учёт транзакций и категорий, бюджеты и накопительные цели с детерминированным движком советов по темпу накоплений. Сделал гостевой режим с изолированными демо-данными на каждый визит, вход по email/паролю и через Google, а также двуязычную версию приложения (EN/RU).
Инструменты
- Next.js
- TypeScript
- Prisma
- PostgreSQL
- Auth.js
- next-intl



Как это сделано
Ключевые решения
Гостевой режим без утечки данных
Вместо одного общего демо-аккаунта каждый клик «Продолжить как гость» клонирует реалистичный набор данных в свежего изолированного пользователя — гости не видят и не портят данные друг друга.
Советы по накоплениям без фоновых задач
Совет по темпу накоплений на цель считается детерминированно при каждом рендере — сравнивает фактический и требуемый темп. Проще и надёжнее, чем держать отдельный cron/scheduler ради значения, которое можно посчитать на лету.
Rate limiting под размер проекта
На вход/регистрацию поставил простой rate limiter в памяти процесса — этого достаточно для одного инстанса. Осознанно не стал тащить Redis/Upstash туда, где нагрузка этого не требует.