French-Coach / models.py
Asma-F's picture
Deploy: French Coach app (MiniCPM4.1-8B ZeroGPU + React frontend)
4fd1234 verified
Raw
History Blame Contribute Delete
622 Bytes
from dataclasses import dataclass, field
from datetime import date, datetime
from typing import Optional
@dataclass
class Page:
id: str
user_id: str
title: str
date: date
raw_text: str
annotations: dict = field(default_factory=dict)
created_at: Optional[datetime] = None
@dataclass
class Exercise:
id: str
user_id: str
page_id: Optional[str]
kind: str # 'text' | 'dialogue' | 'visual' | 'pronunciation'
prompt: Optional[str] = None
model_answer: Optional[str] = None
content: dict = field(default_factory=dict)
created_at: Optional[datetime] = None