Μετάβαση στο περιεχόμενο

Πρόγραμμα Σπουδών

Η σελίδα Προγράμματος Σπουδών είναι το δομημένο υλικό μάθησής σου — το "βιβλίο" έναντι του οποίου πραγματοποιούνται οι συνεδρίες σου. Είναι ένα προαιρετικό αλλά ισχυρό επίπεδο πάνω από τις ελεύθερες συνεδρίες ΤΝ.

Τι είναι το πρόγραμμα σπουδών

Ένα πρόγραμμα σπουδών είναι ένα δένδρο θεμάτων και μια επίπεδη λίστα μαθημάτων, που ανήκουν στον ίδιο μαθητή. Μπορείς να έχεις πολλαπλά προγράμματα παράλληλα ("Ισπανική γραμματική", "Spring Boot για Java devs", "Βασικές αρχές lead κιθάρας").

  • Τα Θέματα σχηματίζουν ένα δένδρο — κεφάλαια και υποκεφάλαια. Κάθε θέμα έχει τίτλο, προαιρετική περιγραφή και αναφορά γονέα. Το κουμπί "Προσθήκη υποθέματος" δημιουργεί παιδί.
  • Τα Μαθήματα είναι επίπεδα κάτω από το πρόγραμμα σπουδών. Κάθε ένα έχει τίτλο και σώμα περιεχομένου πλούσιου κειμένου. Χρησιμοποίησέ τα για γραπτό υλικό: σημειώσεις, περιλήψεις, φύλλα ασκήσεων.

Δημιουργία προγράμματος σπουδών

Η σελίδα Προγράμματος Σπουδών παραθέτει κάθε πρόγραμμα που κατέχεις. Η φόρμα "Δημιουργία προγράμματος" λαμβάνει τίτλο + προαιρετική περιγραφή + προαιρετική γλώσσα· το πάτημα Δημιουργία ανοίγει αμέσως την προβολή νέου προγράμματος.

Το δένδρο θεμάτων

Η αριστερή πλευρά της προβολής προγράμματος δείχνει το δένδρο θεμάτων, αναδιατάξιμο με drag-and-drop (φιλικό για αφή σε κινητό επίσης). Κάνε κλικ σε θέμα για εμβάθυνση· η ιχνηλασία κάτω από την κεφαλίδα δείχνει τη διαδρομή πίσω στη ρίζα.

  • Προσθήκη θέματος στο βασικό επίπεδο — αδερφός κάθε υπάρχοντος θέματος κορυφαίου επιπέδου.
  • Προσθήκη υποθέματος κάτω από το τρέχον θέμα.
  • Μετονομασία με κλικ στον τίτλο σε λειτουργία επεξεργασίας.
  • Διαγραφή αφαιρεί το θέμα ΚΑΙ τους απογόνους του (η λειτουργία Dexie χειρίζεται τη διαδοχική διαγραφή σε μια ενιαία συναλλαγή· η λειτουργία API αναθέτει στο backend).

Το δένδρο είναι απλώς μεταδεδομένα· τα θέματα δεν έχουν δικό τους περιεχόμενο. Το περιεχόμενο βρίσκεται στα μαθήματα.

Μαθήματα

Η δεξιά πλευρά της προβολής προγράμματος είναι η λίστα μαθημάτων, ταξινομημένη κατά order_index. Κάθε γραμμή δείχνει τον τίτλο μαθήματος και ένα απόσπασμα του περιεχομένου του· το κλικ ανοίγει τον επεξεργαστή μαθήματος.

Ο επεξεργαστής μαθημάτων είναι TipTap πλούσιο κείμενο (από v1.14.0): έντονα / πλάγια / υπογράμμιση / διαγραφή, κεφαλίδες (H1-H3), λίστες κουκκίδων + αριθμημένες + εργασιών, blockquote, ενσωματωμένος κώδικας, μπλοκ κώδικα με επισήμανση σύνταξης lowlight σε 11 γλώσσες (bash / css / html / java / javascript / json / markdown / python / sql / typescript / yaml), σύνδεσμοι, στοίχιση κειμένου, επισήμανση, αναίρεση / επανάληψη, μέτρηση χαρακτήρων. Η γραμμή εργαλείων είναι φιλική για κινητά με οριζόντια κύλιση + στόχοι αφής 40px.

Οι περιγραφές προγράμματος, σημειώσεις συνεδρίας και περιεχόμενο μαθημάτων χρησιμοποιούν όλα τον ίδιο επεξεργαστή. Οι εξαγωγές Markdown / PDF περνούν μέσω renderStoredContent που διατρέχει το δένδρο εγγράφου TipTap και εκπέμπει GFM Markdown· το απλό κείμενο από πριν την v1.14.0 περνά αυτούσιο.

Πώς τα προγράμματα συνδέονται με τις συνεδρίες

Οι συνεδρίες μπορούν να εφοδιαστούν από εισαγωγή ιστορικού συνομιλίας ή από μηδέν. Ο αναλυτής συνομιλίας (/api/imports) εξάγει ένα πεδίο suggested_curriculum· ένα κλικ στο αναλυμένο import εφοδιάζει ένα Πρόγραμμα Σπουδών με θέματα + μαθήματα που ταιριάζουν με τα κενά που εντόπισε η ΤΝ.

Η ΤΝ συνεδρίας δεν τραβά (ακόμα) αυτόματα μεμονωμένο περιεχόμενο μαθήματος στην προτροπή συστήματος — αυτό τηρείται σκόπιμα μέχρι να σταθεροποιηθεί η μορφή ενσωμάτωσης πρόγραμμα-ΤΝ.

Συμπεριφορά ανά λειτουργία αποθήκευσης

Τόσο το ApiStorage όσο και το DexieStorage υλοποιούν CRUD προγράμματος. Στην Τοπική λειτουργία τα δεδομένα βρίσκονται στο IndexedDB και επιβιώνουν επαναφορτώσεων browser όσο δεν σβήνεις τα δεδομένα ιστότοπου. Στη Λειτουργία Διακομιστή τα δεδομένα βρίσκονται στη βάση SQLite του FastAPI backend.

Πώς λειτουργούν οι λειτουργίες αποθήκευσης