DV
Все проекты

AI-Powered Productivity Suite

Полнофункциональная платформа личной продуктивности

7 интегрированных модулей: управление задачами (Kanban), поиск работы с AI-подбором, синхронизация Google Calendar, заметки Google Drive, дайджесты Telegram-каналов с AI-классификацией, трекинг здоровья Garmin с AI-брифингами и единый дашборд. Кросс-модульная связь данных, демо-режим с ролевым доступом.

FastAPI Next.js PostgreSQL Google OAuth Telegram MTProto Garmin API Multi-provider AI
AI-Powered Productivity Suite

Обзор

Personal Hub — полнофункциональная веб-платформа, объединяющая личную продуктивность и управление карьерой в едином интегрированном дашборде. Вместо переключения между множеством приложений — каждое со своей авторизацией, настройками и деплоем — всё собрано в одном месте: задачи, отклики на вакансии, календарь, заметки, мониторинг Telegram-каналов и трекинг здоровья.

Архитектура

┌─────────────────────────────────────────────────────┐
│              Фронтенд (Vercel)                       │
│  Next.js 16 · React 19 · TypeScript · Tailwind v4   │
│       shadcn/ui · React Query · Recharts             │
└──────────────────────┬──────────────────────────────┘
                       │  REST API + JWT Auth
┌──────────────────────▼──────────────────────────────┐
│              Бэкенд (Railway)                        │
│  FastAPI · Python 3.12 · SQLAlchemy 2.0 · Alembic   │
├──────────┬───────────┬───────────┬──────────────────┤
│PostgreSQL│ Google    │ Telegram  │ AI-провайдеры     │
│ (asyncpg)│ Calendar  │ MTProto + │ OpenAI / Anthropic│
│ 19 моделей│ OAuth2   │ Bot API   │ / Gemini          │
│          │           │           │                   │
│          │ Garmin    │ Job APIs  │                   │
│          │ Connect   │ Adzuna /  │                   │
│          │           │ SerpAPI   │                   │
└──────────┴───────────┴───────────┴──────────────────┘

Ключевые возможности

Технические решения

ЗадачаРешение
Мульти-провайдерный AI (OpenAI, Anthropic, Gemini)Паттерн адаптера с фабрикой; API-ключи зашифрованы Fernet
Чтение Telegram-каналовДвойной подход: Telethon (MTProto) для чтения + Bot API для уведомлений
Rate limiting Garmin (нет публичного API)Circuit breaker с экспоненциальным откатом (15→120 мин), таблица логов синхронизации
Изоляция демо-данныхТри уровня защиты: фильтр в запросах БД, dependency в API, флаг на фронтенде
Фоновое планированиеAPScheduler с timezone для polling, генерации дайджестов и синхронизации

Технологический стек

СлойТехнология
ФронтендNext.js 16 (App Router), React 19, TypeScript
СтилизацияTailwind CSS v4, shadcn/ui
СостояниеTanStack React Query, React Table
ГрафикиRecharts
БэкендFastAPI, Python 3.12
ORMSQLAlchemy 2.0 (async), Alembic
База данныхPostgreSQL (asyncpg)
АвторизацияJWT + bcrypt, ролевая модель доступа
AIOpenAI, Anthropic, Google Gemini (мульти-провайдер)
ИнтеграцииGoogle Calendar, Telegram (Telethon + Bot), Garmin Connect
ДеплойVercel (фронтенд), Railway (бэкенд + БД)
ТестированиеVitest, Pytest