shiping
An interview assistant and an exam assistant that uses AI to provide solution ideas in real time during 「面试」 or 「在线考试」.
AI translation
Cahutin aide les enseignants de l'école primaire à faire leurs fiches, affiches, étiquettes et pages de cahier de vie. Gratuit, libre et hors ligne : les photos des élèves ne quittent pas l'ordinateur
Translation pending
EducationRust · TypeScriptGitHub @e-banOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Cahutin : fiches, affiches, étiquettes et cahier de vie pour l'école, simples, libres et hors ligne
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Cahutin aide les enseignants de l'école primaire à faire leurs fiches, leurs affiches, leurs étiquettes et leurs pages de cahier de vie : on part d'un modèle, on dépose ses photos, on écrit, et la page est prête à imprimer. Gratuit, libre, et hors ligne : aucune donnée ne quitte l'ordinateur.
Site : e-ban.github.io/cahutin
Cahutin est en bêta : il est utilisé en classe, mais il peut encore rester des défauts. Les retours sont bienvenus, par « Aide > Signaler un problème » ou par une issue.
Le plus simple : Cahutin sur le Microsoft Store. Il s'installe en un clic, et le Store le met à jour.
Ou avec l'installeur :
Cahutin_<version>_x64-setup.exe de la dernière version.Sur la page des téléchargements, deux paquets pour PC 64 bits :
Cahutin_<version>_amd64.AppImage, pour toutes les distributions : le rendre exécutable (chmod +x Cahutin_*.AppImage), puis le lancer.Cahutin_<version>_amd64.deb, pour Debian, Ubuntu et leurs dérivées : sudo apt install ./Cahutin_<version>_amd64.deb.Sous Linux, « Exporter en PDF » n'existe pas : utiliser « Imprimer », puis « Enregistrer en PDF ».
Cahutin est le nouveau nom de Carnet. Installez Cahutin : au premier lancement, il reprend vos modèles personnels et vos polices ajoutées, et vos documents .carnet s'ouvrent comme avant. Vous pouvez ensuite désinstaller Carnet.
Chaque version publie les empreintes SHA256SUMS et leur signature GPG SHA256SUMS.asc. La marche à suivre, l'équipe et la signature de l'installeur Windows sont décrites dans la politique de signature (Code signing policy).
Au premier lancement, Cahutin demande s'il doit vous prévenir quand une nouvelle version sort (réglable ensuite dans le menu Aide ou les Préférences). Si vous acceptez, un bandeau l'annonce avec un lien vers la page des téléchargements. Pour changer de version, installer la nouvelle par-dessus l'ancienne : les documents et les modèles personnels sont conservés.
Toutes les données restent sur l'ordinateur. Cahutin fonctionne sans internet, sans compte et sans serveur :
En détail :
api.github.com). Rien d'autre n'est envoyé (ni document, ni identifiant, ni information sur l'ordinateur) ; GitHub voit seulement l'adresse IP de la connexion, comme pour toute visite d'un site. L'interface elle-même n'a accès à aucune adresse distante.Documents/Cahutin/Classes, et sa photothèque dans Documents/Cahutin/Photos (photos sans lieu ni appareil ; seule la date de prise de vue est gardée). Les enfants présents sur une photo sont indiqués à la main : aucun visage n'est reconnu..carnet) contient ses propres photos.| Extension | Contenu |
|---|---|
.carnet | Carnet fait avec Cahutin : pages, photos, polices ajoutées dont la licence le permet. |
.carnet-modele | Modèle personnel, à copier dans %APPDATA%\fr.cahutin.app\modeles (Windows) ou ~/.local/share/fr.cahutin.app/modeles (Linux) sur un autre poste. |
.cahutin-classe | Liste d'une classe (prénoms, photos et autorisations), rangée dans Documents/Cahutin/Classes. |
Images (.png, .jpg, .webp, .svg) | Collection : dans Documents/Cahutin/Images ; on peut aussi y déposer des fichiers avec l'explorateur. Une image retirée n'est pas effacée : elle va dans le sous-dossier Retirées. Les thèmes sont notés dans themes.json, à côté des images. Posée sur une page, une image est copiée dans le carnet. |
phototheque.json | Photothèque d'une classe : dans Documents/Cahutin/Photos/<classe>, à côté des photos, les élèves présents et les activités de chacune. |
.odg | Export pour LibreOffice Draw. |
Cahutin est écrit en Rust (moteur et application Tauri 2) et en Svelte 5 (interface).
crates/carnet-core moteur : modèle de document, photos, polices, format .carnet, export ODG
src-tauri application : fenêtre, commandes, protocole des fichiers locaux
ui interface Svelte
assets polices, images OpenMoji et modèle de repérage des visages embarqués
docs recette Windows, feuille de route et capture d'écran
Prérequis : Rust stable, Node 26 ; sous Linux, les bibliothèques de WebKitGTK demandées par Tauri ; sous Windows, les Build Tools de Visual Studio (C++).
npm ci
npm run tauri dev # application en développement
npm test # tests de l'interface
cargo test --workspace # tests du moteur et de l'application
npm run tauri build # installeur Windows (sous Linux : -- --bundles appimage,deb)
Le banc de fidélité exporte des pages en ODG et les fait rendre par LibreOffice pour vérifier qu'elles sont identiques à l'écran (LibreOffice doit être installé) :
cargo test -p carnet-core --test odg_libreoffice -- --ignored --test-threads=1
cargo test -p carnet-core --test import_libreoffice -- --ignored --test-threads=1 # import par LibreOffice
Les types TypeScript de ui/src/lib/gen sont produits par le moteur (ts-rs) lors de cargo test.
ui/src/lib/tour.svelte.ts), astuces (ui/src/lib/tips.ts), bulles d'aide (ui/src/lib/hints.svelte.ts), et la fenêtre des nouveautés : une entrée en tête de RELEASES dans ui/src/lib/whatsNew.ts, ses captures dans assets/nouveautes/<version>/ ;site/index.html (publié par le workflow « Site » à l'envoi sur main).Cargo.toml ([workspace.package]) et package.json, puis lancer cargo check et npm install --package-lock-only pour mettre à jour Cargo.lock et package-lock.json.## Non publié de CHANGELOG.md en ## <version>.git tag -s v<version> -m "Cahutin <version> (bêta)" et git push origin main v<version>.Le workflow « Construction » lance les tests sous Windows et Linux, construit les installeurs et publie la release avec ses empreintes (SHA256SUMS) et la section du journal des versions. Une fois la release publiée, signer les empreintes : scripts/sign-release.sh v<version>. Il refuse un tag qui ne correspond pas à la version de l'application ou qui n'a pas de section dans CHANGELOG.md.
Microsoft Store : la CI construit aussi Cahutin_<version>_x64.msix (scripts/build-msix.ps1, manifeste dans packaging/msix), une version sans avis de nouvelle version (CAHUTIN_STORE=1) que le Store signe et met à jour. L'identité du paquet vient des variables du dépôt STORE_IDENTITY_NAME, STORE_PUBLISHER et STORE_PUBLISHER_DISPLAY (Partner Center > Gestion des produits > Identité du produit). À chaque version, envoyer l'artefact cahutin-msix-… du workflow dans une nouvelle soumission Partner Center.
Signalements, idées et code sont bienvenus : voir CONTRIBUTING.md et le code de conduite. Une faille de sécurité se signale en privé : voir SECURITY.md.
OFL.txt dans assets/fonts).Cahutin est un logiciel libre, sous Licence publique de l'Union européenne (EUPL) 1.2, texte officiel en français. Toute version modifiée et diffusée doit rester libre, sous la même licence ou une licence compatible.
Les images, les polices et les mots-clés fournis gardent leur propre licence (voir Mentions).