Questo progetto automatizza la creazione di applicazioni di flashcard web interattive e autocontenute a partire da semplici file di testo.
_inbox/: Cartella di ingresso temporanea. Contiene i file.txtda processare. I file in questa cartella vengono archiviati (spostati) dopo una generazione avvenuta con successo.outputs/: Cartella di output. Contiene i progetti di flashcard generati. Ogni sottocartella è autocontenuta e include sia la web app (.html) sia il file sorgente (.txt) originale.src/: Contiene il codice sorgente per l'automazione.main.py: Lo script Python che orchestra l'intero processo.templates/flashcard_template.html: Il template HTML per la web app.
README.md: Questo file.requirements.txt: Dipendenze Python del progetto.
L'applicazione HTML creata è un'interfaccia di studio moderna e interattiva con le seguenti caratteristiche:
- Design Responsive: L'interfaccia si adatta automaticamente per una visualizzazione ottimale sia su desktop che su dispositivi mobili.
- Animazione 3D: Le card si girano con un'animazione fluida cliccando su di esse.
- Contatore Interattivo (Filtro Visualizzazione): Il contatore (es. "1 / 50 totali") è cliccabile e funge da selettore di modalità:
- Modalità "totali": Mostra tutte le card del set.
- Modalità "attive": Mostra solo le card contrassegnate come attive (con la stella).
- Stato Attivo/Inattivo (Stella): Cliccando sull'icona a forma di stella (★), è possibile contrassegnare o de-contrassegnare una card. Le card inattive vengono saltate quando si è in modalità "attive".
- Copia negli Appunti: L'icona a forma di clipboard (📋) permette di copiare istantaneamente la domanda e la risposta della card corrente in formato testo.
- Guida Integrata: Un pulsante di aiuto (
?) in alto a destra apre una finestra con la spiegazione di tutte le funzionalità.
Questo protocollo descrive i passaggi da seguire per generare una nuova applicazione di flashcard.
- Ispeziona la cartella
_inbox/: Cerca un file di testo (.txt) contenente le domande e le risposte. - Gestisci i file multipli: Se è presente più di un file, chiedi all'utente quale file specifico utilizzare.
- Gestisci l'assenza di file: Se la cartella è vuota, informa l'utente che non è possibile procedere e interrompi il workflow.
- Richiedi il nome del progetto: Poni all'utente la seguente domanda: "Qual è il nome del progetto per queste flashcard?"
- Memorizza la risposta: Conserva il nome fornito dall'utente (es. "Biologia Sistema Vestibolare") per utilizzarlo nello step successivo.
- Prepara il comando: Costruisci il comando per eseguire lo script Python
src/main.py. Il comando richiede due argomenti:- Il percorso del file di input individuato nella Fase 1.
- Il nome del progetto fornito dall'utente nella Fase 2 (racchiuso tra virgolette per gestire gli spazi).
- Esegui il comando: Lancia il seguente comando nel terminale dalla root del progetto:
Esempio Pratico:
python src/main.py "<percorso_file_input>" "<nome_progetto>"
Lo script creerà una cartella di progetto inpython src/main.py "_inbox/sistema_vestibolare.txt" "Sistema Vestibolare"
outputs/(es.outputs/sistema_vestibolare/) contenente sia il file.htmlgenerato sia una copia del file.txtsorgente.
-
Comunica il risultato: Informa l'utente che la generazione è completata e fornisci il percorso del file HTML generato (es.
outputs/sistema_vestibolare/sistema_vestibolare.html). -
Richiedi conferma: Chiedi all'utente di testare il file e di confermare che funzioni correttamente. Attendi la sua approvazione esplicita.
-
Archivia il file sorgente (dopo conferma): Una volta ricevuta la conferma dall'utente, sposta il file
.txtoriginale dalla cartella_inbox/alla cartella del progetto appena creata inoutputs/. Se lo script ha già copiato il file, puoi semplicemente eliminare il file originale da_inbox. Lo scopo è svuotare la cartella di ingresso.Comando Esempio (per eliminare il file da
_inbox):rm "_inbox/sistema_vestibolare.txt" -
Conferma il completamento: Comunica all'utente che il file sorgente è stato archiviato e il workflow è terminato.
Se desideri eseguire lo script manualmente:
- Prepara l'ambiente (solo la prima volta):
python -m venv venv source venv/bin/activate # Su Windows: venv\Scripts\activate # pip install -r requirements.txt # Se ci fossero dipendenze
- Aggiungi un file di testo con le tue domande e risposte nella cartella
_inbox/. Il formato deve essere: