Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

Silverbullet - Le wiki markdown dans lequel vous pouvez tout coder en LUA

Par : Korben
4 novembre 2025 à 09:53

En ce magnifique mardi matin, moi et mon mal de crâne, nous avons découvert un truc assez cool qui est un genre de wiki personnel en markdown, comme Obsidian ou Notion, mais avec un super pouvoir qui est que vous pouvez y écrire du code qui s’exécute directement dans vos notes !! Hé oui, du vrai code ! Pas des plugins, pas des extensions, mais du code Lua intégré dans votre texte comme si vos notes étaient devenues un environnement de dev à part entière.

Ça s’appelle SilverBullet , c’est open source (licence MIT), et franchement, si vous avez déjà bidouillé des configs Neovim ou des scripts Redis, vous allez kiffer car c’est beaucoup plus simple ^^.

Ça ressemble à n’importe quel wiki markdown moderne. Vous écrivez vos notes en local, elles sont stockées en fichiers statiques .md, vous avez des liens bidirectionnels pour connecter vos idées, et l’interface est optimisée avec des raccourcis clavier. C’est évidemment une Progressive Web App qui fonctionne 100% hors ligne ( comme expliqué sur leur site ), et vous gardez le contrôle total sur vos données, puisque tout est auto-hébergé sur votre machine ou votre serveur.

Ainsi, avec le scripting Lua intégré, vous pouvez littéralement taper ${10 + 2} dans une note et le résultat s’affichera en temps réel : 12 (vous l’aviez les matheux ?? ^^). Et si vous voulez une liste de vos 5 dernières pages modifiées qui se met à jour automatiquement, suffit d’écrire un petit bout de Lua, et hop, votre wiki devient “vivant”.

Alors oui, je sais ce que vous allez me dire, Obsidian a Dataview, Logseq a ses requêtes en Datalog…etc donc c’est pareil non ?

Et bien pas vraiment parce que Dataview ça vous demande quand même d’apprendre un DSL (Domain Specific Language) avec une syntaxe bizarroïde et de vous palucher les 50 pages de doc. Logseq quand à lui vous balance du Datalog sans trop d’explications. Alors que SilverBullet, lui, vous laisse écrire du Lua. Et le Lua, c’est simple, c’est dispo partout (Neovim, Redis, les addons World of Warcraft, OSB, etc.), c’est documenté, et c’est fait pour être embarqué dans des applications.

Si vous êtes data scientist, vous connaissez sûrement les Jupyter Notebooks qui sont markdown avec du code Python exécutable dedans. Hé bien SilverBullet fait exactement la même chose, mais pour vos notes personnelles. Vos notes ne sont plus des fichiers inertes, mais deviennent des mini-programmes qui peuvent calculer, générer du contenu, réagir à des événements…etc

Tenez par exemple, vous pouvez définir une fonction custom directement dans une page :

-- Additionner deux nombres
function adder(a, b)
 return a + b
end

Et ensuite l’utiliser n’importe où dans votre wiki avec la syntaxe ${adder(5, 7)}. Vous pouvez créer des commandes personnalisées qui apparaissent aussi dans la palette de commandes (Ctrl+K ou Cmd+K) :

command.define {
 name = "Insérer signature",
 run = function()
 local date = os.date("%Y-%m-%d")
 editor.insertAtCursor("---\nÉcrit le " .. date, false, true)
 end
}

Ou même des slash commands comme dans Notion, mais que vous codez vous-même :

slashCommand.define {
 name = "todo",
 run = function()
 editor.insertAtCursor("- [ ] |^|", false, true)
 end
}

Tapez /todo dans votre éditeur, et boum, ça insère une checkbox markdown avec le curseur au bon endroit. Vous voulez un compteur de mots qui s’affiche à chaque sauvegarde ? Un event listener comme ceci suffit :

event.listen {
 name = "page:save",
 run = function(e)
 local content = editor.getText()
 local word_count = select(2, content:gsub("%S+", ""))
 editor.flashNotification("Nombre de mots : " .. word_count)
 end
}

SilverBullet est développé en TypeScript (frontend avec Preact et CodeMirror 6) et Go (backend) et la doc officielle est disponible ici .

Même si ça fait bientôt 3 ans que c’est en dev, c’est encore un peu jeune et il y a d’ailleurs quelques limitations à connaître. Par exemple, y’a pas de gestion d’upload d’images pour l’instant (vous devez linker des images externes ou les placer manuellement dans le dossier), et comme c’est récent, l’écosystème de plugins n’est pas aussi fourni qu’Obsidian. Mais bon, quand vous pouvez coder vos propres fonctionnalités en Lua directement dans vos notes, la notion de “plugin” devient un peu inutile.

Alors plutôt que de vous expliquer encore pendant 10 paragraphes comment ça fonctionne, voici comment l’installer et tester vous-même.

Téléchargez d’abord le binaire qui correspond à votre OS (macOS, Linux, Windows) en cliquant ici .

Pour macOS et Linux , ouvrez votre terminal et tapez :

chmod +x silverbullet
mkdir mes-notes
./silverbullet mes-notes

Pour Windows, créez un dossier mes-notes, puis lancez dans PowerShell :

.\silverbullet.exe mes-notes

