Это демонстрационное приложение социальной сети, разработанное для серии вебинаров. Проект состоит из микросервисного бэкенда на NestJS и современного фронтенда на Next.js.
Приложение включает в себя следующие возможности:
- Аутентификация: Вход и регистрация пользователей.
- Лента новостей: Просмотр постов, поддержка медиафайлов.
- Профили: Управление профилем пользователя, аватары, биография.
- Чат: Обмен сообщениями в реальном времени.
- Файловое хранилище: Загрузка и хранение файлов (S3/MinIO).
Репозиторий разделен на две основные части:
backend/: Микросервисная архитектура на NestJS (7 сервисов), использующая PostgreSQL и Prisma.frontend/: Клиентское приложение на Next.js (App Router) с использованием React, Tailwind CSS и Shadcn UI.
Для запуска полного стека приложения (бэкенд + фронтенд) выполните следующие шаги:
Предварительная настройка:
Замените registry_name на имя вашего репозитория в Artifact Registry во всех Dockerfile и скриптах деплоя.
Деплой базовых образов (обязательно):
cd backend
yarn deploy:baseЭта команда соберет и отправит базовые образы (base-build и base-run) в реестр registry_name.cr.cloud.ru.
Перейдите в директорию backend, установите зависимости, настройте переменные окружения и запустите сервисы:
cd backend
yarn
cp env.example .env
yarn startЭто поднимет все микросервисы, базы данных PostgreSQL и MinIO.
В новом терминале перейдите в директорию frontend, установите зависимости и запустите сервер разработки:
cd frontend
yarn install
cp env.example .env.local
# Настройте .env.local при необходимости
yarn devПриложение будет доступно по адресу http://localhost:3007.
- Framework: NestJS
- Database: PostgreSQL, Prisma ORM
- Microservices: TCP transport
- Storage: MinIO (S3 compatible)
- Framework: Next.js 16
- UI: React 19, Shadcn UI, Tailwind CSS v4
- State: React Query
- Forms: React Hook Form, Zod
MIT