описание
О проекте:
Разработка и поддержка дейтинг веб‑приложения на React с интеграцией в Telegram Mini-app и PWA.
Проект использует Feature-Sliced Design, WebSocket для диалогов.
Обязательные требования:
Технологический стек:
• Глубокая практика с React 18+ и TypeScript 5+ (минимум 3 года);
• Знание Vite 5+ или аналогичных сборщиков (Webpack, Rollup);
• Практика с Feature-Sliced Design или модульной архитектурой;
• Управление состоянием: Zustand, Redux Toolkit или аналоги;
• Работа с серверным состоянием: TanStack React Query (React Query) 5+ с персистентностью кеша;
• WebSocket: STOMP.js, Socket.io или аналоги (реал‑тайм коммуникация);
• Формы: Formik, React Hook Form; валидация: Yup, Zod;
• UI‑библиотеки: Chakra UI или аналоги;
• Стилизация: CSS-in-JS (Emotion, styled-components), препроцессоры (Sass/SCSS), CSS Modules;
• PWA: Service Workers, манифесты, стратегии кеширования;
• Интернационализация: i18next, react-i18next, работа с переводами;
• Роутинг: React Router DOM 6+, навигация, защищённые маршруты;
• REST API: работа с OpenAPI, генерация TypeScript‑клиентов из схем;
• Инструменты: Git, ESLint 9+, Prettier, Husky, lint-staged;
• Code review, работа в команде, понимание CI/CD.
Telegram Mini-app:
• Практика разработки Telegram Mini-app;
• Валидация данных от Telegram;
• Интеграция Telegram Stars для платежей, работа с платежными методами Telegram;
• API Telegram: управление интерфейсом Mini-app;
• Адаптация UI под ограничения Mini-app, работа с viewport и безопасными зонами.
Будет преимуществом:
• Анимации: Framer Motion, React Spring или аналоги;
• Оптимизация производительности: React.memo, useMemo, useCallback, code splitting, lazy loading;
• Мобильная адаптация: responsive design, touch‑жесты, работа с viewport;
• Работа с медиа: обработка изображений и видео;
• Понимание архитектуры микросервисов и взаимодействия с несколькими API.
Технические детали проекта:
Архитектура:
• Feature-Sliced Design: entities, features, widgets, pages, shared;
• Модульная структура с изолированными слоями;
• Типизация на TypeScript, строгие правила ESLint.
Инфраструктура:
• Vite 5.2 с плагинами;
• Раздельные сборки: development, staging, production;
• Автогенерация типов для SCSS‑модулей (typed-scss-modules);
• Генерация API‑клиентов из OpenAPI схем.
Интеграции:
• WebSocket через STOMP.js и SockJS для мессенджера и уведомлений;
• Firebase для аналитики;
• Telegram Web App SDK для Mini-app;
• Множественные API‑сервисы (core, dialogs, payments, media и др.).
Управление состоянием:
• Zustand для локального и глобального состояния;
• TanStack React Query с персистентностью для серверного состояния;
• Синхронизация данных в реалтайме через WebSocket.
Что предстоит делать:
• Разработка новых фич и развитиие текущего продукта для веб и Telegram Mini-app;
• Рефакторинг и оптимизация существующего кода;
• Интеграция с Telegram Web App API;
• Работа с WebSocket для внутреннего мессенджера;
• Оптимизация производительности и UX;
• Code-review и менторинг команды.