Some checks failed
Backend: - AuthModule with register, login, logout, refresh, profile endpoints - JwtAuthGuard (global, opt-out via @Public) + RolesGuard (@Roles) - PrismaModule with SQLite via @prisma/adapter-libsql (Prisma 7) - Auth configuration in configuration.ts Frontend: - Auth context with session restoration via refresh cookie - Login, Register, Profile pages with ProtectedRoute - Auto-refresh on 401 with token rotation - API client refactored for auth headers Russian text: auth flows translated to Russian All text translated: auth pages, profile, layout, loading states
MoexVibe
Веб-приложение для анализа ценных бумаг Московской биржи (MOEX).
Tech Stack
- Backend: NestJS, TypeScript, OpenAPI (Swagger)
- Frontend: React, TypeScript, Vite, TanStack Query, lightweight-charts
- Infrastructure: Docker, docker-compose
Quick Start
# Install dependencies
npm install
# Start backend (http://localhost:3000)
npm run dev:backend
# Start frontend (http://localhost:5173)
npm run dev:frontend
Swagger UI: http://localhost:3000/api/docs
Docker
docker compose up --build
- Frontend: http://localhost:80
- Backend: http://localhost:3000
Tests
npm run test:backend
Project Structure
apps/
backend/ — NestJS API (single point of access to MOEX ISS)
frontend/ — React SPA with Vite
docs/
architecture/ — ADR documents and diagrams
openapi/ — OpenAPI specification
superpowers/ — Design specs and implementation plans
Description
Languages
TypeScript
97.7%
Shell
1.2%
JavaScript
0.9%
CSS
0.2%