# 🏎️ Karting Dashboard Wiki

Welcome to the comprehensive documentation for the Karting Dashboard - a full-stack karting lap time tracking and analytics platform.

## 📚 Table of Contents

### Getting Started
- **[Getting Started Guide](Getting-Started)** - Installation, prerequisites, and quick start
- **[Architecture Overview](Architecture)** - System design, tech stack, and project structure

### Development Guides
- **[Frontend Guide](Frontend-Guide)** - Vue 3, TypeScript, components, and state management
- **[Backend Guide](Backend-Guide)** - Laravel API, controllers, services, and models
- **[Database Schema](Database-Schema)** - Complete database structure and relationships
- **[API Reference](API-Reference)** - Complete API endpoint documentation

### Workflows & Processes
- **[Development Workflow](Development-Workflow)** - Testing, linting, code quality, and CI/CD
- **[Deployment Guide](Deployment-Guide)** - Production deployment and configuration
- **[Contributing Guidelines](Contributing)** - How to contribute to the project

### Reference & Troubleshooting
- **[Security Best Practices](Security)** - Authentication, authorization, and security guidelines
- **[Troubleshooting Guide](Troubleshooting)** - Common issues and solutions
- **[Features & Roadmap](Features-Roadmap)** - Current features and future plans
- **[Architecture Decisions](Architecture-Decisions)** - ADRs documenting key technical decisions

## 🎯 What is Karting Dashboard?

Karting Dashboard is a comprehensive platform for tracking and analyzing go-kart racing lap times. It provides:

- **📧 EML Upload**: Automated parsing of karting session emails from multiple track providers
- **📊 Analytics**: Real-time lap time analytics, performance trends, and comparative statistics
- **👥 Multi-Driver Support**: Track multiple drivers with personalized dashboards and statistics
- **🏁 Multi-Track Support**: Support for various karting tracks with automated track detection
- **🏆 Trophy Case**: Personal bests, track records, and achievements
- **👥 Social Features**: Friend system to compare performance with other drivers
- **🔐 User Management**: Secure authentication with role-based access control

## 🚀 Quick Links

### For Users
- [How to upload session data](Getting-Started#uploading-session-data)
- [Understanding your statistics](Frontend-Guide#statistics-views)
- [Managing your drivers](Frontend-Guide#driver-management)

### For Developers
- [Setting up development environment](Getting-Started#development-setup)
- [Running tests](Development-Workflow#testing)
- [Making your first contribution](Contributing)

### For Administrators
- [Deployment instructions](Deployment-Guide)
- [Security configuration](Security)
- [Monitoring and health checks](Backend-Guide#health-monitoring)

## 📊 Project Statistics

- **554 Backend Tests** (PEST/PHPUnit) - All passing ✅
- **407 Frontend Tests** (Vitest) - All passing ✅
- **29 Python Tests** (pytest) - All passing ✅
- **Total: 990 Tests** with comprehensive coverage

### Tech Stack
- **Frontend**: Vue 3.5 + TypeScript 5.9 + Vite 6 + Pinia
- **Backend**: Laravel 12 + PHP 8.2 + Sanctum
- **Database**: MySQL 8.0
- **Testing**: PEST, Vitest, pytest
- **CI/CD**: GitHub Actions + SonarCloud

## 🤝 Community

- **GitHub Repository**: [TheMaksoo/karting](https://github.com/TheMaksoo/karting)
- **Issue Tracker**: [GitHub Issues](https://github.com/TheMaksoo/karting/issues)
- **License**: MIT

## 📖 Additional Resources

- [README.md](https://github.com/TheMaksoo/karting/blob/main/README.md) - Project overview and quick start
- [CONTRIBUTING.md](https://github.com/TheMaksoo/karting/blob/main/CONTRIBUTING.md) - Contributing guidelines
- [TODO.md](https://github.com/TheMaksoo/karting/blob/main/TODO.md) - Development roadmap and improvements
- [CHANGELOG.md](https://github.com/TheMaksoo/karting/blob/main/CHANGELOG.md) - Version history and changes

---

*Last Updated: February 2026*
