jonas0711 haandbold-data-projekt .cursorrules file for Python

# Håndbold Statistik Projekt Regler

Always start answers with: "WUHUUU"

## 1. Projekt Oversigt
```markdown
# Projekt Detaljer
- Projektnavn: Håndbold Statistik
- Beskrivelse: Python-baseret system til processering og analyse af håndboldkampe
- Primære Teknologier:
  - Backend: Python
  - Database: SQLite
  - Web Interface: Flask
  - Data Processering: PyPDF2, Papaparse
  - AI Integration: DeepSeek API
- Primær Funktionalitet: PDF-parsing, kampstatistik analyse, web visualisering
```

## 2. Kodningsstandarder
```markdown
# Kodningsstandarder
## Navngivningskonventioner
- Python filer: snake_case (f.eks. process_output.py, scrape_matches.py)
- Funktioner: snake_case (f.eks. convert_pdf_to_text, get_match_data)
- Klasser: Undgås (funktionel tilgang foretrækkes)
- Konstanter: UPPERCASE_SNAKE_CASE (f.eks. MAX_FILE_SIZE)

## Fil Struktur Retningslinjer
C:.
├───CSV
├───Databases
├───Downloads
├───Error_Appeared
├───logs
├───Not_Processed
├───Processed
├───website
│   ├───static
│   └───templates
└───__pycache__

- Hovemapper:
  - /: Primære processerings-scripts
  - /website: Web interface komponenter
  - /Databases: SQLite databaser
  - /logs: Logging filer
  - /Not_Processed: Ubehandlede PDF'er
  - /Processed: Behandlede PDF'er
```

## 3. AI Interaktions Retningslinjer
```markdown
# AI Interaktions Protokoller
## Generelle Kodningsinstruktioner
- Prioriter læsbar og vedligeholdelsesvenlig kode
- Anvend type hints (typing module)
- Implementer omfattende fejlhåndtering
- Lav altid print statements til at logge fejl for at kunne se hvor fejl opstår
- Dokumenter kompleks logik med docstrings
- Følg PEP 8 standarder

## Prompt Engineering
- Beskriv specifikke dataprocesseringsudfordringer
- Angiv forventede input/output formater
- Referencér eksisterende projektkode
- Fokuser på modulær og genbrugelig kode
```

## 4. Sikkerheds- og Miljøkonfiguration
```markdown
# Sikkerheds Regler
## Miljøvariabel Håndtering
- Brug .env fil til API nøgler
- Gem aldrig sensitive data i kildekode
- Tilføj .env til .gitignore
- Anvend python-dotenv til indlæsning

## API Interaktion
- Implementer retry mekanismer ved API fejl
- Log API kald og fejl
- Tilføj timeout og fejlhåndtering
- Beskyt mod rate limiting
```

## 5. Ydelsesoptimering
```markdown
# Ydelsesoptimering
## Database Optimering
- Anvend indekser på hyppigt forespurgte kolonner
- Batch indsættelser i stedet for enkeltindsættelser
- Begræns returneringsstørrelse ved store datasæt
- Anvend SQLite connection pooling

## Data Processering
- Anvend generatorer ved store datasæt
- Implementer lazy loading
- Begræns hukommelsesforbruget
- Anvend Papaparse med optimerede indstillinger
```

## 6. Test og Kvalitetssikring
```markdown
# Test og Kvalitetssikring
## Test Krav
- Unit tests for kritiske funktioner
- Dækningsgrad over 70%
- Anvend pytest
- Test grænsetilfælde i data processering
- Validér PDF parsing

## Kodekvalitet
- Anvend flake8 til statisk kodekontrol
- Brug type checking med mypy
- Undgå print statements i produktion
- Fuld fejlhåndtering i alle funktioner
```

## 7. Deployment og Kontinuerlig Integration
```markdown
# Deployment Konfiguration
## Kontinuerlig Integration
- Automatiseret test ved hver commit
- Verificér afhængigheder
- Byg og test på tværs af Python versioner

## Deployment Strategi
- Dokumentér installationstrin
- Anvend requirements.txt
- Understøt virtuelle miljøer
- Validér miljøopsætning
```

## 8. AI Agent Specifikke Instruktioner
```markdown
# AI Agent Instruktioner
## Flerfilshåndtering
- Vedligehold konsistent projektkontekst
- Opdatér relaterede filer ved ændringer
- Generer beskrivende commit beskeder
- Respektér eksisterende projektstruktur

## Terminal Interaktioner
- Anvend pip til pakehåndtering
- Foretræk reproducerbare kommandoer
- Log vigtige handlinger
```

## 9. Projektspecifikke Retningslinjer
```markdown
# Specifikke Håndbold Statistik Regler
- Standardisér holdnavne konsekvent
- Validér data ved hver transformation
- Gem rådata uændret
- Log alle datarensnings- og standardiseringstrin
- Understøt flere datakilder (PDF, web scraping)
```

## Tilpasning og Udvidelse
```markdown
# Tilpasningsnotes
- Dette dokument er dynamisk
- Gennemgå kvartalsvist
- Tilpas efter projektets evolution
- Implementér teamfeedback
```
flask
html
python
sqlite

First Time Repository

Python

Languages:

HTML: 29.3KB
Python: 100.1KB
Created: 7/26/2024
Updated: 1/15/2025

All Repositories (1)