Le serveur démarre alors sur le port 3000 par défaut. Ouvrez votre navigateur sur http://localhost:3000 et vous y êtes. Vous pouvez aussi l’installer en Progressive Web App (PWA) pour l’utiliser comme une vraie application desktop, même hors ligne.

Et si vous préférez Docker, c’est encore plus simple :

docker run -p 3000:3000 -v ~/mes-notes:/space ghcr.io/silverbulletmd/silverbullet

Ça fonctionne sur Intel et ARM (Raspberry Pi, Apple Silicon), donc vous pouvez l’héberger sur à peu près n’importe quoi.

Voilà, donc si vous voulez une note qui génère automatiquement un journal de vos tâches incomplètes, une page d’accueil qui affiche vos stats d’écriture du mois ou encore un système de tags auto-généré avec des filtres dynamiques, tout est possible ! Et tout ça en écrivant du Lua directement dans le navigateur, sans plugins chelous.

Une fois que vous aurez goûté à ça, vous verrez que revenir à des notes statiques sera trèèèès compliqué.

Merci à friendly_0day pour m’avoir fait découvrir SilverBullet !

MkEditor - L'éditeur Markdown que personne n'attendait

Par : Korben
12 août 2025 à 14:16

Moi, j’adore quand quelqu’un fabrique un truc juste parce qu’il en a envie, sans business plan, sans pitch deck, sans lever de fonds. Juste un dev, son clavier, et l’envie de créer.

Et bien c’est exactement ce qui s’est passé avec MkEditor, et ça fait du bien !

Le créateur de MkEditor (qui se décrit lui-même comme “un peu timide pour partager ses créations”) a passé plusieurs années à maintenir cet éditeur Markdown qui respecte les specs CommonMark.

Pourquoi ?

Et bien pas pour concurrencer Obsidian ou Typora. Pas pour devenir la prochaine licorne de la tech. Non, non, juste parce qu’il voulait comprendre comment VSCode fonctionnait en détail. Et ce qu’il nous a pondu, c’est un éditeur qui utilise Monaco Editor de Microsoft, le même moteur qui fait tourner VSCode.

Alors oui, on va me dire “mais Korben, il existe déjà 50 éditeurs Markdown”. C’est vrai et ces éditeurs ont su se rendre incontournables pour les développeurs et les équipes. Obsidian cartonne avec son graph view, Typora fait toujours rêver avec son rendu en temps réel. Mais MkEditor a quelque chose de différent : Il ne cherche pas à révolutionner quoi que ce soit. Il fait juste très bien ce qu’il fait.

L’outil embarque des fonctionnalités plutôt sympas. D’abord, vous avez un split screen redimensionnable avec synchronisation du scroll entre l’éditeur et la preview. Ensuite, des raccourcis clavier personnalisables pour formater votre texte ou insérer des blocs de code. Et il y a même de l’autocomplétion pour les langages dans les code blocks, exactement comme dans VSCode.

Ce qui est bien pensé aussi, c’est l’export HTML. Vous pouvez comme ça générer du HTML brut ou une version stylée avec Bootstrap et FontAwesome directement injectés dans le <head>. Pratique quand vous voulez partager un document qui a de la gueule sans vous prendre la tête avec le CSS. Les paramètres sont configurables soit via l’interface, soit directement dans un fichier settings.json pour les puristes du terminal.

Le truc cool aussi, c’est qu’il y a la palette de commandes de VSCode. Vous tapez Ctrl+Shift+P (ou Cmd+Shift+P sur Mac) et boom, vous avez accès à toutes les commandes. Pour ceux qui vivent dans VSCode, c’est comme retrouver ses pantoufles.

Et si vous ne voulez pas installer l’application desktop (disponible en Electron pour Windows, Linux et macOS), vous pouvez tester directement la version web en cliquant ici. Pas de compte à créer, pas de données à fournir, vous arrivez et vous écrivez. C’est chouette non, à une époque où chaque app veut votre mail, votre 06 et votre groupe sanguin.

Le développeur l’avoue lui-même dans son post… il a créé MkEditor juste parce qu’il en avait envie, sans cas d’usage particulier, juste pour le plaisir de construire quelque chose. C’est cette philosophie qui résume tout ce que j’aime dans l’open source.

Le projet est donc sur GitHub si vous voulez contribuer ou juste jeter un œil au code. Le dev accepte les feedbacks et les rapports de bugs, toujours avec cette modestie qui caractérise les vrais artisans du code.

Alors non, MkEditor ne va pas détrôner les géants du Markdown et il ne va pas lever 10 millions (enfin, quoique, on ne sait jamais dans la vie…). Il n’aura peut-être même pas sa propre conférence annuelle, mais il existe, il fonctionne bien, et il est gratuit.

Quarkdown - Du Markdown avec des super pouvoirs pour les tech

Par : Korben
11 juin 2025 à 05:01

Vous en avez marre de galérer avec LaTeX pour rédiger vos docs techniques ? Et bien de mon côté, j’ai découvert Quarkdown et c’est vraiment cool, vous allez voir.

Quarkdown, c’est donc le projet coup de coeur de Giorgio Garofalo, un étudiant en ingénierie à l’université de Bologne qui a eu une idée de génie : et si on combinait la simplicité de Markdown avec la puissance de LaTeX ? Le résultat, est donc un système de composition moderne qui compile en millisecondes là où LaTeX nous fait poireauter des secondes entières.

❌
❌