Centralisez tous vos READMEs en un seul endroit.
Application desktop multiplateforme pour stocker, organiser et consulter les READMEs de vos projets GitHub.
Interface principale avec sidebar de navigation, rendu Markdown et thème sombre.
| Fonctionnalité | Description |
|---|---|
| Import GitHub | Colle une URL de dépôt pour récupérer le README automatiquement via l'API GitHub |
| Import en masse | Importe plusieurs READMEs depuis une organisation ou une liste de repos GitHub |
| Import local | Ouvre un fichier .md / .txt — le titre est détecté automatiquement |
| Rendu Markdown | Affichage rendu avec coloration syntaxique des blocs de code (highlight.js) |
| Vue brute | Accès au contenu Markdown source |
| Épingler | Clic droit → Épingler pour garder un projet en tête de liste |
| Multi-sélection | ⌘+clic pour sélectionner plusieurs projets et les supprimer en lot |
| Tri avancé | Par nom A→Z / Z→A, date de mise à jour, ancienneté, taille, ou ordre manuel (drag & drop) |
| Recherche | Filtrage en temps réel par nom, description ou tag |
| Tags | Organisation par tags avec filtre dans la sidebar |
| Couleurs d'accent | Couleur personnalisable par projet |
| Rafraîchir | Mise à jour du README depuis GitHub en un clic |
| Dupliquer | Copie rapide d'un projet existant |
| Token GitHub | Support d'un token personnel pour lever la limite de l'API (60 → 5000 req/h) |
| Stockage local | Toutes les données restent sur votre machine, aucune donnée envoyée en ligne |
| Menu natif | Menus Fichier / Édition / Aide intégrés à l'OS |
| Raccourci | Action |
|---|---|
⌘N |
Nouveau projet |
⌘O |
Ouvrir un fichier README local |
⌘I |
Importer depuis GitHub |
⌘D |
Dupliquer le projet sélectionné |
⌘/ |
Afficher l'aide |
⌘⌫ |
Supprimer le(s) projet(s) sélectionné(s) |
⎋ |
Fermer / Annuler |
Rendez-vous sur la page Releases et téléchargez le fichier correspondant à votre système.
.exe (installeur NSIS) ou .msiSi Windows SmartScreen s'affiche : clic "Informations complémentaires" → "Exécuter quand même"
.dmgSi macOS bloque l'app : clic droit sur l'app → Ouvrir → Ouvrir quand même
.AppImage et rends-le exécutable :chmod +x ReadmeVault_*.AppImage
./ReadmeVault_*.AppImage
.deb (Debian/Ubuntu) est également disponible.| Outil | Version minimale | Lien |
|---|---|---|
| Node.js | 18+ | nodejs.org |
| npm | 9+ | (inclus avec Node.js) |
| Rust | stable | rustup.rs |
| Tauri CLI | 2.x | via npm |
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
libappindicator3-dev \
librsvg2-dev \
patchelf
git clone https://github.com/titithen00b/ReadmeVaultCross.git
cd ReadmeVaultCross
npm install
npm run tauri dev
npm run tauri build
Les artefacts sont générés dans src-tauri/target/release/bundle/.
ReadmeVaultCross/
├── src/ # Frontend Svelte + TypeScript
│ ├── App.svelte # Composant racine, layout, modales
│ ├── main.ts # Point d'entrée Vite
│ ├── app.css # Variables CSS globales (thème, couleurs)
│ └── lib/
│ ├── types.ts # Types TypeScript (Project, SortMode…)
│ ├── store.ts # État global Svelte (writable/derived)
│ ├── github.ts # Appels API GitHub (README, infos repo)
│ ├── markdown.ts # Rendu Markdown (marked + highlight.js)
│ └── components/
│ ├── Sidebar.svelte # Liste projets, recherche, tri, tags
│ ├── ProjectDetail.svelte # Affichage README (rendu/brut/infos)
│ ├── ProjectForm.svelte # Formulaire création/édition
│ ├── ImportGitHub.svelte # Import depuis une URL GitHub
│ ├── ImportBulkGitHub.svelte # Import en masse
│ ├── SettingsModal.svelte # Paramètres (token GitHub, thème…)
│ ├── AboutModal.svelte # À propos de l'application
│ └── HelpModal.svelte # Aide et raccourcis clavier
│
├── src-tauri/ # Backend Rust (Tauri)
│ ├── src/
│ │ ├── main.rs # Point d'entrée Tauri
│ │ └── lib.rs # Commandes IPC, menu natif, persistance
│ ├── icons/ # Icônes app (PNG, ICNS…)
│ ├── capabilities/
│ │ └── default.json # Permissions Tauri (fs, shell…)
│ └── tauri.conf.json # Configuration Tauri (fenêtre, bundle…)
│
├── .github/
│ └── workflows/
│ └── build.yml # CI/CD — builds macOS / Windows / Linux
│
├── index.html # Point d'entrée HTML
├── vite.config.ts # Configuration Vite
├── svelte.config.js # Configuration Svelte
├── tsconfig.json # Configuration TypeScript
└── package.json
Les données sont stockées localement via les commandes Rust save_projects / load_projects :
| Plateforme | Emplacement |
|---|---|
| macOS | ~/Library/Application Support/com.readmevault.app/ |
| Windows | %APPDATA%\com.readmevault.app\ |
| Linux | ~/.local/share/com.readmevault.app/ |
projects.json — métadonnées de tous les projets (sans le contenu README)readmes/<id>.md — contenu README de chaque projet (fichier séparé)| Couche | Technologie |
|---|---|
| UI Framework | Svelte 4 |
| Desktop | Tauri 2 |
| Backend | Rust (stable) |
| Bundler | Vite 5 |
| Rendu Markdown | marked + marked-highlight |
| Coloration syntaxique | highlight.js |
| Langage | TypeScript 5 |
Le workflow GitHub Actions (.github/workflows/build.yml) se déclenche :
v* (ex: v1.0.0) → crée une release draftworkflow_dispatch)Plateformes compilées en parallèle :
macos-latest → .dmg + .appwindows-latest → .exe (NSIS) + .msiubuntu-22.04 → .AppImage + .debgit tag v1.0.0
git push origin v1.0.0
La release est créée en draft — vérifier les artefacts avant de la publier manuellement sur GitHub.
Les contributions sont les bienvenues !
git checkout -b feature/ma-fonctionnalitegit commit -m "feat: ajouter ma fonctionnalité"git push origin feature/ma-fonctionnaliteOuvre une issue GitHub avec :
MIT — © 2025 Valentin R. (Titithen00b)