Potion Bottle Icon Manuel d'alchimie du code Potion Bottle Icon

La fabrique à documents est maintenant libre !

- 860 mots - Temps de lecture estimé: 5 minutes

Offre de formation

Potion Bottle IconHéberger ton entreprise ou ton OBNL avec YunohostPotion Bottle Icon

Arrête de payer par utilisateur·ice pour des outils qui analysent tes données. Expérimente l'autohébergement sur un vrai serveur avec Yunohost et ses centaines d'applications libres.

Héberge tes données au Québec

🌘 C’est quoi, La fabrique à documents ?

La fabrique à documents est un outil web qui convertit un contenu rédigé en syntaxe Markdown vers différents formats pour la publication ou les réseaux sociaux, tels que des stories, des publications, des reels ou des e-book en format PDF.

🌘 Pourquoi c’est un logiciel libre ?


Sun Face IconQu’est-ce que La fabrique à documents et comment l’utiliser ?Sun Face Icon


La fabrique à documents est un outil web libre en Python (Streamlit + FastAPI) qui convertit du texte en syntaxe Markdown vers des formats de publication variés : PDF, stories, publications ou e-books. Le code source est disponible sous licence AGPL-3.0 et peut se déployer localement avec Docker ou sur un serveur avec CapRover, Coolify ou Dokku.

Jadis (quand il y avait de la neige), j’ai créé un groupe pour tester mon outil La fabrique à documents. Je crois que le format que j’ai proposé n’était pas idéal pour tester ce genre de logiciels.

Alors, j’ai simplement décidé de libérer le code de mon outil en public.

C’est un projet expérimental, en cours de développement, disponible sous licence GNU Affero General Public License (AGPL-3.0). Toute contribution est bienvenue !

🌘 Comment j’ai construit la fabrique à documents ?

J’ai utilisé un modèle de développement client et serveur. C’est donc une application en deux parties :

Le tout peut être utilisé localement sur ton ordinateur avec Docker Desktop (je te montre comment faire).

Si tu es plus avancé, tu peux le déployer sur un serveur de containers Docker tel que Coolify, CapRover ou Dokku, ou un cluster Kubernetes ou OpenShift.

🌘 L’interface de l’application

🌘 Le premier onglet : Markdown

C’est le point de départ de l’interface.

Ici, les utilisateurs peuvent commencer à créer leur contenu en utilisant la syntaxe Markdown. L’interface présente un grand champ de texte où les utilisateurs peuvent saisir leur contenu. Par défaut, ça affiche un texte de démonstration avec des exemples de formatage Markdown comme des titres, des sous-titres, des paragraphes, du code et même des émojis.

Un bouton “Formater le texte” est disponible, permettant aux utilisateurs de formater automatiquement leur texte Markdown. Cette fonction utilise la bibliothèque mdformat pour appliquer une mise en forme cohérente au texte, y compris la numérotation des sections.

Interface de saisie du texte Markdown sur la Fabrique à documents avec un champ de texte et un bouton 'Formater le texte'.

🌘 Le deuxième onglet : Aperçu

Cet onglet offre aux utilisateurs une vue en temps réel de leur document formaté. Cet onglet affiche le contenu Markdown saisi dans le premier onglet, mais rendu en HTML.

Cela permet aux utilisateurs de voir immédiatement comment leur document apparaîtra une fois formaté, y compris les titres, les paragraphes, et autres éléments de mise en forme Markdown.

Rendu en temps réel du contenu Markdown sur la Fabrique à documents affichant des titres, paragraphes et éléments formatés.

🌘 Le troisième onglet : Paramètres

Cet onglet permet aux utilisateurs de configurer divers aspects de leur document. Les utilisateurs peuvent sélectionner un style et un format pour leur document à partir d’options récupérées depuis le backend. Ils peuvent également ajuster des paramètres tels que la couleur des liens, la profondeur de la table des matières, le moteur PDF à utiliser, la taille de la police, les dimensions du papier, les marges, et plus encore.

Cet onglet offre aussi la possibilité de générer le document final. Les utilisateurs peuvent choisir l’extension de sortie (jpg, PDF, ou MP4) et, pour les vidéos, définir les FPS et le temps d’affichage. Une fois les paramètres définis, un bouton “Generate post” permet de créer le document final, qui peut ensuite être téléchargé.

Onglet de configuration avec menus déroulants pour le style et format, champ de paramètres du document, bouton 'Generate post'.

🌘 Le quatrième onglet : Images

Il permet aux utilisateurs de gérer les images associées à leurs documents. Les utilisateurs peuvent voir une liste des images déjà téléchargées et en sélectionner une pour la visualiser. Cet onglet offre aussi la possibilité de télécharger de nouvelles images.

Les utilisateurs peuvent sélectionner un ou plusieurs fichiers image (jpg ou jpeg) à télécharger. Une fois le téléchargement effectué, l’application affiche un message de confirmation pour chaque fichier.

Liste déroulante des images avec aperçu de l'image sélectionnée et bouton pour ajouter de nouvelles images.

🌘 Les thèmes de publication

L’application vient par défaut avec mes thèmes que tu pourras (devras) remplacer par les tiens ! Chaque thème vient avec un fichier descriptif en JSON et des fichiers de configuration en LaTeX.

Le fichier descriptif permet de configurer la taille des contenus, les marges, la police d’écriture et la configuration du générateur de fichiers PDF.
Les fichiers de configuration en LaTeX permettent de configurer les sauts de lignes, la justification, la gestion des images et des listes et aussi d’inclure des éléments récurrents que tu souhaites avoir dans chacune de tes publications.

🌘 Le code et la documentation

Tout se trouve sur mon serveur de code Forgejo: https://git.jevalide.ca/partage/fabriquedoc

Offre de service

Shooting Stars IconConfiguration Express — 1 heure — 245 $Shooting Stars Icon

Un problème de configuration qui te semble insurmontable ? Environ une heure, en moyenne, je configure tes courriels, DNS, accès et conformité loi 25. Les suivis sont inclus pour valider ou corriger des configurations additionnelles au besoin. Tu repars avec une solution fonctionnelle, pas un devis.

Règle ton problème maintenant — 245 $
Abonne-toi au fil RSS pour ne rien manquer.

Étiquettes