Some checks failed
- Add buyPrice and buyDate to positions for PnL tracking - Implement backend analytics service for real-time portfolio performance - Add server-side security screener with filtering, sorting, and pagination - Update frontend UI with analytics summaries and sortable screener table - Optimize MOEX API calls with batch fetching and portfolio-specific caching - Add unit tests for analytics and screener services
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%