I write Python tools for the jobs I would otherwise keep doing by hand: spreadsheets, PDF layout, LaTeX sources, class material. Most of them grew out of teaching; eleven became packages published on PyPI, and one on CTAN. Each package is typed, tested in CI across the Python versions it supports, and used in my own work before it is released.
| Package | PyPI | What it does |
|---|---|---|
| odsslicer | Reads and writes .ods files (LibreOffice Calc) with numpy-style indexing, sheet["A1:B3"], and keeps formats, formulas and styles on the way back. |
|
| latexdetok | A tolerant LaTeX tokeniser: a tree of groups and commands that rewrites the source byte for byte, and a latexdetok check command that says what is wrong better than TeX does. |
|
| reportlab_layout | A cursor-driven layout layer on top of reportlab: the flow of a document, with the canvas always within reach. | |
| enoncepdf | Reads exam statements in PDF: finds their headings and questions, and crops them into slices without headers, footers or line numbers. | |
| texformules | LaTeX formulas typeset in one batch, cached as PNG and one-page PDF with their baseline. | |
| latex-figures | matplotlib figures that match their LaTeX document: size in cm, fonts, preamble, decimal comma, cropping. | |
| liveboxapi | A synchronous client for Orange Livebox routers: read the state, change the settings, and ask the box what else it can do. | |
| trombinoscope | A printable photo directory from a folder of raw photos and a list: every face framed the same way, colours evened out across the batch. Documentation in French. |
- icalsync: events with a stable key, kept up to date in macOS Calendar or in an iCalendar file, in French.
- bpaye: a French teacher's payslips, computed, forecast and read back from the PDF, in French.
- synologygofilehosting and synodl-firefox: two small add-ons for Synology Download Station.
Bug reports and questions are welcome in the issues of each repository.
| Package | PyPI / CTAN | What it does |
|---|---|---|
| titrages | Calcul de pH et de potentiel de mélanges, affichage de courbes de titrages - package autonome LuaLaTeX disponible | |
| thermodiagrammes | Surcouche de CoolProp pour les diagrammes d'états thermodynamiques, API simplifiée pour un tracé rapide de diagrammes et de cycles | |
| fieldlines | Affichages simplifié de lignes de champ, sources électrostatiques et magnétostatiques prédéfinies | |
| grandeursphy | (hors pypi) | Grandeurs physiques avec unités (pint), incertitudes, constantes CODATA 2022 et sortie siunitx pour pythontex |
| pychimie | (hors pypi) | Thermochimie des équilibres (avancement, rupture, déplacements), éléments, formules et tableau périodique en TikZ |
| programmes-cpge | Les programmes officiels de physique-chimie des CPGE (MPSI, PCSI, MP, PC, PSI), à citer, parcourir et composer en LaTeX | |
| tpllg | (hors pypi) | Acquisition de données en travaux pratiques, analyse de signaux |
| sysam-sp5 | (hors pypi) | Pilotes, notice et kit de programmation de la centrale Sysam SP5, et un script qui vérifie qu'un poste peut la piloter depuis Python |


