FLOSS contributions
Some Free/Libre Open Source Software projects to which I have contributed:
-
fpdf2 : minimalist PDF creation library for Python. I am the single maintainer of this project. I have implemented many new features from
v2.1.0
onwards. cf. related blog posts. -
I made a few minor bug fixes to CPython: GitHub PRs
-
Pelican : a static site generator in Python
- created a plugin to send LinkBacks
- and another to insert thumbnails along image links
- and another to publish articles on a Shaarli instance
- and another to generate CTags
- designed a 2-columns layout theme
- improved two other themes: pelican-mg & html5-dopetrope
- fixed the Travis CI pipeline for the pelican-plugins repository
- added support for the {include} syntax
- fixed some minor things in the core & in plugins
-
pre-commit : Python command line manager for
git
pre-commit hooks- created several hooks
- also made some bug fixes, improved support for Cygwin and added support for locally defined hooks
-
shaarli : personal, minimalist, bookmarking service, in PHP
- improved the search form ergonomy
- added the ability to display subtags in the tag cloud
- some bug fixes
-
isso : several small bugfixes & improvements to this great self-hosted commenting service using Markdown & SQLite
-
pylint : a Python code static analyzer, for which I added a check for oversighted implicit string concatenations in sequences
-
bandit : a Python security linter, for which I added a check for bidirectional unicode control characters to detect TrojanSource vulnerabilities
-
: a Python module to build batch pipelines, it handles dependency resolution, workflow management, visualization, etc.
- added a new parameter type:
DateSecondParameter
- some bug fixes and exception messages improvements
- added a new parameter type:
-
Nonogram : added some features to this great picross / hanjie / logimage game / solver / editor in Javascript
-
pew : simplify Python virtual environments management, let use them in dedicated shell session
- added support for cmder & Cygwin
-
MinigalNano : a simple PHP image gallery
- made a bunch of bug fixes, including the RSS feed
-
COVID-19 Le jeu : initialization of the repo, build tools & JS code for the web version of this educational print & play board game, under a creative-commons license
I also made some maps for a Ludum Dare game, back in 2009 (the game is worth trying !): http://eriatic.wikidot.com/blog:triumph-mappack
Contributions made at oui.sncf
When working at oui.sncf, I had the opportunity to contribute to the following FLOSS projects:
Hesperides
: a configuration management tool providing universal text file templating and properties editing through a REST API and a webapp. I have worked on its massive refactoring to a new hexagonal architecture using CQRS, and have been its maintainer for several years.
I also built the following ones :
-
V.Board
: a "pins" dashboard to share news among an organization -
hesperides-jenkins-lib
: a shared lib for Jenkins pipelines to interact with Hesperides, the in-house configuration management system -
orka-tools
: a set of useful Python scripts to interact with Orka (Orchestration with Kubernetes on Apple), a virtualization layer to orchestrate macOS in a cloud environment using Kubernetes on genuine Apple hardware -
nexus_uploader
: a Python tool to help with the development & deployment of company-private Python packages on a Sonatype Nexus
Pet projects, musings
Games
- Undying Dusk : a video game in a PDF format, with a gameplay based on exploration and logic puzzles, in the tradition of dungeon crawlers:
- The King Must Know : a Phaser JS short video game made with 2 colleagues during the Global Game Jam 2018
- tablut : a PHP implementation of an old Scandinavian duel board game for the online platform BoardGameArena, with simple rules
- MemoryGame.js : a simple HTML+JS memory game, forked from Mark Rolich repo to add support for images
For games & tabletop RPGs
- 5 Minute Dungeon - Target Assigner : a minimal web app for a great board game variant - related blog article
- shared-img-reveal : a minimal web application to share an image with your players, like a map, and progressively reveal it
- rpg-bonhomme : a tabletop RPG character sheet viewer, with a Python backend using a JSONP key-value store
- rpg-dice : perform dice rolls on a web page shared among players
Other
- OkCupid AutoPass bookmarklet : some extra filters for this nice dating website
- Python Black Box challenge
- genealogic-d3 : genealogy tree visualization using d3.js
- youtube_playlist_watcher : backup Youtube playlists and alert you on songs deletions, written in Python
- music-emails-spybot : Python script generating an HTML archive page of all mentioned songs in emails retrieved from IMAP server (e.g. Gmail)
- wisemapping-mindmap-viewer : a simple HTML+JS mindmap viewer, fork of an original Java project, with a companion brain_dump repo containing tools to manipulate simple mindmaps described as indented Markdown
- ecovoit : a web search engine for French carpooling offers (deprecated)
- nose-summary-report : nose plugin that generates a final summary of tests status as a table
- unicode-search : a NodeJS CLI program to search unicode characters by name
Translation
- translation from English to French of the short, open-source, interactive story game The Temple of No by the Crows Crows Crows studio
- Havoc Brigade, a 25 pages tabletop role-playing game by Grant Howitt, that I translated to French: La Brigade du Chaos