5.7 KiB
title: WriteFreely created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, activitypub-fediverse, blog, minimaliste, go, fediverse, markdown] confidence: high contested: false sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://github.com/writefreely/writefreely, https://writefreely.org/]
🔗 WriteFreely
Le blog minimaliste et fédéré : un éditeur Markdown sans fioritures, multi-blogs par instance, et exposé au Fediverse via ActivityPub comme un compte Mastodon natif.
| Métadonnée | Valeur |
|---|---|
| Site web | https://writefreely.org |
| GitHub | https://github.com/writefreely/writefreely |
| License | AGPL-3.0 |
| Langage principal | Go |
| Étoiles GitHub | 2 500 ⭐ |
| Dernière MAJ | 2026-05 |
| Catégorie | cat-activitypub-fediverse |
Description
WriteFreely est un logiciel de blogging minimaliste écrit en Go, conçu pour se concentrer sur l'écriture. L'interface est volontairement épurée : un éditeur Markdown plein écran, un thème de lecture soigné, des modèles de publication (article court, longue, image, citation), et rien d'autre. L'inspiration explicite est l'écriture de journal intime ou d'essayiste, pas la production de contenu à fort volume.
Mais la vraie force de WriteFreely, et ce qui le distingue d'un Ghost ou WordPress, est sa federation ActivityPub native : un blog WriteFreely s'expose au Fediverse comme un compte Mastodon. Vos lecteurs peuvent suivre votre blog depuis Mastodon/Misskey/etc., voir les nouveaux articles apparaître dans leur timeline, et répondre avec des pouets qui remonteront sur votre blog. Idéal pour les écrivains, journalistes, chercheurs qui veulent un blog sobre mais interopérable.
Fonctionnalités principales : blogs multiples par instance (ou un seul blog collectif type publication), pages statiques (« page » vs « post »), Collections (multi-auteurs), OAuth2 (authentification GitHub, GitLab, Slack…), branding personnalisable (CSS custom), export JSON de tous les articles, lecteur Reader intégré qui agrège les abonnements d'un utilisateur.
Points forts : binaire Go unique, RAM très faible (50-100 Mo), UI léchée, federation ActivityPub propre, communauté attachée à la sobriété numérique.
Points faibles : pas de thème « custom » riche comme Ghost, pas de commentaires natifs (la federation sert de substitut), pas d'éditeur WYSIWYG, pas de SEO approfondi (même si les balises meta sont propres).
Installation
Via Docker (recommandé)
L'image officielle est writeas/writefreely ou writefreely/writefreely sur Docker Hub. La stack typique utilise SQLite (par défaut) ou MySQL, et un serveur web front.
# docker-compose.yml
services:
writefreely:
image: writefreely/writefreely:latest
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- writefreely_data:/data
environment:
WF_SHARED: "false"
WF_BIND: 0.0.0.0:8080
WF_USER: blog
WF_PASSWORD: change-me
WF_TYPE: sqlite
WF_DBNAME: /data/writefreely.db
WF_HOSTNAME: blog.example.com
WF_ADMIN: admin@example.com
volumes:
writefreely_data:
Pour MySQL, ajouter un service MariaDB et utiliser WF_TYPE: mysql.
Installation manuelle
Voir la doc : https://writefreely.org/start. Télécharger le binaire Go depuis les releases, exécuter ./writefreely --config, éditer config.ini et lancer le service (systemd unit fourni).
Configuration
- Lancer la stack et accéder à l'URL pour finaliser la configuration.
- Créer le compte admin (l'email fourni dans
WF_ADMIN). - Configurer les pages statiques, le branding (logo, CSS custom).
- Activer l'authentification OAuth (GitHub, GitLab) si vous voulez faciliter l'inscription de co-auteurs.
- Configurer le reverse-proxy HTTPS (Caddy) — WriteFreely redirige HTTP→HTTPS par défaut si configuré.
- Activer la federation ActivityPub dans
config.ini(federation = true) — par défaut activée.
Alternatives
Open source
- app-mastodon — Pour ceux qui veulent microblogage seul (pas de blog)
- Ghost — CMS blog complet, sans ActivityPub
- Pleroma — Plus complet mais pas de blog long
- Plume (archivé) — Ancienne alternative blog fediverse, plus maintenue
- app-pixelfed — Spécialisé photo, complémentaire
Propriétaires
- Medium — Plateforme de blog centralisée
- Substack — Newsletter payante, pas self-hostable
- WordPress.com — Blog managé, source fermée pour la version cloud
Sécurité
- ✅ Authentification : email + mot de passe (bcrypt), 2FA TOTP (depuis v0.15), OAuth2 GitHub/GitLab
- ✅ HTTPS recommandé (HSTS supporté)
- ✅ Modération : signalements, blocage de comptes et d'instances
- ✅ Vie privée : pas de tracking, pas de pub, pas d'analytics tiers
- ⚠️ Federation : exposer un blog personnel au Fediverse attire du spam, activer l'anti-spam natif
- ⚠️ OAuth : bien configurer les secrets et les scopes autorisés
- ⚠️ Sauvegarde : SQLite est simple, mais penser à
cpla base régulièrement
Ressources
Pages Liées
- cat-activitypub-fediverse — Catégorie parente
- app-mastodon — Federation avec le microblogage
- app-fluxer — Pour la communication plus instantanée
- app-caddy — Reverse-proxy HTTPS
- recettes-docker-compose — Templates Docker