TRY-IT is an interactive learning platform that allows users to create and participate in real-time quizzes. Designed for teachers, trainers, and event hosts, it brings engagement and gamification to learning and assessments.
- π¨ Dynamic Quiz Engine: Create and host quizzes with real-time synchronization
- π± Cross-Platform Access: Join sessions from any device via browser
- π§ Gamification: Points system with live feedback (timers in development)
- π Advanced Analytics: Track participant performance and quiz statistics
- π Competitive Leaderboards: Real-time ranking during sessions
- π Telegram Alerts: Instant notifications for critical system events
- π Business Metrics: Track user registrations and quiz lifecycle events
A production instance is already available at https://tryit.selnastol.ru. You may use this hosted version or deploy your own instance for customization/development.
git clone https://github.com/IU-Capstone-Project-2025/Vanguard.git
cd Vanguard
cp .env.dev.example .env
# Without monitoring:
docker compose --env-file .env -f docker-compose.yaml -f docker-compose.dev.yaml up -d frontend
# With monitoring (Grafana/Prometheus):
docker compose --env-file .env -f docker-compose.yaml -f docker-compose.dev.yaml up -d --build
Access:
- Frontend: http://localhost:3000
- Grafana: http://localhost:3001
cp .env.prod.example .env
chmod +x setup.sh
./setup.sh # SSL setup
docker compose --env-file .env -f docker-compose.yaml -f docker-compose.prod.yaml up -d --build
Prerequisites:
- Helm 3.8+
- k8s cluster with nginx ingress controller, cert manager, and load balancer
- kubectl configured with cluster access
- Clone repository
cd charts/tryit
cp ../../.env.prod.example .env
export $(grep -v '^#' .env | xargs)
export DB_URL=$(eval echo "$DB_URL")
export TEST_DB_URL=$(eval echo "$TEST_DB_URL")
envsubst < values.yaml > values.processed.yaml
helm upgrade --install tryit . \
-f values.processed.yaml \
-n tryit \
--create-namespace
Test Coverage:
- Python: 80% integration tests (pytest)
- Go: Unit tests for critical components + integration/e2e tests
- Frontend: Cypress post-build and session flow tests
All run tests through CI pipeline.
Observability Suite:
- π Grafana: Unified dashboards for metrics/logs
- π Prometheus: Metrics collection with custom business KPIs
- π Loki + Promtail: Centralized logging (backend services only)
- π¨ Alertmanager: Telegram alerts for:
- System resources (CPU/RAM thresholds)
- Service throughput degradation
- Container failures
Planned Enhancements:
- Frontend error logging
- Quiz process metrics (completion rates, latency)
- User behavior analytics
Monitoring access is restricted to developers for security.