Техническая архитектура SmartDeal
Обзор
SmartDeal — это платформа для безопасных сделок на основе блокчейна, построенная как Telegram Mini App. Платформа обеспечивает создание и управление сделками с использованием эскроу-счетов в смарт-контрактах сети TON, сочетая современные веб-технологии, коммуникацию в реальном времени и блокчейн-интеграцию.
Платформа: Telegram Mini App (веб-приложение) Блокчейн: TON (The Open Network) Режим реального времени: Уведомления через WebSocket Хранилище: Децентрализованный IPFS
Общая архитектура системы
┌─────────────────────────────────────────────────────────────────┐
│ TELEGRAM │
│ (Mini App + Bot + Authentication) │
└────────────────────────────┬────────────────────────────────────┘
│
│ HTTPS + WebSocket
▼
┌─────────────────────────────────────────────────────────────────┐
│ ФРОНТЕНД ПРИЛОЖЕНИЕ │
│ (Next.js 14) │
│ │
│ • Интерфейс управления сделками │
│ • Интеграция с TON-кошельком │
│ • Обновления в реальном времени │
│ • Мультиязычность (RU/EN) │
└────────────────────────────┬────────────────────────────────────┘
│
│ REST API + WebSocket
▼
┌─────────────────────────────────────────────────────────────────┐
│ БЭКЕНД ПРИЛ ОЖЕНИЕ │
│ (Node.js + Express) │
│ │
│ • Аутентификация и авторизация │
│ • Бизнес-логика │
│ • Фоновые задачи │
│ • Трансляция событий в реальном времени │
└────────────────────────────┬────────────────────────────────────┘
│
┌────────────────────┼────────────────────┬───────────────┐
▼ ▼ ▼ ▼
┌──────────────┐ ┌──────────────────┐ ┌──────────────┐ ┌──────────┐
│ PostgreSQL │ │ TON Blockchain │ │ Telegram │ │ IPFS │
│ БД │ │ (Смарт-контракт) │ │ API │ │ (Pinata) │
└──────────────┘ └──────────────────┘ └──────────────┘ └──────────┘
Технологический стек
Фронтенд-технологии
- Next.js 14 — React-фреймворк с App Router для современных веб-приложений
- TypeScript — Типобезопасная разработка для надежности кода
- React 18 — Современная UI-библиотека с хуками
- Socket.IO Client — Коммуникация WebSocket в реальном времени
- TON Connect — Интеграция блокчейн-кошелька (@tonconnect/ui-react)
Бэкенд-технологии
- Node.js + Express — Масштабируемая серверная среда выполнения JavaScript
- TypeScript — Сквозная типобезопасность во всём стеке
- Prisma ORM — Типобезопасный доступ к базе данных PostgreSQL
- Socket.IO — Двунаправленная коммуникация в реальном времени
- TON SDK — Библиотека взаимодействия с блокчейном
Внешние сервисы
- Telegram Bot API — Аутентификация и функционал бота
- Telegram MTProto — Управление чатами и медиа
- TON Blockchain — Децентрализованные эскроу смарт-контракты
- IPFS (Pinata) — Децентрализованное хранилище файлов
Основные архитектурные принципы
1. Слоистая архитектура
Приложение следует чистой слоистой архитектуре для поддерживаемости и масштабируемости:
Слои фронтенда:
Telegram WebApp → Провайдеры контекста → Бизнес-компоненты → UI-компоненты
Слои бэкенда:
API Gateway → Аутентификация → Бизнес-логика → Доступ к данным → Внешние сервисы
2. Коммуникация в реальном времени
SmartDeal использует двухканальную коммуникацию:
- REST API — Стандартные запросы/ответы для операций с данными
- WebSocket (Socket.IO) — Обновления в реальном времени для сделок, уведомлений и чата
Это обеспечивает мгновенное отображение обновлений без перезагрузки страницы.
3. Многоуровневая безопасность
Три уровня аутентификации работают совместно:
- Telegram WebApp Auth — Проверка пользователя на уровне платформы
- JWT-токены — Безопасный доступ к API с истечением срока действия
- TON Wallet Proof — Криптографическое подтверждение владения кошельком
4. Блокчейн-интеграция
Все финансовые транзакции используют смарт-контракты блокчейна TON для:
- Безопасного хранения эскроу
- Автоматического разрешения сделок
- Прозрачной истории транзакций
- Низких комиссий и быстрых транзакций
Технические особенности
Что делает SmartDeal уникальным
Дизайн с акцентом на блокчейн:
- Каждая сделка обеспечена эскроу смарт-контракта
- Прозрачная, неизменяемая история транзакций
- Низкие комиссии через блокчейн TON
Всё в реальном времени:
- Мгновенные уведомления для всех событий
- Интеграция живого чата
- Динамические обновления UI без перезагрузки
Нативная интеграция с Telegram:
- Бесшовный опыт Telegram Mini App
- Не требуется отдельная регистрация
- Знакомый интерфейс для пользователей
Децентрализованное хранилище:
- IPFS обеспечивает постоянство файлов
- Нет единой точки отказа
- Устойчивость к цензуре
Типобезопасная разработка:
- Сквозной TypeScript
- Обнаружение ошибок во время компиляции
- Улучшенный опыт разработчика
Резюме
SmartDeal — это готовая к production блокчейн-платформа, которая сочетает:
✅ Современный веб-стек - Next.js 14 + Node.js + TypeScript ✅ Коммуникация в реальном времени - Обновления через WebSocket ✅ Безопасность блокчейна - Эскроу TON смарт-контракта ✅ Децентрализованное хранилище - Постоянство файлов IPFS ✅ Интеграция с Telegram - Нативный опыт Mini App ✅ Мультиязычность - Поддержка русского и английского ✅ Масштабируемая архитектура - Готова к горизонтальному масштабированию ✅ Типобезопасность - Сквозной TypeScript для надёжности
Архитектура разработана с учётом надёжности, безопасности и пользовательского опыта, сохраняя гибкость для будущего роста и улучшений.
Последнее обновление: Ноябрь 2024