Sign in

Corentin

@corentin.tech
192 followers 260 following 69 posts

FOSS creator, self-hosting enthusiast. I made @papra.app and @it-tools.tech, enclosed.cc and many other things Prev : Indy, EDF, INSA - fr, en Currently building @papra.app corentin.tech

PostsRepliesMedia
Corentin @corentin.tech · 21/07/2026
That's great! Is it planned to support the creation of release PRs, like in changeset? (cf pnpm.io/using-change...)
100
Reposted by Corentin
Papra @papra.app · 02/07/2026
Papra v26.6.0 is out! 🚀 - AI auto-tagging for - Support for external document content extraction engines - Configurable LLM providers for AI features - Big reduction in image size and improved performance - And many other improvements and fixes! #SelfHosted #Foss #BuildInPublic
Papra release announcement banner with the text "papra.app v26.6.0 is out"
172
Corentin @corentin.tech · 22/06/2026
Always a good sign of quality contributions 😬
Opened 337 other pull request in 111 repository
020
Corentin @corentin.tech · 22/06/2026
Got one too few days ago, trying to update the homepage of packages Coming from a openclaw-ish bountie repo as well github.com/papra-hq/pap...
github.com
chore(api-sdk): add package homepage metadata by yanziwei · Pull Request #1156 · papra-hq/papra
Summary add npm homepage metadata for the API SDK package point the homepage to the package README in this repository Verification npm view @papra/api-sdk@latest name version license homepage bu...
100
Corentin @corentin.tech · 19/06/2026
The dependency graph of @aws-sdk/client-s3 is pure gold 🙌 npmgraph.js.org?q=@aws-sdk/c...
npmgraph.js.org
000
Corentin @corentin.tech · 19/06/2026
I've just replaced the official AWS S3 SDKs in @papra.app by s3mini, a zero-dependency S3 client by @jolly-good.bsky.social This removes 97 transitive packages (!) and ~23 MB of dependencies... wtf aws 😬
140
Corentin @corentin.tech · 09/06/2026
In CI on 1.2k+ files Before: eslint (with stylistic) + typecheck: 72s After: oxlint (with typecheck) + oxfmt: 7s
030
Corentin @corentin.tech · 09/06/2026
Finally switched @papra.app monorepo from eslint to oxlint/oxfmt The formatting is less permissive and configurable than @antfu.me awesome eslint config, but performance-wise it's really great Durations dropped by a factor 10
151
Reposted by Corentin
Papra @papra.app · 07/06/2026
Papra v26.5.0 is out! 🎉 - Share documents with public links - Saved views for quick access to searches - Add notes to documents - And more! Full changelog: docs.papra.app/changelog/#2... #SelfHosted #Foss #BuildInPublic
Papra release announcement banner with the text "papra.app v26.5.0 is out"
1102
Corentin @corentin.tech · 07/06/2026
cronotype.vercel.app/corentinth
cronotype.vercel.app
Corentin Thomasset is Vampire
Corentin Thomasset's commit-time rhythm is Vampire. 99th percentile.
000
Corentin @corentin.tech · 07/06/2026
> You do your sharpest work when notifications are asleep and the world stops asking questions. Yes and yes 🙌
100
Corentin @corentin.tech · 07/06/2026
Vampire squad here too! 🦇
Cronotype card for CorentinTh github account showing a Vampire: you do your sharpest work when notifications are asleep and the world stops asking questions. 
- Peak productivity at 1am
- 54% nocturnal
- signal 95
- 99th percentile
- over the last 90 days
300
Corentin @corentin.tech · 02/06/2026
Missing a flex-shrink: 0 on the @github.com sponsors dashboard list profile pictures... 🙄
Github sponsor list where the profile picture is compressed due to a card content pushing
000
Reposted by Corentin
Papra @papra.app · 20/05/2026
Papra v26.4.1 is out! It includes batch actions in the documents page, new sorting options, security fixes and more. Full changelog: docs.papra.app/changelog/#2... #SelfHosted #Foss #BuildInPublic
Papra release announcement banner with the text "papra.app v26.4.1 is out"
081
Corentin @corentin.tech · 19/05/2026
Nice addition, recently ran into the union limitation with string based sub schema
020
Reposted by Corentin
Ky @ky.fyi · 24/04/2026
I wrote about why I quit my job, and how weird and tiring tech feels these days.
ky.fyi
Do I belong in tech anymore?
On quitting, the spread of AI, and the loss of an ideal.
1281791544
Corentin @corentin.tech · 22/04/2026
Zod is unfortunatly still present in the monorepo, due to @astro.build content schemas tied to zod, it's a shame it does not adopt standard-schemas 🤷
030
Corentin @corentin.tech · 22/04/2026
I've finally unified the validation library accross @papra.app client/server 🙌 Removed remaining zod schemas in favor of @valibot.dev
121
Reposted by Corentin
David @dbt3.ch · 27/03/2026
Papra just dropped custom properties for documents: text, number, select, multi-select & even member relations! Plus smarter PDF text extraction with OCR fallback for vectorized text. #selfhosted #homelab github.com/papra-hq/papra/releases/…
Papra logo
062
Reposted by Corentin
Papra @papra.app · 26/03/2026
Papra v26.3.0 is out! 🎉 Big release with lot of awaited features! - Custom properties - Customizable storage path - Document date property - Content extraction improvements - And many more! Full changelog: docs.papra.app/changelog/#2... #SelfHosted #Foss #BuildInPublic
Papra release announcement banner with the text "papra.app v26.3.0 is out"
071
Reposted by Corentin
BlablaLinux @blablalinux.be · 05/03/2026
Marre de perdre vos factures ou garanties ? 📄 Je lance Papra : un outil d'archivage minimaliste et libre pour stocker vos documents à long terme et les retrouver en un clic ! 🐧☕
452
Reposted by Corentin
Papra @papra.app · 28/02/2026
Papra's Docker image has been pulled over 1 million times! 🎉 Thank you all for this symbolic milestone and for trusting Papra to manage your documents 🫶 #OpenSource #BuildingInPublic #foss
Announcement banner with the text
"papra.app 1 million docker pull, thank you for the support"
1102
Reposted by Corentin
Papra @papra.app · 17/02/2026
Papra v26.2.0 is out! - Fancy new tag picker UI from the document lists - In-app advanced PDFs viewer - Tag names are now case-insensitive (simpler search) - Huge reduction of the rootless docker image size - And many other improvements and bug fixes! #SelfHosted #Foss #BuildInPublic
Papra v26.2.0 release announcement: "Papra.app v26.2.0 is out!"
162
Corentin @corentin.tech · 25/01/2026
Thanks mate!
010
Reposted by Corentin
Papra @papra.app · 25/01/2026
Papra v26.1.0 🎉 - New search filter "has:tags" to filter docs with/without tags - Added Greek and Russian language support - Reduced production bundle size - Various improvements and bug fixes Full changelog: docs.papra.app/changelog/#2... #OpenSource #Foss #BuildInPublic
Papra v26.1.0 release announcement: "Papra.app v26.1.0 is out!"
182
Corentin @corentin.tech · 20/01/2026
I even made a small online demo of the parser here: search-parser.papra.app
search-parser.papra.app
Search Parser - Advanced search query parser for TypeScript
A typesafe, dependency-free, error-resilient AST-based search query parser for TypeScript. Supports logical operators, grouping, filters, and more.
000
Reposted by Corentin
Papra @papra.app · 20/01/2026
Papra v26.0.0 is out! 🎉 - Advanced search syntax - Instance administration - Two-factor authentication (2FA) - Search speed improvements - About page with version info - And more! #selfhosted #opensource #foss
Release announcement banner, with a file icon: "Papra.app, v26.0.0 is out!"
161
Corentin @corentin.tech · 20/01/2026
I really had fun building a full featured AST-based parser for this search query engine 🙌
Code snippet image:
import { parseSearchQuery } from '@papra/search-parser';

