Une application moderne et élégante de prise de notes développée en Rust avec une interface utilisateur en mode sombre, offrant une expérience fluide et intuitive pour gérer vos notes quotidiennes.
- 🌙 Interface en mode sombre - Plusieurs thèmes personnalisables (Sombre, Bleu, Vert, Clair) pour un confort visuel optimal
- 📝 Création et édition de notes - Éditeur de texte riche avec support de 35+ lignes en mode normal
- 💾 Sauvegarde automatique - Sauvegarde automatique après 3 secondes d'inactivité
- 🔍 Recherche avancée - Recherche par texte, par tags ou par date
- 🏷️ Système de tags - Organisez vos notes avec des tags personnalisés
- 📊 Statistiques - Suivez le nombre de notes, mots et caractères
- 📄 Support Markdown - Aperçu et formatage Markdown pour vos notes
- 📜 Historique des versions - Jusqu'à 10 versions précédentes de chaque note avec restauration
- 📤 Export/Import - Exportez et importez vos notes au format JSON
- ⌨️ Raccourcis clavier - Navigation rapide avec Ctrl+S, Ctrl+N, F11, Delete
- ⛶ Mode plein écran - Focus total sur l'édition avec F11
- 🗑️ Confirmation avant suppression - Protection contre les suppressions accidentelles
- Tri intelligent - Triez vos notes par date (récentes/premières) ou par titre (A-Z/Z-A)
- Aperçu amélioré - Visualisez un aperçu de chaque note dans la liste
- Compteur en temps réel - Affichez le nombre de mots et caractères pendant la saisie
- Recherche multi-critères - Combinez recherche par texte, tags et dates
- Interface responsive - Panneau latéral redimensionnable pour s'adapter à vos besoins
- Rust et Cargo installés sur votre système
- Pour installer Rust : https://www.rust-lang.org/tools/install
- Windows : MSYS2 ou Visual Studio Build Tools (pour la compilation)
- Linux : Compilateur C++ et dépendances système
- macOS : Xcode Command Line Tools
cargo run --releasecargo build --releaseL'exécutable sera dans :
- Windows :
target/release/prisedenote.exe - Linux :
target/release/prisedenote(compiler sur Linux aveccargo build --release) - macOS :
target/release/prisedenote(compiler sur macOS aveccargo build --release)
Pour compiler pour Linux depuis Windows, vous avez plusieurs options :
wsl
cd /mnt/c/Users/mika/Desktop/prisedenote
cargo build --releasedocker run --rm -v "%cd%":/app -w /app rust:latest cargo build --releasecargo build --release- Cliquez sur le bouton "➕ Nouvelle Note" dans le panneau de gauche
- Ou utilisez le raccourci clavier Ctrl+N
- Saisissez un titre et le contenu de votre note
- Manuel : Cliquez sur "💾 Sauvegarder" ou appuyez sur Ctrl+S
- Automatique : La note est sauvegardée automatiquement après 3 secondes d'inactivité
- Utilisez la barre de recherche en haut du panneau gauche
- Recherchez par texte dans le titre ou le contenu
- Recherchez par tag en utilisant le champ "🏷️"
- Recherchez par date en utilisant le champ "📅"
- Dans l'éditeur, utilisez le champ "Tags"
- Séparez les tags par des virgules :
travail, important, projet - Les tags apparaissent dans la liste des notes
| Raccourci | Action |
|---|---|
Ctrl+S |
Sauvegarder la note actuelle |
Ctrl+N |
Créer une nouvelle note |
F11 |
Basculer en mode plein écran |
Delete |
Supprimer la note actuelle (avec confirmation) |
- Ouvrez le menu "⚙️ Options" dans le panneau gauche
- Cliquez sur "📤 Exporter" pour sauvegarder toutes vos notes en JSON
- Cliquez sur "📥 Importer" pour charger des notes depuis un fichier JSON
- Ouvrez le menu "⚙️ Options"
- Sélectionnez un thème : Sombre, Bleu, Vert ou Clair
- Le thème est appliqué immédiatement
- Appuyez sur F11 ou cliquez sur "⛶ Plein écran"
- Le panneau latéral disparaît pour un focus total sur l'édition
- Appuyez à nouveau sur F11 pour revenir à la vue normale
- Ouvrez une note qui a été modifiée
- En bas de l'éditeur, cliquez sur "📜 Historique"
- Consultez jusqu'à 10 versions précédentes
- Cliquez sur "Restaurer" pour revenir à une version antérieure
Les notes sont automatiquement sauvegardées dans le fichier notes.json dans le répertoire de l'application. Ce fichier contient toutes vos notes au format JSON, ce qui permet :
- Sauvegarde facile - Copiez simplement le fichier
notes.json - Portabilité - Transférez vos notes entre différentes installations
- Backup - Faites des sauvegardes régulières de ce fichier
prisedenote/
├── Cargo.toml # Configuration du projet et dépendances
├── README.md # Documentation principale
├── .gitignore # Fichiers ignorés par Git
├── assets/ # Ressources visuelles
│ ├── interface-preview.svg
│ ├── logo.svg
│ └── README.md
└── src/
└── main.rs # Code source principal de l'application
La documentation complète du code source Rust est disponible et peut être générée avec :
# Générer la documentation
cargo doc --no-deps
# Ouvrir la documentation dans le navigateur
cargo doc --open --no-depsLa documentation générée se trouve dans target/doc/prisedenote/index.html et contient :
- Documentation de toutes les structures (
Note,NoteVersion,PriseDeNoteApp, etc.) - Documentation de toutes les fonctions et méthodes
- Documentation des types et enums
- Navigation interactive entre les modules
- DIMENSIONS.md - Dimensions détaillées de l'interface utilisateur
- JSON-STORAGE.md - Documentation complète du système d'enregistrement JSON
- eframe - Framework pour créer des applications natives avec egui
- egui - Bibliothèque d'interface utilisateur immédiate (immediate mode GUI)
- serde / serde_json - Sérialisation et désérialisation JSON
- chrono - Gestion des dates et heures
- pulldown-cmark - Parser Markdown
- rfd - Dialogues de fichiers natifs
- Panneau latéral : 400 pixels de largeur par défaut, redimensionnable
- Zone d'édition : 35 lignes en mode normal, 40 lignes en mode plein écran
- Fenêtre : 1400x900 pixels par défaut
- Thèmes : 4 thèmes prédéfinis avec personnalisation des couleurs
Chaque note contient :
- Titre : Texte libre
- Contenu : Texte multiligne avec support Markdown
- Tags : Liste de tags séparés par des virgules
- Date de création : Timestamp automatique
- Date de modification : Mise à jour automatique
- Historique : Jusqu'à 10 versions précédentes
- Données locales : Toutes vos notes sont stockées localement sur votre machine
- Pas de connexion réseau : L'application ne nécessite aucune connexion Internet
- Format ouvert : Les notes sont au format JSON, facilement lisible et portable
Les contributions sont les bienvenues ! N'hésitez pas à :
- Ouvrir une issue pour signaler un bug ou proposer une fonctionnalité
- Créer une pull request pour améliorer le code
- Partager vos idées et suggestions
Ce projet est disponible sous licence libre. Consultez le fichier de licence pour plus de détails.
Développé avec ❤️ en Rust
Profitez de votre application de prise de notes ! 📝✨