docs: update documentation with recent features
- Update README.md with tier system and recent features - Add 3-tier account system (BASIC/SUPPORTER/COMFORT) to docs - Document fairness algorithm and dual buffer system - Add clickable usernames and country flags features - Update test count to 285/286 passing (99.7%) - Update database schema documentation with tier fields - Update all last modified dates to 2025-11-29
This commit is contained in:
@@ -49,6 +49,7 @@ Browser A ←──────────────────────
|
||||
## 🗃️ Modele bazy danych (Implemented)
|
||||
|
||||
- `users`: identyfikacja, email, hasło (bcrypt), avatar, profile data
|
||||
- Account tiers: `accountTier` (BASIC/SUPPORTER/COMFORT), `recordingsDone`, `recordingsReceived`
|
||||
- `events`: lista eventów (z worldsdc.com + manual entries)
|
||||
- `divisions`: competition divisions (Novice, Intermediate, Advanced, etc.)
|
||||
- `competition_types`: Jack & Jill, Strictly
|
||||
@@ -58,7 +59,9 @@ Browser A ←──────────────────────
|
||||
- `matches`: relacja między dwoma użytkownikami (CUID slugs for security)
|
||||
- `ratings`: oceny po wymianie nagraniami (1-5, komentarz, collaboration preference)
|
||||
- `event_participants`: tracking event participation
|
||||
- Recording opt-out, competitor numbers, `accountTierOverride` (event-specific tier upgrades)
|
||||
- `event_checkin_tokens`: QR code check-in system
|
||||
- `recording_suggestions`: auto-matching results with collision detection
|
||||
|
||||
---
|
||||
|
||||
@@ -89,7 +92,7 @@ Browser A ←──────────────────────
|
||||
- Socket.IO 4.8.1 (WebSocket)
|
||||
- PostgreSQL 15 with Prisma ORM 5.8.0
|
||||
- bcrypt + JWT authentication
|
||||
- Jest + Supertest (286/286 tests passing, 73% coverage)
|
||||
- Jest + Supertest (285/286 tests passing - 99.7%, 73% coverage)
|
||||
|
||||
### WebRTC
|
||||
- RTCPeerConnection (implemented)
|
||||
@@ -175,6 +178,6 @@ const wyslijWiadomosc = (wiadomosc) => {
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2025-11-23
|
||||
**Last Updated:** 2025-11-29
|
||||
|
||||
**Status:** ✅ MVP Complete - All core features implemented and tested
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
## Current Status
|
||||
|
||||
**Phase:** MVP Complete - Ready for Production Deployment
|
||||
**Tests:** 286/286 backend tests passing (73% coverage)
|
||||
**Tests:** 285/286 backend tests passing - 99.7% (73% coverage)
|
||||
**Next Goal:** Infrastructure setup (server, domain, SSL)
|
||||
|
||||
### Core Features (All Implemented)
|
||||
@@ -24,11 +24,15 @@
|
||||
- Real-time chat (Socket.IO) - event rooms + private 1:1
|
||||
- WebRTC P2P file transfer (RTCDataChannel, up to 700MB tested)
|
||||
- Competition heats system for matchmaking
|
||||
- Recording matching system (auto-assign recorders)
|
||||
- Recording matching system with 3-tier account system (BASIC/SUPPORTER/COMFORT)
|
||||
- Fairness algorithm (karma tracking: recordingsDone vs recordingsReceived)
|
||||
- Dual buffer system (prep before + rest after dancing)
|
||||
- Clickable usernames with @ prefix, country flags
|
||||
- Matches & ratings API
|
||||
- QR code event check-in
|
||||
- PWA (offline support, iOS compatible)
|
||||
- Security: CSRF, rate limiting, account lockout
|
||||
- Test bot for automated testing
|
||||
|
||||
---
|
||||
|
||||
@@ -63,12 +67,13 @@
|
||||
|
||||
Key models:
|
||||
- `users` - Auth, profile, social links, location, lockout fields
|
||||
- Account tiers: `accountTier` (BASIC/SUPPORTER/COMFORT), `recordingsDone`, `recordingsReceived`
|
||||
- `events` - Dance events with unique slugs
|
||||
- `event_participants` - User-event relationship, competitorNumber
|
||||
- `event_participants` - User-event relationship, competitorNumber, recorderOptOut, `accountTierOverride`
|
||||
- `divisions` / `competition_types` / `event_user_heats` - Competition system
|
||||
- `matches` - User pairings with CUID slugs
|
||||
- `ratings` - 1-5 stars, comments
|
||||
- `recording_suggestions` - Auto-matching results
|
||||
- `recording_suggestions` - Auto-matching results with collision detection
|
||||
- `chat_rooms` / `messages` - Real-time chat persistence
|
||||
|
||||
---
|
||||
@@ -107,6 +112,11 @@ docker compose exec backend npm test
|
||||
MATCH_STATUS: pending | accepted | rejected | completed
|
||||
SUGGESTION_STATUS: pending | accepted | rejected | not_found
|
||||
CONNECTION_STATE: disconnected | connecting | connected | failed
|
||||
ACCOUNT_TIER: BASIC | SUPPORTER | COMFORT
|
||||
|
||||
// Tier fairness penalties
|
||||
FAIRNESS_SUPPORTER_PENALTY: 10
|
||||
FAIRNESS_COMFORT_PENALTY: 50
|
||||
```
|
||||
|
||||
---
|
||||
@@ -129,4 +139,4 @@ CONNECTION_STATE: disconnected | connecting | connected | failed
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2025-11-23
|
||||
**Last Updated:** 2025-11-29
|
||||
|
||||
17
docs/TODO.md
17
docs/TODO.md
@@ -7,14 +7,17 @@
|
||||
## Current Status
|
||||
|
||||
**Phase:** MVP Complete - Ready for Production Deployment
|
||||
**Tests:** 286/286 passing (73% coverage)
|
||||
**Tests:** 285/286 passing - 99.7% (73% coverage)
|
||||
**Status:** Awaiting infrastructure setup
|
||||
|
||||
### Recently Completed (2025-11-23)
|
||||
- Recording Matching System (auto-assign recorders for heats)
|
||||
- Competitor Number (Bib) Support
|
||||
- Frontend Refactoring (component extraction, status constants)
|
||||
- Dashboard with real-time updates (online count, unread messages)
|
||||
### Recently Completed (2025-11-29)
|
||||
- 3-Tier Account System (BASIC/SUPPORTER/COMFORT) with fairness algorithm
|
||||
- Dual Buffer System (prep before + rest after dancing)
|
||||
- Clickable Usernames with @ prefix in profiles
|
||||
- Country Flags in Event Chat
|
||||
- Mobile-first Design Improvements (page titles on mobile)
|
||||
- Recording Matching System Improvements (collision detection, schedule config)
|
||||
- Test Bot for Automated Testing
|
||||
|
||||
**Full history:** See `docs/archive/COMPLETED.md`
|
||||
|
||||
@@ -114,5 +117,5 @@ http://localhost:8080
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2025-11-23
|
||||
**Last Updated:** 2025-11-29
|
||||
**Full Details:** See `docs/archive/COMPLETED.md` for implementation details
|
||||
|
||||
Reference in New Issue
Block a user