parseSearchQuery({ query: 'foobar' });
// { expression: { type: 'text', value: 'foobar' }, issues: [] }

parseSearchQuery({ query: 'tag:invoice' });
// { expression: { type: 'filter', field: 'tag', operator: '=', value: 'invoice' }, issues: [] }

parseSearchQuery({ query: '(tag:invoice OR tag:receipt) AND createdAt:>2024-01-01' });
// {
//   expression: {
//     type: 'and',
//     operands: [
//       {
//         type: 'or',
//         operands: [
//           { type: 'filter', field: 'tag', operator: '=', value: 'invoice' },
//           { type: 'filter', field: 'tag', operator: '=', value: 'receipt' },
//         ],
//       },
//       { type: 'filter', field: 'createdAt', operator: '>', value: '2024-01-01' },
//     ],
//   },
//   issues: [],
// }
010
Reposted by Corentin
Fabian Hiller @fabianhiller.com · 04/01/2026
Should we drop a dedicated open-source project comparing ALL major schema libs? 🤔 We could test: ⏱️ Initialization speed ✅ Validation speed ⚡ Parsing speed 📦 Download time (bundle size) If this gets traction… we launch it 🚀📊
0425
Corentin @corentin.tech · 02/01/2026
Spent some time making proper documentation for Crowlog, my modern "yet-another" logging library for any JS/TS project -> crowlog.dev #OpenSource #JavaScript #NPM
crowlog.dev
Crowlog - Extendable JS logging library
Ultra lightweight, zero-dependency, extendable logging library for any JavaScript environment. Works in Node.js, browsers, and edge runtimes.
040
Corentin @corentin.tech · 01/01/2026
🎂💖
010
Reposted by Corentin
Papra @papra.app · 29/12/2025
📣 2 days left for Papra founder discount 📣 Get 50% off on all plans for life by subscribing before December 31st 👉 papra.app #OpenSource #Sass #BuildInPublic
083
Reposted by Corentin
Papra @papra.app · 22/12/2025
Papra version v25.12.0 is out! Time to docker pull 🚀 Full changelog: docs.papra.app/changelog/#25.12.0 #OpenSource #BuildInPublic #SelfHosted
Papra.app v25.12.0 is out!
092
Reposted by Corentin
Bruno Simon @bruno-simon.bsky.social · 09/12/2025
6 years of thinking I can make a better portfolio. 1 year of actually building it. My new portfolio is LIVE 🚀 Please, don't break anything! 👉 bruno-simon.com
1629452
Reposted by Corentin
Papra @papra.app · 25/11/2025
Few weeks after opening early access, we're thrilled to announce that Papara Cloud is now globally available! 🚀 Available here 👉 papra.app #OpenSource #BuildInPublic #SelfHosted
0143
Reposted by Corentin
OpenAlternative @openalternative.co · 29/10/2025
★ Just published: Papra @papra.app — Organize and secure your documents in one central hub A document management platform that helps you archive, organize, and search files with email ingestion, tagging capabilities, and powerful search functionality.
openalternative.co
Papra: Open Source Alternative to Google Drive, Dropbox and Microsoft OneDrive
A document management platform that helps you archive, organize, and search files with email ingestion, tagging capabilities, and powerful search functionality.
042
Corentin @corentin.tech · 11/10/2025
Just created Branchlet, a fast and extensible string processor for handling conditional text logic in i18n strings 🎉 github.com/CorentinTh/b...
Code snippet screenshot :
import { createBranchlet } from '@branchlet/core';

const { parse } = createBranchlet();

const template = 'You have {{ count, =0:no items, =1:one item, {count} items }} in your cart.';

parse(template, { count: 0 }); // "You have no items in your cart."
parse(template, { count: 1 }); // "You have one item in your cart."
parse(template, { count: 5 }); // "You have 5 items in your cart."
011
Corentin @corentin.tech · 21/09/2025
Regarding the recent supply chain attacks on npm, to mitigate on my side I've enabled npm's Trusted Publishing for most of the main packages I'm maintaining It's really a breeze to not have to rely on and rotate npm tokens in CI 🙌
Provenance section showing a green checkmark with 'Built and signed on GitHub Actions' and links to 'View build summary' and 'Share feedback'
010
Reposted by Corentin
Fabian Hiller @fabianhiller.com · 11/09/2025
What would you put on the @valibot.dev v2 wishlist if we skipped Valibot v1.2 and worked on Valibot v2 instead? Here are some ideas I have:
371
Reposted by Corentin
Papra @papra.app · 09/09/2025
Papra v0.9 is out! 🎉 - Document encryption! - Stream file uploads (better performance, lower RAM usage) - Dropped B2 storage driver as B2 is now fully compatible with s3 - Some bug fixes and more! #selfhosted #opensource #buildinpublic #foss #javascript
papra.app
Papra v0.9 - Document encryption, performance improvements, and streamlined storage - Papra - Simple & Secure Document Archiving for Long-Term Storage
Papra v0.9 introduces document encryption with DEK/KEK architecture, migrates Backblaze B2 to S3, adds streaming uploads, and brings significant performance and UX improvements.
0111
Reposted by Corentin
Papra @papra.app · 09/08/2025
We’re considering dropping support for the armv7 (Raspberry Pi 2 and earlier) Docker image in Papra So if you’re still using Papra on armv7 devices, we’d like to hear from you 👋 Papra's discord server: papra.app/discord
papra.app
Rejoins le serveur Discord Papra community !
The Papra community discord server | 233 membres
001
Reposted by Corentin
Papra @papra.app · 08/08/2025
Papra v0.8 is out! 🎉 - Refactored webhooks to comply to standard webhooks - Added a background task processing with CadenceMQ - Enhanced migration system - OCR for scanned PDF - Better error handling & UI improvements #selfhosted #opensource #buildinpublic #foss #javascript
papra.app
Papra v0.8 - Improved webhooks, async task processing, and enhanced migration system - Papra - Simple & Secure Document Archiving for Long-Term Storage
Papra v0.8 introduces standard webhook compliance, asynchronous file processing with our new task runner, a complete migration system overhaul, and many quality of life improvements.
062
Corentin @corentin.tech · 28/07/2025
Thanks, will do if needed 🙏
000
Corentin @corentin.tech · 28/07/2025
I was thinking into migrating @papra.app from Modular Form to Tanstack Form, I did well to wait!
110
Corentin @corentin.tech · 28/07/2025
github.com/CorentinTh/f...
github.com
GitHub - CorentinTh/figue: Configuration management library, like convict but with zod
Configuration management library, like convict but with zod - CorentinTh/figue
000
Corentin @corentin.tech · 28/07/2025
I recently migrated my Figue library (full featured app config validation) to be able to use any Standard Schema compliant lib 🚀 It now makes it easier to use any validation lib like @valibot.dev or zod, even mix them or use custom functions 🙌
Code snippet showing a configuration setup using TypeScript. It imports schema validation libraries (@standard-schema/spec, figue, zod, valibot), defines a custom password schema to ensure it's a string, and then uses defineConfig to configure environment variables for an application (environment, port, and database connection details like host, username, and password). The process.env is used as the environment source, and the final configuration is logged to the console.
110
Corentin @corentin.tech · 28/07/2025
🫶❤️
020
Reposted by Corentin
Fabian Hiller @fabianhiller.com · 22/07/2025
I think there is a misunderstanding. While Zod v4 Mini is much smaller than Zod v3, the bundle size is still ~80% bigger compared to @valibot.dev. Example:
3307
Reposted by Corentin
David @dbt3.ch · 18/07/2025
New video! What is Self-Hosting and Why You Should Care About Privacy Watch it here: youtu.be/ie66UMymq2k #SelfHosting #Homelab #BeginnerFriendly
picture
183
Corentin @corentin.tech · 16/07/2025
Oui mon objectif (après le plaisir de m'amuser à le faire) était de proposer une alternative un peu plus moderne
110