<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>Papyrus - Z29K</title>
    <subtitle>Independent tech watch: open-source tools, self-hostable projects and field notes on software, by Z29K.</subtitle>
    <link rel="self" type="application/atom+xml" href="https://papyrus.z29k.fr/en/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-08-01T00:00:00+00:00</updated>
    <id>https://papyrus.z29k.fr/en/atom.xml</id>
    <entry xml:lang="en">
        <title>Easy!Appointments</title>
        <published>2026-07-31T00:00:00+00:00</published>
        <updated>2026-07-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/easyappointments/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/easyappointments/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/easyappointments/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Easy!Appointments is an open source appointment scheduling platform you host on your own server. Customers pick a slot on a public booking page, while you manage everything else from a back office: services, providers, working hours and customer records. It is a self-hosted alternative to SaaS products like Calendly or Acuity, with your data staying on your infrastructure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Simple, proven stack&lt;&#x2F;strong&gt;: PHP 8 + MySQL behind Apache or Nginx, or a single &lt;code&gt;docker compose up&lt;&#x2F;code&gt; if you prefer. It runs fine on shared hosting or a small VPS, no heavy infrastructure required to take bookings&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Complete booking workflow&lt;&#x2F;strong&gt;: services grouped into categories, multiple providers each with their own working plan, breaks and availability rules, plus distinct roles (admin, provider, secretary)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Google Calendar sync&lt;&#x2F;strong&gt;: appointments booked on the public page sync with each provider&#x27;s Google Calendar, so staff keep using the tool they already live in&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Documented REST API&lt;&#x2F;strong&gt;: an OpenAPI spec ships with the repo, handy for embedding scheduling into an existing website or automating slot management&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Notifications and i18n&lt;&#x2F;strong&gt;: email confirmations and reminders for both customers and providers, with a UI translated into many languages&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Online booking for a medical practice, hair salon or car repair shop&lt;&#x2F;li&gt;
&lt;li&gt;Demo or support slot scheduling for a small business that does not want per-seat SaaS pricing&lt;&#x2F;li&gt;
&lt;li&gt;Managing consultations or office hours in a non-profit or public administration&lt;&#x2F;li&gt;
&lt;li&gt;Replacing a Calendly subscription with a self-hosted instance you fully control&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lychee</title>
        <published>2026-07-31T00:00:00+00:00</published>
        <updated>2026-07-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/lychee/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/lychee/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/lychee/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Lychee is an open source photo management system you install on your own server. You upload photos, organize them into albums and share them through public or protected links, all wrapped in a clean interface that holds its own against cloud services. It is the self-hosted alternative to Google Photos or Flickr for anyone who wants to own their photo library.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Your photos, your server&lt;&#x2F;strong&gt;: originals stay with you, with no forced compression, no third-party scanning and no risk of the service shutting down or changing its pricing&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Granular sharing&lt;&#x2F;strong&gt;: albums can be public, private, password-protected or reachable only through a direct link. You decide exactly who sees what&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Polished interface&lt;&#x2F;strong&gt;: smooth navigation, full-screen viewing, nested albums and EXIF metadata display (lens, aperture, ISO). It feels like a finished product, not a weekend project&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Solid Laravel stack&lt;&#x2F;strong&gt;: PHP 8 with Laravel on the back end, Vue.js on the front, and support for MySQL, MariaDB, PostgreSQL or SQLite depending on your setup&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Official Docker deployment&lt;&#x2F;strong&gt;: team-maintained images and a ready-to-use &lt;code&gt;docker compose&lt;&#x2F;code&gt; file get you running in minutes&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Personal or family photo library hosted on a NAS or a VPS&lt;&#x2F;li&gt;
&lt;li&gt;Photographer portfolio with public galleries and client deliveries through protected links&lt;&#x2F;li&gt;
&lt;li&gt;Sharing event photos (weddings, clubs, associations) without going through social networks&lt;&#x2F;li&gt;
&lt;li&gt;Leaving Google Photos while keeping full-resolution originals under your control&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>mCaptcha</title>
        <published>2026-07-31T00:00:00+00:00</published>
        <updated>2026-07-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/mcaptcha/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/mcaptcha/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/mcaptcha/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;mCaptcha is a self-hosted CAPTCHA system that replaces image grids with proof-of-work: the visitor&#x27;s browser solves a SHA256 computation in the background and the server validates the proof. For the user it all comes down to clicking a checkbox; for a bot, every request carries a computational cost that makes mass spam prohibitively expensive.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero friction&lt;&#x2F;strong&gt;: no crosswalks to identify, no distorted text to decipher. The computation is invisible and the user only clicks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Adaptive difficulty&lt;&#x2F;strong&gt;: imperceptible under normal traffic, the proof climbs to roughly two seconds of computation under attack. Attacking the site costs more than absorbing the requests.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Privacy by design&lt;&#x2F;strong&gt;: no cookies, no profiling, and rate-limiting does not rely on IP addresses, so users behind a NAT are never penalized.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;reCAPTCHA &#x2F; hCaptcha drop-in&lt;&#x2F;strong&gt;: the APIs are compatible with both services, so migrating does not require rewriting an existing integration.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Replay-resistant&lt;&#x2F;strong&gt;: single-use tokens with a 30-second lifetime, a Rust (Actix-web) server shipped as official Docker images. The core is AGPL, the client libraries use permissive licenses.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Protect sensitive forms (sign-up, login, contact) without depending on Google.&lt;&#x2F;li&gt;
&lt;li&gt;Replace reCAPTCHA or hCaptcha on an existing site through the compatible APIs.&lt;&#x2F;li&gt;
&lt;li&gt;Curb bot spam on a public instance (Git forge, forum, wiki).&lt;&#x2F;li&gt;
&lt;li&gt;Serve a GDPR-friendly CAPTCHA with no cookies and no data collection to declare.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Open Web Analytics</title>
        <published>2026-07-31T00:00:00+00:00</published>
        <updated>2026-07-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/open-web-analytics/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/open-web-analytics/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/open-web-analytics/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Open Web Analytics (OWA) is an open source web analytics framework you host on your own server. A first-party JavaScript tracker reports visits, pageviews and events from your sites, and everything shows up in a reporting dashboard without a single byte leaving for a third party. It is an alternative to Google Analytics for anyone who wants full ownership of their usage data.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Click heatmaps&lt;&#x2F;strong&gt;: OWA generates heatmaps overlaid on your pages to show where visitors actually click, no external tool required.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Domstream&lt;&#x2F;strong&gt;: built-in session recording replays a visitor&#x27;s mouse movements and journey across the page, session-replay style.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;WordPress and MediaWiki integrations&lt;&#x2F;strong&gt;: an official WordPress plugin and MediaWiki support let you instrument a site without writing a line of code.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;REST API and modular framework&lt;&#x2F;strong&gt;: administration and data access through an API, plus an extensible PHP module architecture for custom metrics.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-site&lt;&#x2F;strong&gt;: a single instance tracks as many sites as you need, with visitor geolocation and e-commerce transaction tracking included.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replace Google Analytics with a solution hosted on your own infrastructure, with end-to-end control of the data.&lt;&#x2F;li&gt;
&lt;li&gt;Analyze page ergonomics with heatmaps and session replay without subscribing to a Hotjar-like service.&lt;&#x2F;li&gt;
&lt;li&gt;Track the audience of a WordPress blog or a MediaWiki wiki through the native integrations.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize analytics for several client sites on a single instance.&lt;&#x2F;li&gt;
&lt;li&gt;Plug a custom dashboard into the REST API for tailored reports.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenSERP</title>
        <published>2026-07-31T00:00:00+00:00</published>
        <updated>2026-07-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openserp/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openserp/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openserp/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OpenSERP is a self-hosted SERP API and CLI that fetches live search results from six engines (Google, Bing, Yandex, Baidu, DuckDuckGo, Ecosia) without API keys or per-search billing. You run it with Docker or as a Go binary, then hit an HTTP endpoint that returns results in a unified JSON schema, whatever engine sits behind the query.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Six engines, one schema&lt;&#x2F;strong&gt;: responses from every engine are normalized into the same JSON format, so your code stays identical when you switch from Google to Bing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Megasearch&lt;&#x2F;strong&gt;: a single endpoint queries several engines in parallel, with deduplication and clustering of the results.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Content extraction&lt;&#x2F;strong&gt;: the tool can visit the pages it finds and embed their cleaned-up content as Markdown, ready to feed an LLM or a RAG pipeline.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Headless with fallback&lt;&#x2F;strong&gt;: browser rendering for JavaScript-heavy pages, raw HTTP mode as a backup, HTTP and SOCKS5 proxy support, built-in caching.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built for AI agents&lt;&#x2F;strong&gt;: MCP server, SDKs, n8n integration and JSON, Markdown, text or NdJSON output formats.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Give an LLM agent live web access without paying for a commercial search API.&lt;&#x2F;li&gt;
&lt;li&gt;Track the SEO ranking of your pages across several engines at once.&lt;&#x2F;li&gt;
&lt;li&gt;Feed a RAG pipeline with fresh content already extracted as Markdown.&lt;&#x2F;li&gt;
&lt;li&gt;Automate multi-engine competitive monitoring through the HTTP API.&lt;&#x2F;li&gt;
&lt;li&gt;Script image searches with language, date and file-type filters.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>authentik</title>
        <published>2026-07-30T00:00:00+00:00</published>
        <updated>2026-07-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/authentik/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/authentik/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/authentik/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;authentik is a self-hosted identity provider that centralises authentication across a whole application estate. It speaks SAML, OAuth2&#x2F;OIDC, LDAP, RADIUS and SCIM, and can also protect an application that supports none of those by sitting in front of it as a reverse proxy. The core is Python with a TypeScript frontend and outposts written in Go. The model is open core: the core ships under MIT, with a paid Enterprise edition on top.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Composable authentication flows&lt;&#x2F;strong&gt;: the central building block is the flow, a sequence of stages (identification, password, MFA, user write) you assemble yourself. Seven flow types cover authentication, authorization, enrollment, invalidation, recovery, stage configuration and unenrollment.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Policies evaluated at runtime&lt;&#x2F;strong&gt;: policies bind to stages and are evaluated right before a stage is shown, which lets you insert a step conditionally based on the user, their IP or their context.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in application proxy&lt;&#x2F;strong&gt;: outposts put SSO in front of a legacy app without touching its code, and also cover remote access over RDP, VNC and SSH.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;MFA and conditional access&lt;&#x2F;strong&gt;: WebAuthn and passkeys, TOTP, plus GeoIP and impossible travel detection to gate access.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Broad federation&lt;&#x2F;strong&gt;: OAuth2&#x2F;OIDC, OAuth1, SAML2, LDAP and Kerberos as inbound sources, SCIM provisioning outbound to sync accounts into target applications.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Putting a single SSO in front of a mixed homelab, from a Synology NAS to Grafana&lt;&#x2F;li&gt;
&lt;li&gt;Protecting an internal app with no OIDC support through the proxy and its outposts&lt;&#x2F;li&gt;
&lt;li&gt;Opening a self-service enrollment portal with staged validation&lt;&#x2F;li&gt;
&lt;li&gt;Acting as the LDAP or RADIUS layer for network gear that speaks nothing else&lt;&#x2F;li&gt;
&lt;li&gt;Provisioning and deprovisioning accounts in target applications over SCIM&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Gatus</title>
        <published>2026-07-30T00:00:00+00:00</published>
        <updated>2026-07-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/gatus/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/gatus/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/gatus/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Gatus is a self-hosted health dashboard written in Go and driven by a YAML file. Every monitored endpoint is described with its target, its interval and a list of conditions it has to satisfy to count as healthy. What you get is a readable status page plus an alerting engine, with no SaaS behind it and no agent to deploy on the monitored machines.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Conditions, not just a ping&lt;&#x2F;strong&gt;: validation is written with placeholders such as &lt;code&gt;[STATUS] == 200&lt;&#x2F;code&gt;, &lt;code&gt;[RESPONSE_TIME] &amp;lt; 500&lt;&#x2F;code&gt;, &lt;code&gt;[BODY].user.name == john&lt;&#x2F;code&gt; using JSONPath, or &lt;code&gt;len([BODY].data) &amp;lt; 5&lt;&#x2F;code&gt;. You assert on the content of the response, not merely on the fact that one arrived.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Plenty of protocols&lt;&#x2F;strong&gt;: HTTP, TCP, UDP, SCTP, ICMP, DNS, SSH, WebSocket and gRPC. Dedicated conditions also cover certificate expiry with &lt;code&gt;[CERTIFICATE_EXPIRATION] &amp;gt; 48h&lt;&#x2F;code&gt; and domain expiry.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;All in YAML&lt;&#x2F;strong&gt;: the config supports environment variable interpolation and loading several merged files from a directory. It versions and deploys like code.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Alerts everywhere&lt;&#x2F;strong&gt;: around forty built-in providers, from Slack and Discord to PagerDuty, Opsgenie, ntfy, Gotify or Home Assistant, plus custom webhooks for the rest.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Storage your way&lt;&#x2F;strong&gt;: memory by default, in which case nothing survives a restart, SQLite with write-through caching, or PostgreSQL for a shared instance.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Exposing a public status page for your services&lt;&#x2F;li&gt;
&lt;li&gt;Asserting that an API returns the right JSON rather than just a 200&lt;&#x2F;li&gt;
&lt;li&gt;Watching TLS certificate and domain expiry before either one bites&lt;&#x2F;li&gt;
&lt;li&gt;Monitoring internal services of a Kubernetes cluster from the inside&lt;&#x2F;li&gt;
&lt;li&gt;Routing homelab alerts to ntfy or Gotify&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Jellyfin</title>
        <published>2026-07-30T00:00:00+00:00</published>
        <updated>2026-07-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/jellyfin/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/jellyfin/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/jellyfin/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Jellyfin is a self-hosted media server that indexes a library of movies, TV shows, music, books and photos, then streams it to any client. The server runs on Windows, Linux, macOS or in Docker, pulls metadata and artwork automatically, and transcodes on the fly when the player cannot decode the source file. It is a fork of Emby 3.5.2, fully free software: no paid edition, no feature locked behind a subscription.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Nothing to pay, nothing to unlock&lt;&#x2F;strong&gt;: the server and the official clients are feature complete. No premium tier for hardware transcoding or offline playback.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No phone-home&lt;&#x2F;strong&gt;: no central account, no telemetry, no third-party service sitting between server and clients. Your catalog and viewing habits stay on the machine.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Broad hardware transcoding&lt;&#x2F;strong&gt;: jellyfin-ffmpeg taps QSV on Intel, NVENC&#x2F;NVDEC on NVIDIA, AMF on AMD, plus VA-API on Linux, Video Toolbox on macOS and RKMPP on Rockchip.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Clients everywhere&lt;&#x2F;strong&gt;: browser, desktop apps, Android and Android TV, iOS and tvOS, Fire TV, Roku, a Kodi plugin, plus a healthy set of third-party clients.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Documented REST API&lt;&#x2F;strong&gt;: everything the web UI does goes through a Swagger-described API, which makes scripting and custom integrations straightforward.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replacing Plex or Emby on a NAS or homelab without depending on an online service&lt;&#x2F;li&gt;
&lt;li&gt;Streaming a music library or an audiobook collection to mobile devices&lt;&#x2F;li&gt;
&lt;li&gt;Centralising TV recordings from a network tuner or an m3u feed, DVR included&lt;&#x2F;li&gt;
&lt;li&gt;Watching a film together remotely with synchronised playback via SyncPlay&lt;&#x2F;li&gt;
&lt;li&gt;Acting as the media backend for a custom project through the REST API&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Krayin</title>
        <published>2026-07-30T00:00:00+00:00</published>
        <updated>2026-07-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/krayin/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/krayin/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/krayin/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Krayin is an open source CRM built on Laravel on the server side and Vue.js on the front end. It covers the usual sales cycle: leads, contacts and organisations, deal pipelines, quotations, a product catalogue and activity tracking for calls, meetings and notes. The project positions itself as a CRM framework rather than a closed product: the code is split into Laravel packages you extend or swap out, which makes it a base to build a business-specific tool on instead of bending to a rigid SaaS.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Familiar Laravel stack&lt;&#x2F;strong&gt;: if the team already writes PHP, there is nothing new to learn. Migrations, Eloquent, service providers, artisan, all standard. Budget for PHP 8.3, Composer 2.5 and MySQL 8 as a minimum.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modular architecture&lt;&#x2F;strong&gt;: features ship as separate packages. Adding a domain module or overriding a view does not require forking the core.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Unlimited custom fields&lt;&#x2F;strong&gt;: the attribute system lets you add fields to leads, contacts or deals straight from the admin panel, no migration to write.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Role-based ACL&lt;&#x2F;strong&gt;: record-level access is configured per role, which saves hand-rolling a permission layer.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensions and localisation&lt;&#x2F;strong&gt;: the marketplace covers multi-tenant SaaS, WhatsApp and VoIP, plus inbound email parsing. The UI is translated into French, German, Spanish, Dutch and Portuguese.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Standing up a self-hosted CRM for a small business without starting from scratch&lt;&#x2F;li&gt;
&lt;li&gt;Building a bespoke business CRM by reusing the Laravel skeleton and its admin panel&lt;&#x2F;li&gt;
&lt;li&gt;Replacing a SaaS CRM when the need boils down to tracking leads through to quotes&lt;&#x2F;li&gt;
&lt;li&gt;Exposing sales data to other internal tools through the API&lt;&#x2F;li&gt;
&lt;li&gt;Serving several clients from a single install with the multi-tenant extension&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>listmonk</title>
        <published>2026-07-30T00:00:00+00:00</published>
        <updated>2026-07-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/listmonk/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/listmonk/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/listmonk/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;listmonk is a self-hosted newsletter and mailing list manager, shipped as a single Go binary with PostgreSQL as its only dependency. It handles subscribers, campaigns, templates and delivery stats from a web dashboard, and doubles as the transactional sending layer for an application through its API. The point is straightforward: keep your list and your sending data in house rather than at a provider that bills per subscriber.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One binary, one Postgres&lt;&#x2F;strong&gt;: no Redis, no external worker, no broker to babysit. Deployment is a binary plus a config file, or a Docker image.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;SQL segmentation&lt;&#x2F;strong&gt;: subscribers are filtered with SQL expressions over their arbitrary JSON attributes. You are not stuck inside a segment builder with three operators.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multiple SMTP queues&lt;&#x2F;strong&gt;: several SMTP servers in parallel, multi-threaded, with sliding window rate limiting to stay inside provider quotas.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Deliberately frugal&lt;&#x2F;strong&gt;: the instance the project cites as a reference sent over 7 million emails peaking at 57 MB of RAM and a fraction of one CPU core. It fits on a small VPS.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Go templates, your choice of editor&lt;&#x2F;strong&gt;: Go templating with logic and around a hundred functions, usable even in subject lines, plus a drag-and-drop visual builder, WYSIWYG, Markdown or raw HTML.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Hosting the newsletter for a blog or a product without relying on a third-party service&lt;&#x2F;li&gt;
&lt;li&gt;Sending an app&#x27;s transactional emails through the API with predefined templates&lt;&#x2F;li&gt;
&lt;li&gt;Segmenting a subscriber base from domain-specific attributes stored as JSON&lt;&#x2F;li&gt;
&lt;li&gt;Tracking bounces and the most clicked links across a campaign&lt;&#x2F;li&gt;
&lt;li&gt;Spreading send volume across several SMTP relays&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Navidrome</title>
        <published>2026-07-30T00:00:00+00:00</published>
        <updated>2026-07-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/navidrome/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/navidrome/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/navidrome/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Navidrome is a self-hosted music streaming server written in Go and shipped as a self-contained binary. It scans a library of audio files, reads their metadata, and exposes everything through a React web UI and the OpenSubsonic API. Where a general-purpose media server handles every kind of content, Navidrome only does music: the trade-off buys you proper handling of compilations, multi-disc albums and tags.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Genuinely light&lt;&#x2F;strong&gt;: the project claims it runs fine on a Raspberry Pi Zero and on old hardware. One binary to launch, no external database to provision.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;OpenSubsonic API&lt;&#x2F;strong&gt;: this is the de facto standard for self-hosted music. Any Subsonic, Madsonic or Airsonic client connects, which opens up a wide range of iOS and Android apps the project does not have to maintain itself.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Large libraries&lt;&#x2F;strong&gt;: tested against roughly 900,000 tracks, two thirds FLAC and one third MP3, with automatic folder monitoring to pick up new files and reload metadata.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Smart playlists&lt;&#x2F;strong&gt;: dynamic playlists in the spirit of iTunes, on top of automatic import of .m3u files.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-user and multi-library&lt;&#x2F;strong&gt;: per-user play counts, favourites and playlists, with separate libraries and distinct access rights, for instance music on one side and audiobooks on the other.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Listening to a FLAC collection from a phone through a Subsonic client, with on-the-fly Opus transcoding to spare the data plan&lt;&#x2F;li&gt;
&lt;li&gt;Running a music server on a Raspberry Pi or an entry-level NAS&lt;&#x2F;li&gt;
&lt;li&gt;Splitting music and audiobooks into two libraries with different access per household member&lt;&#x2F;li&gt;
&lt;li&gt;Sharing an album or a playlist through a public link&lt;&#x2F;li&gt;
&lt;li&gt;Scrobbling plays to Last.fm, ListenBrainz or Maloja&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Hindsight</title>
        <published>2026-07-27T00:00:00+00:00</published>
        <updated>2026-07-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/hindsight/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/hindsight/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/hindsight/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Hindsight is a memory system for AI agents built by Vectorize. Where most solutions merely store and retrieve conversation history, Hindsight learns: it extracts facts, entities and relationships, organizes them into memory networks inspired by human cognition, and generates new conclusions through reflection. The whole thing is self-hostable and posts state-of-the-art results on the LongMemEval benchmark.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Three operations, one simple mental model&lt;&#x2F;strong&gt;: retain stores information with automatic extraction of facts, entities, relationships and temporal data; recall retrieves the relevant memories; reflect analyzes existing memory to form new connections.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-strategy recall&lt;&#x2F;strong&gt;: four approaches run in parallel: vector similarity, BM25 keywords, entity graph traversal and temporal filtering. No need to choose between RAG and a knowledge graph, Hindsight combines both.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cognition-shaped memory&lt;&#x2F;strong&gt;: memories are organized into world facts, experiences, opinions and observations, rather than piled into a flat index of vectorized chunks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Two-line integration&lt;&#x2F;strong&gt;: an LLM wrapper adds memory to an existing agent without a rewrite. OpenAI, Anthropic, Gemini, Groq and Ollama are supported on the provider side.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible deployment&lt;&#x2F;strong&gt;: Docker container backed by PostgreSQL, or embedded in-process Python mode with no separate server. Python and TypeScript clients, per-user memory isolation, MIT license.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Give a chatbot long-term memory, with per-user isolation for personalization&lt;&#x2F;li&gt;
&lt;li&gt;Make an agent improve from one run to the next (support, code review, ops) instead of starting from scratch&lt;&#x2F;li&gt;
&lt;li&gt;Replace a homegrown RAG pipeline when plain vector search hits its limits&lt;&#x2F;li&gt;
&lt;li&gt;Build persistent user profiles fed by conversations&lt;&#x2F;li&gt;
&lt;li&gt;Experiment with agent memory research: an arXiv paper accompanies the project&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Pagefind</title>
        <published>2026-07-27T00:00:00+00:00</published>
        <updated>2026-07-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/pagefind/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/pagefind/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/pagefind/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Pagefind is a fully static full-text search library written in Rust. It runs after the build of any static site generator, indexes the produced HTML and drops a static search bundle right into your output files. The result: instant search in the browser, with no server, no database and no external service to host or pay for.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero infrastructure&lt;&#x2F;strong&gt;: the index is just a set of static files served alongside the rest of the site. No backend, no SaaS, no API keys to manage.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Minimal bandwidth&lt;&#x2F;strong&gt;: the index is split into chunks loaded on demand through WebAssembly. Searching a 10,000-page site costs less than 300kB in total, library included. Most sites land closer to 100kB.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Works with everything&lt;&#x2F;strong&gt;: Pagefind operates on the final HTML, not on your sources. Zola, Hugo, Eleventy, Astro, statically exported Next.js... if the build produces HTML, it works.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multilingual with zero config&lt;&#x2F;strong&gt;: multilingual sites are detected automatically, and each language gets its own index with the appropriate stemming.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Filters, sorting and metadata&lt;&#x2F;strong&gt;: a real filtering engine for faceted search, sorting by relevance or custom metadata, plus fine-grained content weighting.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Drop-in UI&lt;&#x2F;strong&gt;: since version 1.5, prebuilt web components (search modal included) can be added in a few lines. A low-level JavaScript API remains available to build a fully custom interface.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Add full-text search to a blog or documentation site built with Zola, Hugo, Astro or Eleventy&lt;&#x2F;li&gt;
&lt;li&gt;Set up faceted search on a knowledge base or a static catalog&lt;&#x2F;li&gt;
&lt;li&gt;Replace a hosted search service (Algolia, Meilisearch) when a static index is enough&lt;&#x2F;li&gt;
&lt;li&gt;Index non-HTML content (PDF, JSON) through the NodeJS and Python indexing libraries&lt;&#x2F;li&gt;
&lt;li&gt;Offer federated search across multiple static domains&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Another</title>
        <published>2026-07-23T00:00:00+00:00</published>
        <updated>2026-07-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/another/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/another/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/another/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Another is a desktop app to view and control an Android device from your computer, over USB or WiFi. It builds on ADB and the scrcpy server to pull the screen as H.264&#x2F;H.265 and forward inputs (touch, keyboard, navigation). Everything ships as a Tauri app: React front-end, Rust backend, lightweight binary.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;A real native app, not just a scrcpy fork&lt;&#x2F;strong&gt;: polished UI with a command bar, keyboard shortcuts and automatic device detection through ADB.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in MCP server&lt;&#x2F;strong&gt;: an LLM agent can drive the phone directly (screenshots, text input, launching apps, shell commands, running macros).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Macros&lt;&#x2F;strong&gt;: record and replay a sequence of interactions, handy for automating repetitive flows.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Wireless and audio&lt;&#x2F;strong&gt;: WiFi mirroring and device audio forwarding (Android 11+), plus screen recording to .webm.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Adaptive bitrate&lt;&#x2F;strong&gt;: video quality adjusts to on-screen activity to stay smooth.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Test an Android app on a big screen without leaving your keyboard and mouse.&lt;&#x2F;li&gt;
&lt;li&gt;Demo a phone in a meeting or a call, cleanly and without a camera.&lt;&#x2F;li&gt;
&lt;li&gt;Automate repetitive test flows with macros.&lt;&#x2F;li&gt;
&lt;li&gt;Let an AI agent drive an Android device through the MCP server.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Restreamer</title>
        <published>2026-07-23T00:00:00+00:00</published>
        <updated>2026-07-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/restreamer/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/restreamer/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/restreamer/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Restreamer is an open source, self-hosted video streaming server. It ingests a live feed once (OBS, IP camera, file or URL) and restreams it to several platforms at the same time, with no licensing fees and no third-party service. The engine is built around FFmpeg, with a web interface on top to configure and monitor everything.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One input, many outputs&lt;&#x2F;strong&gt;: the stream is pushed only once, then relayed to YouTube Live, Twitch, Facebook, Vimeo or any RTMP endpoint, without saturating your upstream bandwidth.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-protocol&lt;&#x2F;strong&gt;: built-in RTMP&#x2F;S, SRT and HLS servers, for both ingest and delivery.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Hardware transcoding&lt;&#x2F;strong&gt;: Nvidia CUDA, Intel VAAPI and Raspberry Pi (MMAL&#x2F;OMX) acceleration to keep the CPU free.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full web interface&lt;&#x2F;strong&gt;: setup wizard, embeddable VideoJS player, viewer and bandwidth monitoring, automatic HTTPS via Let&#x27;s Encrypt.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Documented REST API&lt;&#x2F;strong&gt;: the whole configuration is driven through a Swagger-documented JSON API, so it stays scriptable and automatable.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Broadcast a live stream to YouTube, Twitch and Facebook at once from a single upstream connection.&lt;&#x2F;li&gt;
&lt;li&gt;Host your own RTMP&#x2F;SRT server to receive OBS or IP camera feeds.&lt;&#x2F;li&gt;
&lt;li&gt;Embed a live player on your own site without relying on an external platform.&lt;&#x2F;li&gt;
&lt;li&gt;Run a streaming relay on a Raspberry Pi or a small self-hosted server.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Chandra</title>
        <published>2026-07-20T00:00:00+00:00</published>
        <updated>2026-07-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/chandra/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/chandra/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/chandra/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Chandra is an OCR model that turns images and PDFs into Markdown, HTML or JSON while preserving layout. It&#x27;s a vision-language model: instead of just extracting flat text, it detects structure (headings, columns, tables, figures) and rebuilds a clean document. It comes from Datalab, the team behind Marker and Surya.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Structured output&lt;&#x2F;strong&gt;: Markdown, HTML or JSON with layout preserved, not a jumbled wall of text.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Strong on the hard stuff&lt;&#x2F;strong&gt;: tables, math formulas, dense layouts, diagrams and captions are reconstructed well.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Handwriting and forms&lt;&#x2F;strong&gt;: cursive handwriting recognition and form parsing, checkboxes included.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multilingual&lt;&#x2F;strong&gt;: 90+ languages, including non-Latin scripts (Arabic, Japanese, Hindi, Russian).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Several ways to run it&lt;&#x2F;strong&gt;: CLI (&lt;code&gt;pip install chandra-ocr&lt;&#x2F;code&gt;), locally via Hugging Face Transformers, or on a vLLM server, plus a small Streamlit app to try it out.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;License to note&lt;&#x2F;strong&gt;: the code is Apache 2.0, but the model weights are under OpenRAIL-M (restricted use, commercial license available). Worth checking before production use.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Digitize scans, PDFs or handwritten forms into usable documents.&lt;&#x2F;li&gt;
&lt;li&gt;Cleanly pull out financial tables or math-heavy academic papers.&lt;&#x2F;li&gt;
&lt;li&gt;Feed a RAG pipeline with clean Markdown instead of raw OCR text.&lt;&#x2F;li&gt;
&lt;li&gt;Process multilingual documents without switching tools per language.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Openship</title>
        <published>2026-07-20T00:00:00+00:00</published>
        <updated>2026-07-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openship/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openship/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openship/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Openship is a self-hostable deployment platform with built-in CI&#x2F;CD. You push your code, it detects the stack, builds the app and ships the containers to your own server, Heroku-style but on your infrastructure. It&#x27;s driven from a CLI, a web dashboard or a desktop app, whichever you prefer.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero-config push-to-deploy&lt;&#x2F;strong&gt;: automatic stack detection (Node, Python, Go, Rust, PHP, Ruby, Java, .NET, Docker) and builds without writing a pipeline.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Three interfaces&lt;&#x2F;strong&gt;: CLI, web dashboard and desktop app for the same infra, depending on what you prefer.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Backend services included&lt;&#x2F;strong&gt;: Postgres, MySQL, MongoDB, Redis, storage and WebSockets provisioned alongside the app.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;The plumbing handled&lt;&#x2F;strong&gt;: Let&#x27;s Encrypt SSL (wildcard included), a mail server with DKIM&#x2F;SPF&#x2F;DMARC, real-time monitoring and scheduled backups.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-target&lt;&#x2F;strong&gt;: cloud, VPS, dedicated or multi-node servers, with Docker Compose compatibility.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Deploy your side projects without paying for a monthly PaaS.&lt;&#x2F;li&gt;
&lt;li&gt;Run a homemade Heroku on a VPS and keep control of the infra.&lt;&#x2F;li&gt;
&lt;li&gt;Provision app plus database plus Redis at once for a full environment.&lt;&#x2F;li&gt;
&lt;li&gt;Run production workloads self-hosted across multiple nodes.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Probo</title>
        <published>2026-07-20T00:00:00+00:00</published>
        <updated>2026-07-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/probo/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/probo/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/probo/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Probo is an open source GRC (governance, risk, compliance) platform built for engineering teams. It covers the whole cycle: risk register, control tracking, vendor risk, data privacy, access reviews, audit programs and document approval workflows. The backend is Go with PostgreSQL, and the whole thing is self-hostable.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The whole GRC cycle in one place&lt;&#x2F;strong&gt;: risks (inherent and residual scoring), controls, custom frameworks with a Statement of Applicability, audit evidence and document control.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-framework&lt;&#x2F;strong&gt;: SOC 2, ISO 27001, GDPR and HIPAA, rather than starting over for each standard.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI-native&lt;&#x2F;strong&gt;: Probo exposes 270+ MCP tools, letting an LLM agent drive compliance tasks (evidence collection, access reviews) directly.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built for engineers&lt;&#x2F;strong&gt;: a web console, but also a CLI, GraphQL and MCP APIs, so it&#x27;s automatable and not just click-through.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Vendor risk and privacy&lt;&#x2F;strong&gt;: third-party inventory, automated website assessment, DPA&#x2F;BAA tracking, DPIA and processing records.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Prepare a SOC 2 or ISO 27001 without committing to a closed SaaS platform.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize risks, controls and audit evidence for a security team.&lt;&#x2F;li&gt;
&lt;li&gt;Track the risk of vendors and third-party providers.&lt;&#x2F;li&gt;
&lt;li&gt;Automate compliance workflows via LLM agents (MCP) or n8n.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>AltSendme</title>
        <published>2026-07-15T00:00:00+00:00</published>
        <updated>2026-07-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/alt-sendme/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/alt-sendme/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/alt-sendme/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;AltSendme is a peer-to-peer file transfer app that moves data straight from one device to another, without going through a cloud. You drop a file or folder, it generates a ticket (a one-time code) that the recipient pastes to start the transfer. It&#x27;s a GUI alternative to the &lt;code&gt;sendme&lt;&#x2F;code&gt; CLI, built on the Iroh library for the networking side.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Genuinely peer-to-peer&lt;&#x2F;strong&gt;: direct device-to-device connection when possible, with an encrypted relay as fallback when direct doesn&#x27;t get through.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;End-to-end encrypted&lt;&#x2F;strong&gt;: QUIC + TLS 1.3, BLAKE3 integrity, Ed25519 authentication. Relays only ever see encrypted traffic.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No account, no limits&lt;&#x2F;strong&gt;: no sign-up, no tracking, no ads, and it handles huge files (tested to hundreds of GB).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cross-platform&lt;&#x2F;strong&gt;: Windows, macOS, Linux, Android, plus a web version and the CLI, all in Tauri.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sturdy transfers&lt;&#x2F;strong&gt;: resumable after a drop, throughput that saturates a gigabit link (~125 MB&#x2F;s measured).&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Send a large file to someone without uploading it to a third-party service.&lt;&#x2F;li&gt;
&lt;li&gt;Move files between your own devices, whatever the platform.&lt;&#x2F;li&gt;
&lt;li&gt;Share sensitive data with no cloud intermediary.&lt;&#x2F;li&gt;
&lt;li&gt;Distribute a very large dataset or archive without splitting it.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Capso</title>
        <published>2026-07-15T00:00:00+00:00</published>
        <updated>2026-07-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/capso/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/capso/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/capso/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Capso is a native macOS screenshot and screen recording app, in the spirit of CleanShot X. A floating toolbar gathers the modes (area, window, fullscreen, scrolling, timer, OCR, recording), and annotation happens right after capture. Written in Swift&#x2F;SwiftUI, it targets macOS 15+.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unified capture&lt;&#x2F;strong&gt;: a CleanShot-style HUD with adjustable selection, aspect-ratio presets and a direct switch between screenshot and recording.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Annotation and OCR&lt;&#x2F;strong&gt;: arrows, shapes, text, pixelation, numbered markers, plus on-screen text recognition with clipboard copy and translation.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Polished recording&lt;&#x2F;strong&gt;: webcam picture-in-picture (4 shapes), pause&#x2F;resume, countdown, and an editor with trimming, zoom suggestions, cursor smoothing and background styling.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;History and sharing&lt;&#x2F;strong&gt;: filterable capture library, pin-to-screen (click-through mode), cloud upload via Cloudflare R2.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;License to note&lt;&#x2F;strong&gt;: it&#x27;s source-available under BSL 1.1, converting automatically to Apache 2.0 in April 2029. Not classic open source, worth keeping in mind.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Document an interface with annotated captures and numbered markers.&lt;&#x2F;li&gt;
&lt;li&gt;Record a tutorial or a demo with webcam picture-in-picture.&lt;&#x2F;li&gt;
&lt;li&gt;Extract text from a screen region via OCR without reaching for another tool.&lt;&#x2F;li&gt;
&lt;li&gt;Keep a searchable history of your captures instead of cluttering the desktop.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenHive</title>
        <published>2026-07-15T00:00:00+00:00</published>
        <updated>2026-07-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openhive/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openhive/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openhive/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OpenHive is a self-hostable team messaging app, in the spirit of Slack. You get public and private channels, direct messages, threads and video calls, but on your own instance. The stack is Next.js on the front with a Supabase (PostgreSQL) backend, so you keep control of your data without depending on a SaaS.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Familiar stack&lt;&#x2F;strong&gt;: Next.js + Supabase, with Row Level Security applied throughout the database. If you already work in that ecosystem, hosting and tinkering are on known ground.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in calls&lt;&#x2F;strong&gt;: audio, video and screen sharing via LiveKit, right inside the app, not through a third-party service.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;A real messenger, not a skeleton&lt;&#x2F;strong&gt;: threads, emoji reactions, mentions, rich text editor, file attachments, bookmarks and scheduled messages.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible&lt;&#x2F;strong&gt;: slash commands and incoming&#x2F;outgoing webhooks to wire in your own integrations.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Team management&lt;&#x2F;strong&gt;: email invitations, owner&#x2F;admin&#x2F;member roles and a setup wizard to provision the database.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Run internal team messaging without sending conversations to a SaaS vendor.&lt;&#x2F;li&gt;
&lt;li&gt;Keep data sovereignty for a team or an org that cares about it.&lt;&#x2F;li&gt;
&lt;li&gt;Build a custom communication platform on a Next.js&#x2F;Supabase base.&lt;&#x2F;li&gt;
&lt;li&gt;Avoid per-seat subscriptions as the team grows.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenObserve</title>
        <published>2026-07-15T00:00:00+00:00</published>
        <updated>2026-07-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openobserve/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openobserve/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openobserve/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OpenObserve is a self-hostable observability platform that brings logs, metrics, traces, RUM, dashboards and alerts together in one place. Written in Rust, it positions itself as an alternative to Datadog, Splunk or Elasticsearch, with a heavy focus on storage cost. It runs as a single binary, from standalone mode all the way to HA clusters.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Object storage, built for cost&lt;&#x2F;strong&gt;: data is written as columnar Parquet straight to S3 (or compatible), with intelligent caching. The project claims up to 140x cheaper than Elasticsearch.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Single binary&lt;&#x2F;strong&gt;: start standalone to try it, then move to a distributed cluster without switching tools.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;OpenTelemetry-native&lt;&#x2F;strong&gt;: OTLP ingestion with no proprietary agent, so no lock-in on the collection side.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;SQL queries&lt;&#x2F;strong&gt;: SQL for logs and traces, SQL or PromQL for metrics, no in-house language to learn.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full platform&lt;&#x2F;strong&gt;: web UI with a drag-and-drop dashboard builder, alerting across logs&#x2F;metrics&#x2F;traces and session replay on the RUM side.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Centralize an infra&#x27;s logs without blowing up the storage bill.&lt;&#x2F;li&gt;
&lt;li&gt;Follow distributed traces across a microservices architecture.&lt;&#x2F;li&gt;
&lt;li&gt;Replace an ELK stack that has become heavy to operate.&lt;&#x2F;li&gt;
&lt;li&gt;Plug in your metrics and keep PromQL without running a full Prometheus alongside.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Sendune Email Designer</title>
        <published>2026-07-15T00:00:00+00:00</published>
        <updated>2026-07-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/sendune-email-designer/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/sendune-email-designer/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/sendune-email-designer/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Sendune Email Designer is an open source WYSIWYG editor for building HTML emails without writing code. You drag blocks (columns, text, images, buttons, dividers) onto a canvas and the tool generates clean HTML, ready to send through any email service. It ships as an Angular component (&lt;code&gt;@send-with-ses&#x2F;ng-email-designer&lt;&#x2F;code&gt;) you embed in your own app.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No intermediate layer&lt;&#x2F;strong&gt;: unlike MJML, it outputs email-client-compatible HTML directly, with no compilation step.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Three modes&lt;&#x2F;strong&gt;: drag-and-drop designer, HTML code editor and plain text version, in the same interface.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Embeddable&lt;&#x2F;strong&gt;: it&#x27;s an Angular component you drop into your product, not just a standalone app.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Portable HTML&lt;&#x2F;strong&gt;: the output works with any provider (SES, Postmark, Sendgrid...), so you&#x27;re not locked in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Customizable&lt;&#x2F;strong&gt;: UI theming via CSS variables and image handling with cloud storage.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Give your users an email editor right inside your SaaS.&lt;&#x2F;li&gt;
&lt;li&gt;Build clean transactional templates for AWS SES or another ESP.&lt;&#x2F;li&gt;
&lt;li&gt;Mock up a marketing campaign without a proprietary builder.&lt;&#x2F;li&gt;
&lt;li&gt;Generate reusable email HTML without fighting tables and compatibility hacks.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>macshot</title>
        <published>2026-07-13T00:00:00+00:00</published>
        <updated>2026-07-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/macshot/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/macshot/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/macshot/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;macshot is a native macOS screenshot and screen recording tool. Hit a global hotkey, select a region, annotate, then copy or save, all in one flow. Written in Swift with AppKit (no Electron), it handles both annotated screenshots and video capture with a built-in editor.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Full annotation toolkit&lt;&#x2F;strong&gt;: around twenty tools (arrows, shapes, text, numbered markers, stamps, pixelation, loupe, measurement).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Scrolling capture&lt;&#x2F;strong&gt;: stitches a vertically or horizontally scrolled page into a single image using Apple Vision.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Video recording&lt;&#x2F;strong&gt;: MP4 export up to 120fps or GIF, with system audio and microphone.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Automatic PII redaction&lt;&#x2F;strong&gt;: detects and censors emails, phone numbers, credit cards, API keys, faces and people.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;OCR and cloud uploads&lt;&#x2F;strong&gt;: text extraction in 30+ languages, direct upload to Google Drive, S3, R2 or MinIO.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Write technical docs with annotated screenshots.&lt;&#x2F;li&gt;
&lt;li&gt;File a bug report with a marked-up, commented capture.&lt;&#x2F;li&gt;
&lt;li&gt;Share a screen without leaking sensitive data thanks to auto-redaction.&lt;&#x2F;li&gt;
&lt;li&gt;Record a short screencast and export it as a GIF for a PR or ticket.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Markdownify MCP</title>
        <published>2026-07-13T00:00:00+00:00</published>
        <updated>2026-07-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/markdownify-mcp/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/markdownify-mcp/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/markdownify-mcp/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Markdownify MCP is a Model Context Protocol server that converts almost any format into Markdown. It exposes tools to an LLM (Claude first and foremost) to turn PDFs, images, audio, DOCX, XLSX, PPTX or web pages into clean text. The point: hand the model readable sources instead of binary files it cannot use.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wide format coverage&lt;&#x2F;strong&gt;: PDF, images (with OCR), audio (with transcription), DOCX, XLSX, PPTX, plus web pages.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Not just files&lt;&#x2F;strong&gt;: also pulls YouTube transcripts, Bing search results and the content of arbitrary web pages.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native MCP integration&lt;&#x2F;strong&gt;: plugs straight into an MCP client, so conversions become tools the model calls on its own.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Access control&lt;&#x2F;strong&gt;: path allow-listing via &lt;code&gt;MD_ALLOWED_PATHS&lt;&#x2F;code&gt;, local execution, Docker support with security boundaries.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Runs locally&lt;&#x2F;strong&gt;: content stays on your machine, with no upload to a third-party service for conversion.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Ingest a stack of documents (PDF, DOCX, XLSX) into a knowledge base for an LLM.&lt;&#x2F;li&gt;
&lt;li&gt;Extract text from an audio file or a YouTube video to analyze it with Claude.&lt;&#x2F;li&gt;
&lt;li&gt;Give an agent the clean content of a web page without manual copy-paste.&lt;&#x2F;li&gt;
&lt;li&gt;Build a document ingestion pipeline while keeping everything local.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenAdServer</title>
        <published>2026-07-13T00:00:00+00:00</published>
        <updated>2026-07-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openadserver/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openadserver/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openadserver/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OpenAdServer is a self-hosted, open source ad serving platform. It runs a full ad delivery pipeline: candidate retrieval, filtering, machine-learning click-through-rate (CTR) prediction, then real-time eCPM ranking. In other words, you run your own ad network without a third-party provider, with an ML layer to optimize revenue.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ML-based CTR prediction&lt;&#x2F;strong&gt;: DeepFM, logistic regression and factorization machine models in PyTorch, with sub-5ms prediction latency claimed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-time eCPM ranking&lt;&#x2F;strong&gt;: automatic ad ranking to maximize revenue on every request.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Fine-grained targeting&lt;&#x2F;strong&gt;: geo-location, device type, OS, demographics and interests.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multiple billing models&lt;&#x2F;strong&gt;: CPM, CPC, CPA and oCPM in the same engine.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Production-ready&lt;&#x2F;strong&gt;: FastAPI (P99 &amp;lt; 10ms), PostgreSQL, Redis, Docker Compose deployment and Prometheus&#x2F;Grafana observability.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Build an in-house ad network for an SMB or a publisher.&lt;&#x2F;li&gt;
&lt;li&gt;Monetize in-app traffic from a game or an application.&lt;&#x2F;li&gt;
&lt;li&gt;Manage house ads or direct deals without an external provider.&lt;&#x2F;li&gt;
&lt;li&gt;Serve as a study base for ad-tech system architecture.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>pdfme</title>
        <published>2026-07-13T00:00:00+00:00</published>
        <updated>2026-07-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/pdfme/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/pdfme/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/pdfme/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;pdfme is a TypeScript library that generates PDFs from JSON-based templates. You design a layout once (by hand or in the bundled WYSIWYG designer), feed it your data, and the library outputs the PDF. It works both in the browser and in Node.js, so you avoid standing up a separate rendering service or wrestling with HTML-to-PDF hacks.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;JSON templates&lt;&#x2F;strong&gt;: the layout is plain data, so it&#x27;s versionable in Git, diffable and easy to manipulate programmatically.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;WYSIWYG designer&lt;&#x2F;strong&gt;: a React component to drag-and-drop fields into place instead of coding the layout by hand.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Browser and Node.js&lt;&#x2F;strong&gt;: the same engine runs on both sides, handy for generating on the front end or the back end.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modular packages&lt;&#x2F;strong&gt;: &lt;code&gt;@pdfme&#x2F;generator&lt;&#x2F;code&gt;, &lt;code&gt;@pdfme&#x2F;ui&lt;&#x2F;code&gt;, &lt;code&gt;@pdfme&#x2F;common&lt;&#x2F;code&gt; and a CLI to validate and diagnose templates.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible schemas&lt;&#x2F;strong&gt;: text, images, tables, barcodes, signatures, plus custom field types through plugins.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Generate invoices, receipts or certificates from structured data.&lt;&#x2F;li&gt;
&lt;li&gt;Produce documents in bulk from a database or spreadsheet.&lt;&#x2F;li&gt;
&lt;li&gt;Let a non-technical user edit a template through the designer.&lt;&#x2F;li&gt;
&lt;li&gt;Fill dynamic PDF forms straight in the browser.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Technitium DNS Server</title>
        <published>2026-07-13T00:00:00+00:00</published>
        <updated>2026-07-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/technitium-dns/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/technitium-dns/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/technitium-dns/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Technitium DNS Server is an open source, self-hosted DNS server that is both authoritative and recursive. You drop it on your network in place of your ISP&#x27;s DNS to resolve queries locally, block ads and malware at the DNS level, and encrypt your traffic. It is managed entirely from a web console, with no hand-editing of zone files.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Authoritative and recursive&lt;&#x2F;strong&gt;: host your own zones and resolve everything else from the same server.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native encrypted DNS&lt;&#x2F;strong&gt;: DNS-over-TLS, DNS-over-HTTPS and DNS-over-QUIC, as client and server, to stop surveillance and content injection.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Ad&#x2F;malware blocking&lt;&#x2F;strong&gt;: blocklist management with CNAME cloaking, Pi-hole style but built in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Advanced caching&lt;&#x2F;strong&gt;: persistent cache, prefetching and stale-serve to hold load (100,000+ req&#x2F;s claimed).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;DNSSEC, DHCP and clustering&lt;&#x2F;strong&gt;: RSA&#x2F;ECDSA&#x2F;EdDSA signing, a built-in DHCP server and multi-instance management from one console.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Block ads and trackers across an entire home network.&lt;&#x2F;li&gt;
&lt;li&gt;Host authoritative DNS for your own domains.&lt;&#x2F;li&gt;
&lt;li&gt;Encrypt DNS queries to escape ISP filtering and snooping.&lt;&#x2F;li&gt;
&lt;li&gt;Run split-horizon or geolocation-based responses on a corporate network.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Thoth Blueprint</title>
        <published>2026-07-13T00:00:00+00:00</published>
        <updated>2026-07-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/thoth-blueprint/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/thoth-blueprint/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/thoth-blueprint/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Thoth Blueprint is a free, browser-based tool for designing database schemas. You build your model with drag-and-drop, connect your tables, then export to SQL, DBML, JSON or SVG. It runs offline-first: everything is stored locally, installable as a PWA, with no account and no usage limits.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Offline-first visual editor&lt;&#x2F;strong&gt;: drag-and-drop design in the browser, data stored locally, installable as a PWA.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-format export&lt;&#x2F;strong&gt;: SQL, DBML, JSON and SVG, with a full DBML workflow (import, export and a dedicated editor).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Migration generation&lt;&#x2F;strong&gt;: produces migration files for Laravel, TypeORM and Django straight from the schema.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Zone organization&lt;&#x2F;strong&gt;: group tables into lockable zones, copy&#x2F;paste elements, keyboard shortcuts.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Checkpoints&lt;&#x2F;strong&gt;: snapshots of the model to experiment without breaking anything.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Prototype a database schema before implementing it.&lt;&#x2F;li&gt;
&lt;li&gt;Generate migrations for a Laravel, Django or TypeORM project from the visual model.&lt;&#x2F;li&gt;
&lt;li&gt;Document an existing database by importing it via DBML.&lt;&#x2F;li&gt;
&lt;li&gt;Share a database design by exporting it to SVG without relying on an online service.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Tunarr</title>
        <published>2026-07-13T00:00:00+00:00</published>
        <updated>2026-07-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/tunarr/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/tunarr/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/tunarr/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Tunarr builds live TV channels out of your own media. You connect Plex, Jellyfin, Emby or local files, arrange a program lineup, and Tunarr streams it as a real linear channel that runs 24&#x2F;7. It impersonates an HDHomeRun tuner, so Plex or any IPTV client can consume it as a regular TV source.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multi-source&lt;&#x2F;strong&gt;: pulls Plex, Jellyfin, Emby and local files into the same channels, with search and filtering to build lineups.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Visual lineup editor&lt;&#x2F;strong&gt;: drag-and-drop programming, filler content management, time-slot and random-slot scheduling.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;HDHomeRun spoofing + IPTV&lt;&#x2F;strong&gt;: seen as a hardware tuner by Plex, or exposed as M3U for Tivimate, UHF and other IPTV clients.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Hardware-accelerated transcoding&lt;&#x2F;strong&gt;: NVENC, VAAPI, QuickSync and VideoToolbox, with several configurable transcode profiles.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Per-channel settings&lt;&#x2F;strong&gt;: logos, audio and subtitle language preferences, automatic config backups.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Recreate a continuous channel-surfing experience from a personal media library.&lt;&#x2F;li&gt;
&lt;li&gt;Assemble themed channels mixing movies, episodes and music videos.&lt;&#x2F;li&gt;
&lt;li&gt;Stream to IPTV clients like Tivimate or UHF from a self-hosted server.&lt;&#x2F;li&gt;
&lt;li&gt;Surface your media as a live TV source straight inside the Plex interface.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Driver.js</title>
        <published>2026-07-03T00:00:00+00:00</published>
        <updated>2026-07-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/driver-js/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/driver-js/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/driver-js/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Driver.js is a JavaScript library for building product tours, user onboarding and element highlights on a web page. It dims the page, spotlights the target element and shows a contextual popover, step by step. Written in vanilla TypeScript, it weighs about 5 kb gzipped and has zero dependencies.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero dependencies, ~5 kb&lt;&#x2F;strong&gt;: nothing extra dragged into your bundle, works with or without a framework (React, Vue, Angular or vanilla).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Simple but complete API&lt;&#x2F;strong&gt;: a multi-step tour is declared in a few lines, with hooks (&lt;code&gt;onHighlight&lt;&#x2F;code&gt;, &lt;code&gt;onNext&lt;&#x2F;code&gt;...) to wire in your own logic.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Highlight only or full tour&lt;&#x2F;strong&gt;: spotlight a single element to announce a feature, or chain a complete walkthrough.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Keyboard-driven&lt;&#x2F;strong&gt;: step navigation from the keyboard, accessible, focus handled automatically.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Customizable&lt;&#x2F;strong&gt;: overridable CSS, positionable popovers, free HTML content inside the bubbles.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Onboarding a new user on first login&lt;&#x2F;li&gt;
&lt;li&gt;Announcing a new feature with a targeted highlight&lt;&#x2F;li&gt;
&lt;li&gt;Contextual help on a complex interface (dashboard, editor)&lt;&#x2F;li&gt;
&lt;li&gt;Guided product walkthrough in a demo or interactive docs&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>FingerprintJS</title>
        <published>2026-07-03T00:00:00+00:00</published>
        <updated>2026-07-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/fingerprintjs/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/fingerprintjs/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/fingerprintjs/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;FingerprintJS is an open-source library that computes a visitor identifier from browser attributes (canvas, fonts, audio, screen resolution, plugins, and more). It runs entirely client-side, with no cookies or local storage, and the identifier stays stable even in private browsing or after the user clears their browser data. One caveat: the open-source version is intentionally less accurate than the commercial offering (Fingerprint Pro) and remains vulnerable to spoofing. Treat it as a risk signal, not ground truth.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No cookies, no storage&lt;&#x2F;strong&gt;: identity is recomputed from the browser itself, so there&#x27;s nothing to persist client-side and nothing to consent to in the cookie sense.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Stable in private mode&lt;&#x2F;strong&gt;: the fingerprint survives incognito and history clearing, where a cookie would simply vanish.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;A few lines to integrate&lt;&#x2F;strong&gt;: import via ESM or CDN, call &lt;code&gt;await fp.get()&lt;&#x2F;code&gt;, and you get a &lt;code&gt;visitorId&lt;&#x2F;code&gt;. Written in TypeScript, typings included.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cross-browser&lt;&#x2F;strong&gt;: works on Chrome, Firefox, Safari, Edge and mobile with zero server-side config.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;MIT and backend-free&lt;&#x2F;strong&gt;: everything runs in the browser, so you send nothing to a third party unless you choose to.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Fraud and multi-account detection: serial signups, free-trial abuse&lt;&#x2F;li&gt;
&lt;li&gt;Rate limiting or anti-abuse without forcing users to authenticate&lt;&#x2F;li&gt;
&lt;li&gt;Unique visitor analytics without dropping a cookie&lt;&#x2F;li&gt;
&lt;li&gt;Extra risk signal inside a login or payment flow&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Homebox</title>
        <published>2026-07-03T00:00:00+00:00</published>
        <updated>2026-07-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/homebox/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/homebox/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/homebox/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Homebox is a self-hosted inventory system for everything you own at home. You catalog items with photos, locations, categories and custom fields, then find anything through search. Go backend, Vue frontend, embedded SQLite: it runs in a single Docker container and uses about 50 MB of RAM at idle.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Light and self-contained&lt;&#x2F;strong&gt;: a single Go binary plus SQLite, no external database to manage, ~50 MB of RAM. Fine on a Raspberry Pi or a small NAS.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible organization&lt;&#x2F;strong&gt;: nested locations, categories, tags and custom fields to match how you actually store things.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full tracking&lt;&#x2F;strong&gt;: warranties, documents (receipts, manuals), purchase and maintenance history attached to each item.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Search and QR codes&lt;&#x2F;strong&gt;: find an item in a few keystrokes, or print QR labels to scan a box and see what&#x27;s inside.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted and private&lt;&#x2F;strong&gt;: your data stays with you, one-command Docker deploy, rootless and hardened image variants available.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Home inventory for insurance: photos, value and receipts in case of a claim&lt;&#x2F;li&gt;
&lt;li&gt;Tracking homelab or workshop gear (where is what, which warranty)&lt;&#x2F;li&gt;
&lt;li&gt;Stock management for a small association or a fablab&lt;&#x2F;li&gt;
&lt;li&gt;Knowing which box holds what after a move&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>wg-easy</title>
        <published>2026-07-03T00:00:00+00:00</published>
        <updated>2026-07-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/wg-easy/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/wg-easy/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/wg-easy/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;wg-easy is a web UI that installs and manages a WireGuard server on any Linux host. You deploy a single Docker container, open the UI, and create or revoke VPN clients without ever hand-editing a config file. It&#x27;s the admin layer WireGuard lacks when you don&#x27;t want to juggle &lt;code&gt;wg&lt;&#x2F;code&gt; and &lt;code&gt;.conf&lt;&#x2F;code&gt; files on the command line.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;QR-code client onboarding&lt;&#x2F;strong&gt;: every client gets its own QR code and downloadable config file, so pairing a phone takes about ten seconds.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full management from the UI&lt;&#x2F;strong&gt;: create, edit, disable or delete a client, with expiration and one-time links to share a temporary config.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-time stats&lt;&#x2F;strong&gt;: per-client Tx&#x2F;Rx charts and connection status, without pulling in a separate monitoring tool.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;2FA and hardening&lt;&#x2F;strong&gt;: two-factor auth on the UI, per-client firewall filtering, IPv6 and CIDR support.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Docker&#x2F;Podman deploy&lt;&#x2F;strong&gt;: a single &lt;code&gt;docker compose up&lt;&#x2F;code&gt; and you&#x27;re live. Prometheus metrics are exposed if you want to wire it into your observability stack.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Remote access to a homelab or private network without exposing services directly&lt;&#x2F;li&gt;
&lt;li&gt;Self-hosted team VPN for a small org, no third-party service involved&lt;&#x2F;li&gt;
&lt;li&gt;Secure tunnel to a cloud server for administration&lt;&#x2F;li&gt;
&lt;li&gt;Granting temporary access to a contractor through an expiring one-time link&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Fleetbase</title>
        <published>2026-06-30T00:00:00+00:00</published>
        <updated>2026-06-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/fleetbase/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/fleetbase/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/fleetbase/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Fleetbase is an open-source operating system for logistics and supply chain, built to be self-hosted. It bundles order management, fleet tracking, route optimization and service zones into a modular, API-driven platform. Designed for delivery, courier, field service and any business that moves things from point A to point B.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Modular architecture&lt;&#x2F;strong&gt;: an extensible PHP core plus add-on extensions to fit the platform to your business without forking the project.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-time by default&lt;&#x2F;strong&gt;: live fleet map, order tracking and a built-in WebSocket server to push updates as they happen.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API-first&lt;&#x2F;strong&gt;: everything runs through a documented REST API, with webhooks and WebSocket — perfect for wiring in your own apps or existing systems.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Mobile apps included&lt;&#x2F;strong&gt;: Storefront (customer-facing ordering) and Navigator (driver-facing) ship alongside the web console.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted and open source&lt;&#x2F;strong&gt;: Docker Compose &#x2F; Kubernetes (Helm) deployment, AGPL-3.0 license, your data stays with you.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Delivery or courier platform with dispatch and real-time tracking&lt;&#x2F;li&gt;
&lt;li&gt;Route optimization via OSRM to cut empty miles&lt;&#x2F;li&gt;
&lt;li&gt;Field service management (technicians, on-site jobs)&lt;&#x2F;li&gt;
&lt;li&gt;Logistics backend for e-commerce or food delivery&lt;&#x2F;li&gt;
&lt;li&gt;Extensible foundation to build your own custom TMS&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>ISMS Builder</title>
        <published>2026-06-22T00:00:00+00:00</published>
        <updated>2026-06-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/isms-builder/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/isms-builder/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/isms-builder/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;ISMS Builder is a self-hosted web platform to run an Information Security Management System (ISMS). It covers the full compliance lifecycle, from drafting policies to collecting audit evidence, across several frameworks (ISO 27001:2022, NIS2, GDPR, BSI IT-Grundschutz, EUCS, ISO 9001). The goal: give SMEs an alternative to overpriced compliance software that keeps your data on vendor servers.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multi-framework&lt;&#x2F;strong&gt;: ISO 27001:2022, NIS2, GDPR, BSI IT-Grundschutz, EUCS and ISO 9001 in a single tool, with per-entity applicability.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Complete modules&lt;&#x2F;strong&gt;: policies, Statement of Applicability (313 controls), risk management, assets, suppliers, business continuity, training, incident inbox and audit findings.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted, your data stays yours&lt;&#x2F;strong&gt;: Docker or Node.js deployment, JSON, SQLite or MariaDB&#x2F;MySQL storage, no cloud dependency.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in traceability&lt;&#x2F;strong&gt;: an audit trail on every action, six-level RBAC, JWT authentication and optional TOTP 2FA.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multilingual + optional AI&lt;&#x2F;strong&gt;: UI in German, English, French and Dutch, with local semantic search via Ollama.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Build an ISO 27001 compliance program in an SME without paying for a costly SaaS.&lt;&#x2F;li&gt;
&lt;li&gt;Document GDPR or NIS2 compliance with an actionable audit trail.&lt;&#x2F;li&gt;
&lt;li&gt;Let a consultant roll out an ISMS across multiple clients.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize policies, risks, assets and audit evidence for an internal IT team.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Open Kiosk</title>
        <published>2026-06-22T00:00:00+00:00</published>
        <updated>2026-06-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/open-kiosk/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/open-kiosk/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/open-kiosk/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Open Kiosk is a build-it-yourself point-of-sale (POS) system, certified open-source hardware by OSHWA. The idea: replace commercial registers loaded with monthly subscriptions and vendor lock-in with a touchscreen kiosk you assemble from off-the-shelf parts (LattePanda MU, ESP32, thermal printer, touchscreen) and a 3D-printed enclosure. It all drives a modern React retail app, with the hardware firmware written in C++.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero subscription&lt;&#x2F;strong&gt;: a full POS for the cost of the hardware, with no recurring fees and no vendor lock-in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Open-source hardware&lt;&#x2F;strong&gt;: OSHWA certified (IN000074), enclosure STL files included, schematics and code open end to end.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Complete POS stack&lt;&#x2F;strong&gt;: category-based inventory management, customizable thermal receipt printing, and sales analytics (daily, weekly, monthly).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built for retail&lt;&#x2F;strong&gt;: touch-optimized interface, voice product search and cloud sync via Firebase.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Reproducible&lt;&#x2F;strong&gt;: step-by-step build guide on Hackster and a video demo, from soldering to software setup.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Equip a small shop (fashion, gifts, specialty grocery) without paying for a commercial POS.&lt;&#x2F;li&gt;
&lt;li&gt;Set up a register for a pop-up store or a temporary market stall.&lt;&#x2F;li&gt;
&lt;li&gt;Give a service business (salon, repair shop) a simple checkout.&lt;&#x2F;li&gt;
&lt;li&gt;Serve as a hands-on learning base for hardware&#x2F;software integration on a real project.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Shotcut</title>
        <published>2026-06-22T00:00:00+00:00</published>
        <updated>2026-06-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/shotcut/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/shotcut/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/shotcut/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Shotcut is an open-source, cross-platform desktop video editor for Windows, macOS and Linux. Built on the MLT multimedia framework and FFmpeg, it delivers full multitrack editing with no proprietary license and no subscription. It&#x27;s a credible, free alternative to commercial editors, from casual cuts to more serious workflows.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Genuinely cross-platform&lt;&#x2F;strong&gt;: the same features on Windows, macOS and Linux thanks to Qt, with binaries released regularly.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Massive format support&lt;&#x2F;strong&gt;: codecs and containers handled through FFmpeg, so just about anything in video, audio and image.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full multitrack editing&lt;&#x2F;strong&gt;: a timeline with video&#x2F;audio tracks, transitions, keyframes, and resolutions up to 4K.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible effects&lt;&#x2F;strong&gt;: built-in video and audio filters, plus frei0r plugins to widen the effects palette.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Free with no catch&lt;&#x2F;strong&gt;: GPL-3.0, no watermark, no features locked behind a paywall.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Edit YouTube videos or social content without paying for a subscription.&lt;&#x2F;li&gt;
&lt;li&gt;Produce educational or non-profit video projects on modest hardware.&lt;&#x2F;li&gt;
&lt;li&gt;Assemble and export footage in dozens of formats without codec headaches.&lt;&#x2F;li&gt;
&lt;li&gt;Give a mixed team the same editor on Linux as on Windows&#x2F;macOS.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Superlog</title>
        <published>2026-06-22T00:00:00+00:00</published>
        <updated>2026-06-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/superlog/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/superlog/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/superlog/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Superlog is an open-source observability platform that ingests your traces, logs and metrics via OpenTelemetry and groups noisy signals into actionable incidents. The twist: it&#x27;s agentic. AI agents watch your infra, automatically investigate anomalies and produce incident summaries while you sleep, instead of leaving you to correlate dashboards by hand at 3 a.m.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Agentic observability&lt;&#x2F;strong&gt;: AI agents investigate incidents and summarize them, rather than just rendering more graphs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;OpenTelemetry-native&lt;&#x2F;strong&gt;: standard OTLP intake for traces, logs and metrics, with no vendor lock-in on instrumentation.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Automatic grouping&lt;&#x2F;strong&gt;: noisy signals are correlated and aggregated into incidents, putting an end to the unmanageable alert wall.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Pluggable agent architecture&lt;&#x2F;strong&gt;: ships with a community agent for incident summaries, and the runner lets you plug in your own.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Solid stack&lt;&#x2F;strong&gt;: telemetry queries backed by Postgres and ClickHouse, with background workers handling automation.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Detect and investigate production incidents without a permanent human on watch.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize traces, logs and metrics from a distributed system in a single platform.&lt;&#x2F;li&gt;
&lt;li&gt;Cut alert noise by aggregating correlated signals into incidents.&lt;&#x2F;li&gt;
&lt;li&gt;Self-host your observability stack to keep control over your telemetry data.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Yopass</title>
        <published>2026-06-22T00:00:00+00:00</published>
        <updated>2026-06-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/yopass/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/yopass/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/yopass/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Yopass is a self-hosted service for sharing secrets (passwords, API keys, tokens) without dumping them in plaintext into a Slack thread, an email or a ticket. The secret is encrypted right in the browser via OpenPGP before being sent: the server never sees the decryption key and only ever stores encrypted content. The recipient gets a one-time link that expires automatically.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Client-side encryption&lt;&#x2F;strong&gt;: everything happens in the browser via OpenPGP, the decryption key never reaches the server.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;One-time use + expiration&lt;&#x2F;strong&gt;: a secret is destroyed after it&#x27;s read or once its TTL is up, no more credentials lingering in a chat history.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No accounts, no tracking&lt;&#x2F;strong&gt;: no sign-up, no user accounts, no tracking. You share a link, that&#x27;s it.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Simple to self-host&lt;&#x2F;strong&gt;: deploys in minutes via Docker Compose or Kubernetes, with a Memcached (default) or Redis backend.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Files and passwords&lt;&#x2F;strong&gt;: streaming encryption for file uploads and optional extra password protection.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Hand a password or API key to a coworker without leaving a trace in a chat channel.&lt;&#x2F;li&gt;
&lt;li&gt;Share temporary credentials without creating an account or permanent access.&lt;&#x2F;li&gt;
&lt;li&gt;Distribute sensitive data in compliance-heavy environments.&lt;&#x2F;li&gt;
&lt;li&gt;Run an internal instance to keep full control over where secrets are stored.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>PaddleOCR</title>
        <published>2026-06-14T00:00:00+00:00</published>
        <updated>2026-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/paddleocr/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/paddleocr/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/paddleocr/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;PaddleOCR is an open-source OCR toolkit that turns images and PDFs into structured data (Markdown, JSON) that an LLM can ingest directly. It goes well beyond plain text recognition: it parses entire documents — page layout, tables, formulas, charts and even ancient manuscripts. It&#x27;s the bridge between your scans and your AI pipelines.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Seriously multilingual&lt;&#x2F;strong&gt;: 100+ languages supported, with the unified PP-OCRv6 model covering 50 of them at once.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full document parsing&lt;&#x2F;strong&gt;: not just text — it recognizes tables, math formulas, charts and overall page structure.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;LLM-ready output&lt;&#x2F;strong&gt;: emits Markdown or JSON straight away, ready to feed a RAG pipeline with no post-processing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Lightweight and fast&lt;&#x2F;strong&gt;: compact models (1.5M to 34.5M parameters) and up to 5.2× speedup on CPU inference.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Integrated ecosystem&lt;&#x2F;strong&gt;: native hooks into Dify, RAGFlow and other AI platforms.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Bulk conversion of PDFs and scans into clean Markdown.&lt;&#x2F;li&gt;
&lt;li&gt;Data preparation for RAG pipelines and knowledge bases.&lt;&#x2F;li&gt;
&lt;li&gt;Information extraction from invoices, forms and administrative documents.&lt;&#x2F;li&gt;
&lt;li&gt;Scene text recognition in the wild (photos, signs, screenshots).&lt;&#x2F;li&gt;
&lt;li&gt;Digitization of ancient documents or complex handwriting.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>BrightBean Studio</title>
        <published>2026-06-12T00:00:00+00:00</published>
        <updated>2026-06-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/brightbean-studio/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/brightbean-studio/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/brightbean-studio/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;BrightBean Studio is an open-source, self-hostable platform for managing your social content across multiple networks from a single dashboard. You plan, compose, schedule, approve, publish and monitor posts all in one place. It&#x27;s the free alternative to Buffer, Sendible or SocialPilot, with no per-seat, per-channel or per-workspace limits.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;First-party API integrations&lt;&#x2F;strong&gt;: direct connections to 10+ platforms (Facebook, Instagram, LinkedIn, TikTok, YouTube, Pinterest, Threads, Bluesky, Mastodon, Google Business), with no aggregator middleman.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Approval workflows&lt;&#x2F;strong&gt;: configurable stages, audit trails and a client portal with magic links for external approvals.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-platform composer&lt;&#x2F;strong&gt;: per-network customization and version history, with a visual calendar and recurring posting slots.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Unified social inbox&lt;&#x2F;strong&gt;: comments, mentions and direct messages in one place, plus an analytics dashboard per post and per channel.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built for automation&lt;&#x2F;strong&gt;: a REST API and a built-in MCP server to drive everything from scripts or agents.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Manage several clients&#x27; social accounts from separate workspaces with granular roles.&lt;&#x2F;li&gt;
&lt;li&gt;Have an external client approve posts through a dedicated portal before publishing.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize multi-network publishing without paying a per-seat subscription.&lt;&#x2F;li&gt;
&lt;li&gt;Automate content scheduling via the API or an agent wired to the MCP server.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>DocuSeal</title>
        <published>2026-06-12T00:00:00+00:00</published>
        <updated>2026-06-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/docuseal/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/docuseal/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/docuseal/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;DocuSeal is an open-source platform for digital document signing and PDF form filling. You build PDF forms through a WYSIWYG interface, send them out for signature, and your signers complete them online from any device. It&#x27;s the self-hostable alternative to DocuSign, deployable in minutes.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;WYSIWYG form builder&lt;&#x2F;strong&gt;: 12 field types (signature, date, checkboxes, file upload, and more) dropped straight onto the PDF.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multiple submitters&lt;&#x2F;strong&gt;: several people can fill in and sign the same document, with automated SMTP notifications.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Verifiable eSignature&lt;&#x2F;strong&gt;: automatic PDF eSignature with built-in verification capabilities.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multilingual&lt;&#x2F;strong&gt;: UI in 7 languages, signing in 14, fully mobile-optimized.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Integration-ready&lt;&#x2F;strong&gt;: REST API and webhooks, your choice of cloud storage (AWS S3, Google Storage, Azure), one-click Docker deployment.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Get contracts or quotes signed online without relying on a proprietary service.&lt;&#x2F;li&gt;
&lt;li&gt;Collect completed forms (HR onboarding, leases, consents) with structured fields.&lt;&#x2F;li&gt;
&lt;li&gt;Embed document signing into an app via the API and webhooks.&lt;&#x2F;li&gt;
&lt;li&gt;Self-host a signing service in-house for sensitive or regulated data.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Hoodik</title>
        <published>2026-06-12T00:00:00+00:00</published>
        <updated>2026-06-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/hoodik/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/hoodik/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/hoodik/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Hoodik is a lightweight, self-hosted cloud storage server with end-to-end encryption. All encryption and decryption happen in your browser, so the server never sees your plaintext data. Under the hood it&#x27;s a Rust backend (Actix-web) with a Vue 3 frontend.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;End-to-end encryption&lt;&#x2F;strong&gt;: a hybrid RSA-2048 + AEGIS-128L scheme with key derivation via SHA-2&#x2F;Blake2b. The server only ever stores ciphertext.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Secure search&lt;&#x2F;strong&gt;: search runs over tokenized, hashed metadata, never over plaintext.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Leak-free sharing&lt;&#x2F;strong&gt;: public links keep the file key hidden from the server, encoded in the URL fragment.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible infra&lt;&#x2F;strong&gt;: SQLite by default or PostgreSQL, local storage or S3-compatible backends (AWS, MinIO, Backblaze B2, Wasabi).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full-featured&lt;&#x2F;strong&gt;: encrypted notes with a WYSIWYG markdown editor, TOTP 2FA, admin dashboard, and chunked transfers for concurrent uploads&#x2F;downloads.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replace Dropbox&#x2F;Google Drive with a private instance where the server has zero access to your content.&lt;&#x2F;li&gt;
&lt;li&gt;Host sensitive files on a VPS without trusting the hosting provider.&lt;&#x2F;li&gt;
&lt;li&gt;Share documents through encrypted public links without ever exposing the keys.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize encrypted notes and files on a self-hosted S3 backend (MinIO).&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Murmure</title>
        <published>2026-06-12T00:00:00+00:00</published>
        <updated>2026-06-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/murmure/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/murmure/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/murmure/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Murmure is a privacy-focused speech-to-text dictation app that turns your voice into text entirely on your own machine. No network connection, no data collection: all processing happens locally. It&#x27;s built for dictating into your AI tools, taking notes or capturing an idea on the fly, without relying on the cloud.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fully local&lt;&#x2F;strong&gt;: all processing happens on your device, no data ever leaves the machine. Zero telemetry, zero tracking.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern model&lt;&#x2F;strong&gt;: powered by NVIDIA&#x27;s Parakeet TDT 0.6B v3 neural network for fast, accurate transcription.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multilingual&lt;&#x2F;strong&gt;: supports 25 European languages (English, French, German, Spanish, and more).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Low latency&lt;&#x2F;strong&gt;: near-instant transcription directly on-device, with no server round-trip.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cross-platform&lt;&#x2F;strong&gt;: available on Windows (MSI&#x2F;WinGet), Linux (Debian&#x2F;AppImage) and macOS (Intel&#x2F;ARM), with a fully inspectable open-source codebase.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Dictate prompts into an AI tool without going through a cloud transcription service.&lt;&#x2F;li&gt;
&lt;li&gt;Take quick voice notes converted straight into usable text.&lt;&#x2F;li&gt;
&lt;li&gt;Capture an idea on the fly with no internet connection.&lt;&#x2F;li&gt;
&lt;li&gt;Write in multiple European languages by voice, without exposing the content.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Scriberr</title>
        <published>2026-06-12T00:00:00+00:00</published>
        <updated>2026-06-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/scriberr/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/scriberr/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/scriberr/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Scriberr is a self-hosted audio transcription app that runs entirely on your own machine, never sending your recordings to the cloud. It turns speech into text with word-level timing accuracy, powered by modern ML models (NVIDIA Parakeet, Canary or Whisper). It&#x27;s the private, free alternative to subscription transcription services charging $100-240&#x2F;year.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fully offline&lt;&#x2F;strong&gt;: all processing happens on your hardware, no data ever leaves your server. Perfect for sensitive or confidential content.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Model choice&lt;&#x2F;strong&gt;: Whisper for versatility, NVIDIA Parakeet and Canary for speed and accuracy, all with word-level timestamps.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Speaker diarization&lt;&#x2F;strong&gt;: automatic detection and labeling of the different voices in a conversation.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in AI chat&lt;&#x2F;strong&gt;: plug in Ollama or any OpenAI-compatible provider to generate summaries and ask questions about your transcripts.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;All-in-one&lt;&#x2F;strong&gt;: built-in audio recorder with note-taking, folder watcher for batch processing, and PWA support for a native feel on desktop and mobile.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Transcribe meetings or interviews without exposing their content to a third-party service.&lt;&#x2F;li&gt;
&lt;li&gt;Generate notes and summaries of podcasts or webinars entirely locally.&lt;&#x2F;li&gt;
&lt;li&gt;Automate processing of a folder of recordings via the folder watcher.&lt;&#x2F;li&gt;
&lt;li&gt;Capture voice notes and turn them into usable text straight from the browser.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Checkmate</title>
        <published>2026-06-09T00:00:00+00:00</published>
        <updated>2026-06-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/checkmate/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/checkmate/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/checkmate/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Checkmate is a self-hosted monitoring application that tracks the availability and health of your infrastructure in real time. It covers website uptime, Docker containers, SSL certificates, ports and servers, with visual dashboards and alerting. It&#x27;s an open source alternative to services like Uptime Robot or Pingdom, with no third-party dependency and no per-probe billing.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Varied monitor types&lt;&#x2F;strong&gt;: HTTP uptime, ping, ports, SSL certificates, Docker containers, game servers and JSON queries, all from a single interface.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Hardware monitoring&lt;&#x2F;strong&gt;: A dedicated agent (Capture) reports CPU, memory, disk and network usage from monitored machines, going beyond a simple ping.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-channel alerts&lt;&#x2F;strong&gt;: Email, Discord, Slack, Telegram, PagerDuty, Teams, Matrix, Twilio, Pushover. Plug in whichever channel your team already uses.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Customizable status pages&lt;&#x2F;strong&gt;: Public pages with multiple themes to communicate service status to your users.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Lightweight&lt;&#x2F;strong&gt;: Designed to run on a small VM or even a Raspberry Pi, with minimal resource consumption.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Monitor uptime and response time of a fleet of sites and APIs in a self-hosted setup&lt;&#x2F;li&gt;
&lt;li&gt;Get alerted before an SSL certificate expires&lt;&#x2F;li&gt;
&lt;li&gt;Track hardware health of production servers or Docker containers&lt;&#x2F;li&gt;
&lt;li&gt;Publish a status page to keep users informed during incidents or scheduled maintenance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Flowsint</title>
        <published>2026-06-05T00:00:00+00:00</published>
        <updated>2026-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/flowsint/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/flowsint/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/flowsint/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Flowsint is an open source OSINT graph investigation tool. It lets you visually explore relationships between entities (domains, IPs, emails, social accounts, organizations…) and automatically enrich data through around fifty specialized enrichers. Built for cyber analysts, researchers and investigators, it puts a strong emphasis on ethical use and privacy.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Graph-based investigation&lt;&#x2F;strong&gt;: A visual interface where each entity becomes a node linked to the others. You follow the connections by mouse instead of cross-referencing spreadsheets by hand.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;40+ automated enrichers&lt;&#x2F;strong&gt;: Domains, IPs, ASNs, social media, organizations, cryptocurrencies, websites, emails… the ecosystem covers the bulk of recon work.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Privacy by design&lt;&#x2F;strong&gt;: Data is stored locally on the user&#x27;s machine, not in a third-party cloud.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Performant at scale&lt;&#x2F;strong&gt;: Optimized to render thousands of nodes without lag, making large investigations actually usable.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modular and extensible&lt;&#x2F;strong&gt;: A layered architecture (core, types, enrichers, API, frontend) that makes adding your own sources and workflows straightforward.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Map a target&#x27;s infrastructure (domains, IPs, ASNs) during an attack surface audit&lt;&#x2F;li&gt;
&lt;li&gt;Link accounts, emails and organizations in an OSINT investigation&lt;&#x2F;li&gt;
&lt;li&gt;Automatically enrich indicators during threat intel work&lt;&#x2F;li&gt;
&lt;li&gt;Visualize transaction chains or entities tied to cryptocurrencies&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Open WES</title>
        <published>2026-06-05T00:00:00+00:00</published>
        <updated>2026-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/open-wes/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/open-wes/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/open-wes/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Open WES is an open source Warehouse Execution System (WES) that orchestrates warehouse operations in real time. Where a traditional WMS just tracks inventory, Open WES drives execution: tasks, workflows, automation and machine coordination. Built on a microservices architecture, it targets highly automated warehouses (Industry 4.0) that need to synchronize robots, AGVs and IoT sensors as close to the floor as possible.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Real-time orchestration&lt;&#x2F;strong&gt;: Task management and prioritization, live monitoring of inventory and workflows. The focus is on execution, not just stock tracking.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Microservices architecture&lt;&#x2F;strong&gt;: Modular and customizable — each building block can be adapted or replaced to fit a specific warehouse&#x27;s needs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Robots &amp;amp; IoT integration&lt;&#x2F;strong&gt;: Designed to drive robots, AGVs and IoT devices, with REST and WebSocket APIs for real-time exchanges.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI-powered optimization&lt;&#x2F;strong&gt;: Demand prediction and automated decision-making to keep operations flowing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No vendor lock-in&lt;&#x2F;strong&gt;: Open code under the MIT license, full transparency and community-driven development, with no dependency on a proprietary vendor.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Run an automated warehouse with fleets of robots and AGVs synchronized in real time&lt;&#x2F;li&gt;
&lt;li&gt;Replace or complement a proprietary WMS with an open, customizable solution&lt;&#x2F;li&gt;
&lt;li&gt;Build tailored execution workflows for specific logistics sites&lt;&#x2F;li&gt;
&lt;li&gt;Centralize inventory and task monitoring in a single platform&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Receipt OCR</title>
        <published>2026-06-05T00:00:00+00:00</published>
        <updated>2026-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/receipt-ocr/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/receipt-ocr/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/receipt-ocr/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Receipt OCR is a Python OCR engine specialized in processing receipts. It combines two approaches: Tesseract for raw text extraction, and LLMs (OpenAI, Google Gemini, Groq) to turn a receipt image into usable structured data. The goal: go from a photo of a receipt to a clean JSON ready to be ingested.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dual engine&lt;&#x2F;strong&gt;: Tesseract for raw text, an LLM module for structured extraction. Pick based on your needs and budget.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-provider LLM&lt;&#x2F;strong&gt;: Supports OpenAI, Google Gemini and Groq. No lock-in to a single AI vendor.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Custom JSON schema&lt;&#x2F;strong&gt;: You define the extraction schema you want (merchant, date, line items, total…) and the LLM fills the structure.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;CLI + FastAPI&lt;&#x2F;strong&gt;: Usable from the command line for one-shot jobs, or through production-ready REST APIs for both modules.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Dockerized&lt;&#x2F;strong&gt;: Containerized deployment is provided, making it easy to ship on the backend.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Automate expense report entry from photos of receipts&lt;&#x2F;li&gt;
&lt;li&gt;Extract purchase line items from receipts to push into an accounting tool&lt;&#x2F;li&gt;
&lt;li&gt;Build a receipt extraction microservice behind a REST API&lt;&#x2F;li&gt;
&lt;li&gt;Bulk-digitize a backlog of paper receipts into structured data&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>snapDOM</title>
        <published>2026-06-05T00:00:00+00:00</published>
        <updated>2026-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/snapdom/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/snapdom/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/snapdom/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;snapDOM is a JavaScript DOM capture engine that turns any page element into an image. It positions itself as a modern, fast, dependency-free alternative to html2canvas and dom-to-image. Everything is built on standard Web APIs: no third-party runtime, no dependencies to install.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Faithful capture&lt;&#x2F;strong&gt;: Grabs the element with its embedded styles, pseudo-elements and fonts. The output matches what the user actually sees.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-format&lt;&#x2F;strong&gt;: Export to SVG, PNG, JPG, WebP, Canvas or Blob from a single capture. One clone, multiple reusable outputs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Zero dependencies, ultra-fast&lt;&#x2F;strong&gt;: Built purely on Web APIs, it targets sub-second captures and outpaces competing libraries in benchmarks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Edge cases handled&lt;&#x2F;strong&gt;: Same-origin iframes, CSS counters, line-clamp… the details that break other tools are covered.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Plugin system&lt;&#x2F;strong&gt;: An extensible architecture (in beta) to add your own exporters and transformations without touching the core.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Generate a share image (Open Graph, social media) from a client-side rendered component&lt;&#x2F;li&gt;
&lt;li&gt;Export a chart, table or receipt to PNG&#x2F;PDF straight from the browser&lt;&#x2F;li&gt;
&lt;li&gt;Create page previews or thumbnails without a headless rendering server&lt;&#x2F;li&gt;
&lt;li&gt;Capture UI state for bug reports or visual documentation&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>System Design 101</title>
        <published>2026-06-05T00:00:00+00:00</published>
        <updated>2026-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/system-design-101/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/system-design-101/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/system-design-101/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;System Design 101 is an open source repository that explains system design concepts through visual diagrams and short, focused explanations. Instead of drowning the reader in walls of text, it breaks down complex topics (APIs, databases, scalability, cloud) into digestible schematics. It has become a go-to reference for prepping system design interviews or simply getting the fundamentals straight.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fully visual&lt;&#x2F;strong&gt;: Every concept comes with a clear diagram. You grasp a load balancer, a message queue or a caching pattern in seconds instead of reading three articles.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Massive coverage&lt;&#x2F;strong&gt;: APIs (REST, GraphQL, gRPC), HTTP protocols, databases, caching, cloud, DevOps&#x2F;CI-CD, security, architecture patterns, ML… the scope is wide.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-world case studies&lt;&#x2F;strong&gt;: Architectures from Netflix, Twitter, Uber, Discord and other giants, broken down to show how theory applies in production.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Markdown, readable anywhere&lt;&#x2F;strong&gt;: All content lives in a versioned README. No paywall for the essentials, accessible directly on GitHub.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Efficient interview prep&lt;&#x2F;strong&gt;: The topic-by-topic layout makes it a fast revision tool, perfect for refreshing a specific subject the night before an interview.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Review system design fundamentals before a technical interview&lt;&#x2F;li&gt;
&lt;li&gt;Quickly understand a specific concept (CDN, sharding, consistent hashing…) with a diagram&lt;&#x2F;li&gt;
&lt;li&gt;Use as teaching material to onboard a team on distributed architecture notions&lt;&#x2F;li&gt;
&lt;li&gt;Draw inspiration from real architectures of large platforms for your own design choices&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>UnInbox</title>
        <published>2026-06-05T00:00:00+00:00</published>
        <updated>2026-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/uninbox/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/uninbox/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/uninbox/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;UnInbox is an open source email platform that rethinks the inbox for modern, distributed and collaborative work. The starting point: email was never built for today&#x27;s noisy, asynchronous world. UnInbox plugs into your existing email infrastructure or replaces it entirely, positioning itself as an alternative to Hey, Front and Missive.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Email built for teams&lt;&#x2F;strong&gt;: Collaborative conversation management, with internal notes attached to threads to keep the team aligned without cluttering the conversation.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sender screening&lt;&#x2F;strong&gt;: A screener for new contacts that decides what makes it into the inbox, Hey-style, to cut down the noise.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Compatible or standalone&lt;&#x2F;strong&gt;: Integrates with your current email infrastructure or works as a full replacement, depending on your needs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern stack&lt;&#x2F;strong&gt;: Built on Next.js, Hono, tRPC, DrizzleORM and Tailwind. End-to-end TypeScript, readable and contributable.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Open source and self-hostable&lt;&#x2F;strong&gt;: Licensed under AGPLv3 (commercial option available), with a self-hosting mode in development.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Manage a shared support or contact inbox as a team without a proprietary tool&lt;&#x2F;li&gt;
&lt;li&gt;Reduce inbound noise through new sender screening&lt;&#x2F;li&gt;
&lt;li&gt;Centralize customer exchanges with contextual internal notes&lt;&#x2F;li&gt;
&lt;li&gt;Self-host your own communication infrastructure instead of relying on a SaaS&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Falcon-Perception</title>
        <published>2026-06-01T00:00:00+00:00</published>
        <updated>2026-06-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/falcon-perception/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/falcon-perception/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/falcon-perception/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Falcon-Perception is a PyTorch inference engine for multimodal vision-language models. It runs computer vision tasks - object detection, instance segmentation, OCR - driven by natural language queries. The goal: a minimal, readable yet genuinely performant implementation of an autoregressive Transformer that understands images and text together.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Paged KV cache&lt;&#x2F;strong&gt;: efficient GPU memory use with continuous batching, no custom attention implementation needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;CUDA graph capture&lt;&#x2F;strong&gt;: eliminates kernel launch overhead for faster inference.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Text-driven vision&lt;&#x2F;strong&gt;: detection and segmentation from a plain natural language query, plus OCR in raw or layout-aware modes.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;MLX backend&lt;&#x2F;strong&gt;: native Apple Silicon support alongside CUDA, so it runs on Macs too.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Production-ready&lt;&#x2F;strong&gt;: multi-GPU REST API server, preemption under memory pressure, background tokenization via a CPU thread pool.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Readable code&lt;&#x2F;strong&gt;: built to be studied and modified, not an over-optimized black box.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Extract structured text from scanned documents or screenshots with layout-aware OCR.&lt;&#x2F;li&gt;
&lt;li&gt;Detect and segment objects in an image just by describing what you&#x27;re looking for.&lt;&#x2F;li&gt;
&lt;li&gt;Serve a vision-language model in production behind a multi-GPU REST API.&lt;&#x2F;li&gt;
&lt;li&gt;Prototype quickly through the bundled Streamlit web interface.&lt;&#x2F;li&gt;
&lt;li&gt;Benchmark visual perception models across multiple samples.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>SigNoz</title>
        <published>2026-05-29T00:00:00+00:00</published>
        <updated>2026-05-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/signoz/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/signoz/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/signoz/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;SigNoz is an open-source observability platform that brings logs, metrics and traces together in a single interface. Built natively on OpenTelemetry and powered by ClickHouse, it positions itself as a self-hostable alternative to Datadog or New Relic — without the licensing cost or vendor lock-in.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Three pillars unified&lt;&#x2F;strong&gt;: logs, metrics and traces correlated in one place, giving you far richer debugging context than scattered tools.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;OpenTelemetry-native&lt;&#x2F;strong&gt;: an open standard for instrumentation, so no dependency on a proprietary agent and full portability of your data.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;ClickHouse under the hood&lt;&#x2F;strong&gt;: blazing-fast search and aggregation on high-cardinality data, the same engine used by Uber and Cloudflare.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;APM out of the box&lt;&#x2F;strong&gt;: ready-made charts for p99 latency, error rates, Apdex scores and operations per second.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable and cost-effective&lt;&#x2F;strong&gt;: you keep control of your data and avoid bills that explode with volume.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Monitor a microservices architecture with distributed tracing (flamegraphs, Gantt charts).&lt;&#x2F;li&gt;
&lt;li&gt;Centralize application logs with fast search and aggregation via ClickHouse.&lt;&#x2F;li&gt;
&lt;li&gt;Set up alerts and anomaly detection on production services.&lt;&#x2F;li&gt;
&lt;li&gt;Track observability for LLM applications, including token usage.&lt;&#x2F;li&gt;
&lt;li&gt;Replace a costly Datadog&#x2F;New Relic stack with a self-hosted solution.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>ntfy</title>
        <published>2026-05-26T00:00:00+00:00</published>
        <updated>2026-05-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/ntfy/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/ntfy/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/ntfy/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;ntfy is an HTTP-based pub-sub push notification service. You send a PUT&#x2F;POST request to a topic, and the message lands instantly on your phone or desktop. No signup, no SDK, no mandatory API key — just curl and a URL. Use it through the public ntfy.sh service or self-host it yourself.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One curl request is enough&lt;&#x2F;strong&gt;: &lt;code&gt;curl -d &quot;Backup done&quot; ntfy.sh&#x2F;my-topic&lt;&#x2F;code&gt; and you&#x27;re notified — any script, cron job or tool that can make an HTTP call becomes an alert source&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt;: a single Go binary, no mandatory external dependencies, you keep full control over your notifications and data&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native cross-platform apps&lt;&#x2F;strong&gt;: Android (Google Play, F-Droid), iOS (App Store), web UI and desktop notifications — you get your alerts everywhere&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Topic-based pub-sub&lt;&#x2F;strong&gt;: subscribe to a topic, anyone publishing to it notifies you — a simple, zero-config model&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Rich notifications&lt;&#x2F;strong&gt;: priorities, tags&#x2F;emojis, titles, clickable actions, attachments and links — far beyond plain text&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Optional auth&lt;&#x2F;strong&gt;: per-topic ACLs, users and access tokens whenever you want to lock down your instance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Job completion alerts: backups, cron scripts, long-running tasks that ping you when done&lt;&#x2F;li&gt;
&lt;li&gt;CI&#x2F;CD pipeline statuses pushed straight to your phone&lt;&#x2F;li&gt;
&lt;li&gt;Server monitoring and health checks wired into ntfy via webhook&lt;&#x2F;li&gt;
&lt;li&gt;Automation workflow notifications (n8n, Home Assistant, homegrown scripts)&lt;&#x2F;li&gt;
&lt;li&gt;A unified alert channel for a homelab or small team, hosted in-house&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Starlight</title>
        <published>2026-05-21T00:00:00+00:00</published>
        <updated>2026-05-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/starlight/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/starlight/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/starlight/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Starlight is a documentation framework built on top of Astro. It ships everything you need to publish a clean technical docs site — navigation, search, i18n, light&#x2F;dark theme, syntax highlighting — without rewriting the same boilerplate every time. You write Markdown, MDX or Markdoc, Starlight handles the rest.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Astro under the hood&lt;&#x2F;strong&gt;: static HTML output, zero client-side JS by default, top Lighthouse scores with no extra effort.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in search&lt;&#x2F;strong&gt;: full-text indexing via Pagefind, Ctrl+K shortcut, no external service to wire up.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;First-class i18n&lt;&#x2F;strong&gt;: ready-to-use multi-language structure, automatic fallback to the default locale, language picker included.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Typed frontmatter&lt;&#x2F;strong&gt;: TypeScript content schemas validate page metadata at build time — no more silent typos.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-framework components&lt;&#x2F;strong&gt;: drop React, Vue, Svelte or Solid into your MDX pages, Astro hydrates only what needs interactivity.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Customizable&lt;&#x2F;strong&gt;: plugin system, component overrides, exposed CSS design tokens — easy to bend to an existing brand.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Technical docs for an open source or internal project&lt;&#x2F;li&gt;
&lt;li&gt;API references and developer guides&lt;&#x2F;li&gt;
&lt;li&gt;Product knowledge bases with search and multi-language support&lt;&#x2F;li&gt;
&lt;li&gt;Migrating away from Docusaurus, MkDocs or VitePress to gain performance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Keila</title>
        <published>2026-05-20T00:00:00+00:00</published>
        <updated>2026-05-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/keila/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/keila/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/keila/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Keila is an open source newsletter platform designed as a self-hosted alternative to Mailchimp, Sendinblue or Substack. It handles campaign creation, signup forms, contact lists and delivery through multiple providers (AWS SES, Sendgrid, Mailgun, Postmark) or plain SMTP.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Full self-hosting&lt;&#x2F;strong&gt;: Official Docker image, full control over your deployment and data - no SaaS reselling your contacts or changing pricing overnight.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-provider delivery&lt;&#x2F;strong&gt;: Plug AWS SES for volume, Sendgrid&#x2F;Mailgun&#x2F;Postmark for deliverability, or your own SMTP to get started. No vendor lock-in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;WYSIWYG + Markdown editor&lt;&#x2F;strong&gt;: Visual campaign authoring with customizable templates, or Markdown for fast writing. Liquid templating for advanced personalization.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in signup forms&lt;&#x2F;strong&gt;: Embeddable signup forms with double opt-in and GDPR-friendly consent management out of the box.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Elixir&#x2F;Phoenix stack&lt;&#x2F;strong&gt;: Native BEAM concurrency to handle large sends without choking the server. Battle-tested robustness from the Erlang ecosystem.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AGPL-3.0 license&lt;&#x2F;strong&gt;: Open, modifiable and auditable source, with a strong copyleft that protects the ecosystem.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Personal or technical blog newsletter looking to escape Substack or Mailchimp&lt;&#x2F;li&gt;
&lt;li&gt;Internal communications for non-profits and NGOs that need to keep ownership of their contact lists&lt;&#x2F;li&gt;
&lt;li&gt;Small businesses wanting a self-hosted email marketing tool to cut recurring SaaS costs&lt;&#x2F;li&gt;
&lt;li&gt;Open source communities or clubs sending regular announcements to members&lt;&#x2F;li&gt;
&lt;li&gt;Multi-tenant platform offering newsletter services to several users from a single instance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Meetily</title>
        <published>2026-05-20T00:00:00+00:00</published>
        <updated>2026-05-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/meetily/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/meetily/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/meetily/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Meetily is an open source meeting assistant that captures, transcribes and summarizes your calls locally, with zero data leaving the machine. The desktop app (Tauri + Next.js) runs on macOS, Windows and Linux, uses Whisper or Parakeet for real-time transcription, and delegates summary generation to Ollama (local) or any external provider if you accept the network round-trip.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Local by default&lt;&#x2F;strong&gt;: Audio, transcription and summaries can all stay on your machine. No mandatory cloud dependency, so nothing to filter for GDPR or HIPAA compliance.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Hardware-accelerated real-time transcription&lt;&#x2F;strong&gt;: Whisper and Parakeet models in ONNX with Metal on Mac, CUDA on Nvidia GPUs and Vulkan elsewhere. Truly real-time, not after-the-fact batch.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Speaker diarization&lt;&#x2F;strong&gt;: Knows who said what. Mandatory the moment you have more than two participants and want a usable summary.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Pluggable AI backends&lt;&#x2F;strong&gt;: Ollama for fully private local inference, or Claude &#x2F; Groq &#x2F; OpenRouter &#x2F; custom endpoint when you accept the trade-off. No vendor lock-in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Re-processing existing recordings&lt;&#x2F;strong&gt;: Import an audio file and rerun transcription or summary with a different model. Useful to benchmark quality before wiring it into a workflow.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Rust + Tauri stack&lt;&#x2F;strong&gt;: Small binary, fast startup, fine-grained audio control. None of the Electron-tax memory bloat.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Consultants and lawyers who can&#x27;t send meeting content to a third-party SaaS&lt;&#x2F;li&gt;
&lt;li&gt;Healthcare teams under HIPAA, or GDPR-sensitive offices wanting an assistant with no cloud leakage&lt;&#x2F;li&gt;
&lt;li&gt;Devs and PMs looking for an Otter&#x2F;Fireflies-like tool that is self-hosted and auditable&lt;&#x2F;li&gt;
&lt;li&gt;Solo operators who want to keep call notes inside a local Ollama workflow alongside their knowledge base&lt;&#x2F;li&gt;
&lt;li&gt;Enterprises needing on-premise meeting intelligence to satisfy data sovereignty requirements&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>PptxGenJS</title>
        <published>2026-05-19T00:00:00+00:00</published>
        <updated>2026-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/pptxgenjs/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/pptxgenjs/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/pptxgenjs/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;PptxGenJS is a JavaScript&#x2F;TypeScript library that builds PowerPoint (&lt;code&gt;.pptx&lt;&#x2F;code&gt;) files entirely programmatically, with no Office install or proprietary tooling required. The output opens cleanly in PowerPoint, Keynote, LibreOffice and Google Slides. It runs in the browser, in Node.js, and even in serverless environments.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero Office dependency&lt;&#x2F;strong&gt;: no license, no COM automation, no Windows server needed to produce a clean PPTX.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Rich and fluent API&lt;&#x2F;strong&gt;: slides, text, shapes, tables, charts, images, SVGs, animated GIFs, YouTube embeds, RTL and Asian fonts are all covered.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Custom Slide Masters&lt;&#x2F;strong&gt;: define your brand template once and apply it across every slide for perfect visual consistency.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-environment&lt;&#x2F;strong&gt;: runs in the browser, in Node.js, inside React&#x2F;Angular&#x2F;Vite&#x2F;Electron, and even in Edge Functions or Lambda.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multiple outputs&lt;&#x2F;strong&gt;: export as file, base64, Blob, Buffer or Node stream to fit any pipeline (direct download, S3 upload, email attachment, etc.).&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Exportable dashboards turning analytics into automated client-facing PPTX reports.&lt;&#x2F;li&gt;
&lt;li&gt;Server-side generation of data-driven presentations (sales, marketing, BI).&lt;&#x2F;li&gt;
&lt;li&gt;Converting HTML tables from a web app into downloadable, formatted slides.&lt;&#x2F;li&gt;
&lt;li&gt;Internal tools that produce branded decks from corporate templates.&lt;&#x2F;li&gt;
&lt;li&gt;Automated reporting pipelines wired to a database or an API.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>drawDB</title>
        <published>2026-05-15T00:00:00+00:00</published>
        <updated>2026-05-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/drawdb/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/drawdb/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/drawdb/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;drawDB is an entity-relationship diagram (ERD) editor running entirely in the browser. You sketch your schema visually, and the tool generates matching SQL for MySQL, PostgreSQL, SQLite, MariaDB or MSSQL. No account required, everything runs client-side.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No account, no mandatory cloud&lt;&#x2F;strong&gt;: Open drawdb.app, model, export. No data leaves your machine unless you opt in to the sharing feature.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-dialect SQL generation&lt;&#x2F;strong&gt;: The same diagram exports to MySQL, PostgreSQL, SQLite, MariaDB or MSSQL. Handy when prototyping before committing to a specific engine.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Reverse import from SQL&lt;&#x2F;strong&gt;: Paste an existing dump or DDL script and drawDB reconstructs the diagram. Useful when documenting a legacy database nobody ever charted.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable via Docker&lt;&#x2F;strong&gt;: Official image, builds in a couple of commands. Drop it on an internal server and the whole team gets a schema editor without depending on a SaaS.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Genuinely interactive editor&lt;&#x2F;strong&gt;: Tables, relations, foreign keys, types, indexes, notes. Snappy UI, with clean PNG&#x2F;JPEG&#x2F;SVG exports for technical docs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Plain web stack&lt;&#x2F;strong&gt;: JavaScript&#x2F;Vite, AGPL-3.0. Readable if you want to patch a custom type or add an SQL dialect.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Model a schema before writing the migrations&lt;&#x2F;li&gt;
&lt;li&gt;Reverse-engineer an existing database from its DDL to document it&lt;&#x2F;li&gt;
&lt;li&gt;Plan a target schema during a cross-engine migration&lt;&#x2F;li&gt;
&lt;li&gt;Share a clear view of the data model in a review or an ADR&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Gogs</title>
        <published>2026-05-15T00:00:00+00:00</published>
        <updated>2026-05-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/gogs/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/gogs/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/gogs/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Gogs (Go Git Service) is a self-hosted Git forge written in Go, designed to be deployed in minutes on any machine. Everything fits into a single binary with no heavy external dependencies, and the memory footprint stays ridiculously low compared to GitLab. A minimalist GitHub alternative when you just want to host your repos and manage issues and PRs without the bloat.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Tiny footprint&lt;&#x2F;strong&gt;: runs on a Raspberry Pi with 512MB of RAM. Perfect for homelabs, NAS boxes or small VPS instances.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Single binary&lt;&#x2F;strong&gt;: one cross-platform executable (Linux, macOS, Windows, ARM). No runtime to install, no stack to maintain.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible stack&lt;&#x2F;strong&gt;: SQLite, MySQL, PostgreSQL or TiDB on the database side. SSH, HTTP, HTTPS for access.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Essential features&lt;&#x2F;strong&gt;: issues, pull requests, wiki, webhooks (Slack, Discord, Dingtalk), Git LFS, protected branches, deploy keys, 2FA.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible authentication&lt;&#x2F;strong&gt;: SMTP, LDAP, OAuth2, PAM, reverse proxy. Plugs into any existing SSO.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Migration and mirroring&lt;&#x2F;strong&gt;: import repos from GitHub&#x2F;GitLab and set up automatic mirrors.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Internal forge for a small team or personal project, without paying for GitHub Enterprise or running a full GitLab stack.&lt;&#x2F;li&gt;
&lt;li&gt;Hosting code on a homelab or NAS, with negligible resource consumption.&lt;&#x2F;li&gt;
&lt;li&gt;Air-gapped or isolated environments where code must never leave the internal network.&lt;&#x2F;li&gt;
&lt;li&gt;Local mirror of critical GitHub repositories for resilience or compliance.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Hyperswitch</title>
        <published>2026-05-11T00:00:00+00:00</published>
        <updated>2026-05-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/hyperswitch/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/hyperswitch/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/hyperswitch/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Hyperswitch is an &lt;strong&gt;open source payments switch&lt;&#x2F;strong&gt; written in Rust that sits between your backend and the payment processors (PSPs). You integrate a single API on the merchant side, and the engine routes transactions to 120+ acquirers (Stripe, Adyen, Braintree, Worldpay, Checkout.com…) using configurable routing, retry and fallback strategies. The point: kill PSP lock-in and take back control over costs and auth rates.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intelligent routing&lt;&#x2F;strong&gt;: Distributes transactions based on rules (volume, cost, auth rate, region, BIN) to maximize acceptance and minimize fees.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Revenue recovery&lt;&#x2F;strong&gt;: Automatic retries on recoverable failures with fine-grained control per method, region or card type. Recovers abandoned payments without manual intervention.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;PCI-compliant vault&lt;&#x2F;strong&gt;: Secure storage for cards, tokens and wallets, with bring-your-own-vault support if you already have existing infra. Switch PSPs without re-tokenizing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modular and composable&lt;&#x2F;strong&gt;: Each piece (routing, vault, reconciliation, cost observability) is independent. Take what you need, ignore the rest.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted, deploy anywhere&lt;&#x2F;strong&gt;: Docker&#x2F;Podman locally, Helm Charts for Kubernetes, AWS&#x2F;GCP&#x2F;Azure support. No forced SaaS, your data stays with you.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Control Center&lt;&#x2F;strong&gt;: Web UI to configure routing rules, test in sandbox and visualize 2-way &#x2F; 3-way reconciliation.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multi-PSP&lt;&#x2F;strong&gt;: Move from a single-Stripe setup to multi-acquirer routing without rewriting the front- and back-end integration.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;International marketplace&lt;&#x2F;strong&gt;: Route by geography to use a local acquirer and boost auth rates in each country.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cost optimization&lt;&#x2F;strong&gt;: Audit where transaction fees go and shift volume to cheaper acquirers depending on cart shape.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Gateway migration&lt;&#x2F;strong&gt;: Replace a proprietary payment gateway with a direct acquirer stack while keeping the existing vault.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Automated reconciliation&lt;&#x2F;strong&gt;: Match PSP payouts, internal transactions and bank reports without a shared Excel sheet on Drive.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Metabase</title>
        <published>2026-05-11T00:00:00+00:00</published>
        <updated>2026-05-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/metabase/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/metabase/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/metabase/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Metabase is an open source business intelligence platform that makes data accessible to non-technical users. Clojure backend, React&#x2F;TypeScript frontend, it ships a visual query builder, a native SQL editor and shareable dashboards, all deployable in five minutes through Docker or a JAR.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No-code query builder&lt;&#x2F;strong&gt;: step-by-step interface to filter, aggregate and join tables without writing a single line of SQL. Perfect for marketing, product or ops teams who shouldn&#x27;t have to queue behind the data team.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;SQL Editor for pros&lt;&#x2F;strong&gt;: those who want raw SQL get a full editor with variables, parameters and Mustache templating for dynamic queries.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Interactive dashboards&lt;&#x2F;strong&gt;: global filters, drill-down, full-screen and auto-refresh. Users can share, schedule or subscribe colleagues to results.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Embedded analytics&lt;&#x2F;strong&gt;: signed iframes or an official SDK to embed charts and dashboards into a SaaS app, with fine-grained role-based security.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Alerts and subscriptions&lt;&#x2F;strong&gt;: automatically push tables or charts to email&#x2F;Slack whenever a threshold is crossed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Quick setup&lt;&#x2F;strong&gt;: a single JAR or container, native support for 20+ databases (PostgreSQL, MySQL, BigQuery, Snowflake, Redshift, MongoDB...) plus community-built drivers.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Give business teams access to data without making everyone learn SQL.&lt;&#x2F;li&gt;
&lt;li&gt;Build an internal reporting portal shared across leadership, product and finance.&lt;&#x2F;li&gt;
&lt;li&gt;Embed customer-facing dashboards inside a SaaS application to offer analytics without building it from scratch.&lt;&#x2F;li&gt;
&lt;li&gt;Set up data alerts (KPI drops, anomalies, business thresholds) to react fast without watching dashboards all day.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Puter</title>
        <published>2026-05-11T00:00:00+00:00</published>
        <updated>2026-05-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/puter/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/puter/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/puter/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Puter is an &lt;strong&gt;open source &quot;internet computer&quot;&lt;&#x2F;strong&gt;: an OS in your browser, with a desktop, windows, a file manager and built-in apps (text editor, spreadsheet, terminal, media player, paint…). The whole thing self-hosts via Docker or Node, and exposes cloud APIs (storage, KV store, auth, AI) that third-party apps can consume from the built-in store. It&#x27;s a Dropbox, a ChromeOS and a PaaS rolled into a single interface.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable and lightweight&lt;&#x2F;strong&gt;: Docker compose, or &lt;code&gt;npm start&lt;&#x2F;code&gt; on Node. You take back control over your data instead of relying on iCloud &#x2F; Google Drive &#x2F; Dropbox.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native web apps&lt;&#x2F;strong&gt;: The Puter.js SDK lets you build apps that run inside the desktop, with access to cloud APIs (files, KV, auth) without any backend to deploy.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AGPL-3.0&lt;&#x2F;strong&gt;: Strong copyleft license that forces SaaS forks to publish their code. Keeps improvements inside the ecosystem.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Iframe sandboxing&lt;&#x2F;strong&gt;: Each third-party app runs in an isolated iframe with explicit permissions. You can install third-party code without giving it access to the rest of the system.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in AI APIs&lt;&#x2F;strong&gt;: Text, image and speech-to-text generation exposed as primitives, callable from any app in the desktop.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Personal cloud workspace&lt;&#x2F;strong&gt;: A desktop accessible from any browser, with your files and apps, without Big Tech in the middle.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Internal team platform&lt;&#x2F;strong&gt;: Host a Puter instance on a company network to share files and run web apps without a public cloud.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Web dev sandbox&lt;&#x2F;strong&gt;: Code, publish and test web apps that consume Puter&#x27;s cloud APIs, without standing up a backend stack.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;ChromeOS alternative&lt;&#x2F;strong&gt;: On a thin client, open Puter fullscreen for a minimal browser-driven OS.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Rocket.Chat</title>
        <published>2026-05-11T00:00:00+00:00</published>
        <updated>2026-05-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/rocket-chat/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/rocket-chat/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/rocket-chat/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Rocket.Chat is an open source team communications platform written in TypeScript, a serious alternative to Slack or Microsoft Teams. It covers real-time messaging, audio&#x2F;video calls, file sharing and collaboration, with a strong focus on data sovereignty through self-hosting.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted or cloud&lt;&#x2F;strong&gt;: deploy on your own infrastructure (Docker, Kubernetes, snap) or use the managed cloud offering. Air-gapped deployments are supported for highly sensitive environments.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;End-to-end encryption&lt;&#x2F;strong&gt;: optional E2EE per channel, plus enterprise-grade identity management and SSO (SAML, OAuth, LDAP).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Matrix federation&lt;&#x2F;strong&gt;: Rocket.Chat users can chat across federated Matrix servers, breaking the silos between platforms.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Apps-Engine and marketplace&lt;&#x2F;strong&gt;: official TypeScript SDK to extend the platform with custom apps, plus a marketplace packed with ready-to-use integrations (Jira, GitHub, Zapier, etc.).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Omnichannel&lt;&#x2F;strong&gt;: aggregate WhatsApp, Telegram, SMS, email and Facebook Messenger conversations into a single inbox for customer support.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;MIT license&lt;&#x2F;strong&gt;: full source code, freely modifiable and redistributable, unlike many crippled &quot;open core&quot; alternatives.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replace Slack or Teams in organizations that need full control over their own data.&lt;&#x2F;li&gt;
&lt;li&gt;Internal communications platform for governments, defense, healthcare, or any regulated industry with strict compliance requirements.&lt;&#x2F;li&gt;
&lt;li&gt;Unified multi-channel customer support tool with automated routing and chatbots.&lt;&#x2F;li&gt;
&lt;li&gt;Open source communities or projects looking for a self-hostable alternative to Discord.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Apache Superset</title>
        <published>2026-05-11T00:00:00+00:00</published>
        <updated>2026-05-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/superset/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/superset/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/superset/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Apache Superset is an open source business intelligence platform, a serious alternative to Tableau, Power BI or Looker. It lets you explore data, build interactive dashboards and write SQL straight from your browser, with no proprietary lock-in and a clean Apache-2.0 license.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;50+ native SQL connectors&lt;&#x2F;strong&gt;: Snowflake, BigQuery, Redshift, PostgreSQL, MySQL, Trino, ClickHouse, Druid, and anything else that speaks SQL via SQLAlchemy.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No-code chart builder&lt;&#x2F;strong&gt;: drag-and-drop interface with around fifty visualizations (heatmaps, sankey, geo maps, time series, treemaps...) extensible through plugins.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;SQL Lab&lt;&#x2F;strong&gt;: SQL editor with autocompletion, query history, saved results and async execution via Celery for long-running queries.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Semantic layer&lt;&#x2F;strong&gt;: define dimensions, metrics and computed fields once in Superset, and everyone queries the same version of the truth.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;REST API and SSO&lt;&#x2F;strong&gt;: integrate via REST API, with LDAP, OAuth, OpenID and SAML authentication for enterprise. Fine-grained RBAC on datasets, dashboards and actions.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Apache Software Foundation&lt;&#x2F;strong&gt;: top-level ASF project with open governance and a massive community (60k+ GitHub stars).&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Internal reporting and data dashboards for product, marketing or finance teams.&lt;&#x2F;li&gt;
&lt;li&gt;Expose ad-hoc SQL to analysts without giving them raw connections to the data warehouse.&lt;&#x2F;li&gt;
&lt;li&gt;Self-hosted platform to replace Tableau&#x2F;Power BI and regain control of per-user licensing costs.&lt;&#x2F;li&gt;
&lt;li&gt;Embedded analytics inside a SaaS product via iframe dashboards or the REST API.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>tun2socks</title>
        <published>2026-05-05T00:00:00+00:00</published>
        <updated>2026-05-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/tun2socks/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/tun2socks/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/tun2socks/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;tun2socks creates a TUN interface on your machine and redirects all network traffic through it, forwarding everything to a SOCKS5, HTTP, Shadowsocks, SSH or Relay proxy. It is the low-level networking glue that turns a plain application proxy into a transparent tunnel for the whole system, without touching the applications themselves.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Transparent to applications&lt;&#x2F;strong&gt;: no per-app config, no proxy support required in the target software. Everything flows through the TUN.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-protocol&lt;&#x2F;strong&gt;: SOCKS5, HTTP(S), Shadowsocks, SSH and Relay backends, with authentication. Pick the right one for the context.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cross-platform&lt;&#x2F;strong&gt;: Linux, macOS, Windows, FreeBSD and OpenBSD, shipped as a single static Go binary.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Performance-focused&lt;&#x2F;strong&gt;: architected for throughput, with benchmarks favorable against legacy alternatives (badvpn-tun2socks and friends).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native IPv6&lt;&#x2F;strong&gt;: bidirectional IPv4&#x2F;IPv6 tunneling, handy for mixed networks or modern gateways.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Force an entire machine through a remote SOCKS proxy (bastion, exit node) without configuring each application.&lt;&#x2F;li&gt;
&lt;li&gt;Build a Layer 3 gateway on a Raspberry Pi to route a whole subnet through a proxy.&lt;&#x2F;li&gt;
&lt;li&gt;Wrap traffic in an SSH tunnel without juggling &lt;code&gt;ssh -D&lt;&#x2F;code&gt; and iptables rules.&lt;&#x2F;li&gt;
&lt;li&gt;Bridge IPv4 and IPv6 for services or clients that only speak one of the two stacks.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Quackback</title>
        <published>2026-05-04T00:00:00+00:00</published>
        <updated>2026-05-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/quackback/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/quackback/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/quackback/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Quackback is an open source platform for collecting and managing user feedback, designed as a self-hosted alternative to Canny, UserVoice and Productboard. Users vote and comment on requests through public boards, the team triages and prioritises from an admin inbox, and both the roadmap and changelog are published from the same interface.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted, AGPL&lt;&#x2F;strong&gt;: You host, you control. No surprise quotas or per-seat pricing that explodes as the product grows.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI duplicate detection&lt;&#x2F;strong&gt;: New requests are automatically matched against existing ones and summarised, keeping boards clean as volume scales.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Embeddable widget + mobile SDKs&lt;&#x2F;strong&gt;: Drop it into a web, iOS or Android app without redirecting users to an external page.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;24 native integrations&lt;&#x2F;strong&gt;: Slack, Linear, Jira, GitHub, Intercom, Zendesk. Feedback lands where the team already works.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;REST API, webhooks and MCP server&lt;&#x2F;strong&gt;: Automation usable both from scripts and AI agents, which is still uncommon in this category.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern TypeScript stack&lt;&#x2F;strong&gt;: TanStack Start, Drizzle ORM, Better Auth, Tailwind v4 &#x2F; shadcn, Bun. Readable if you want to contribute or patch.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Collect and prioritise feature requests for a SaaS without paying for Canny&lt;&#x2F;li&gt;
&lt;li&gt;Centralise beta tester feedback on a public or private board&lt;&#x2F;li&gt;
&lt;li&gt;Publish a product changelog tied to requests actually shipped&lt;&#x2F;li&gt;
&lt;li&gt;Wire feedback into Linear or Jira to close the loop between support and roadmap&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Docusaurus</title>
        <published>2026-05-03T00:00:00+00:00</published>
        <updated>2026-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/docusaurus/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/docusaurus/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/docusaurus/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Docusaurus is a static site generator built for technical documentation, maintained by Meta. You write content in Markdown or MDX, customise a React theme, and ship a fast, indexable site as a plain static folder. Widely used by open source projects for their docs portals.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Native MDX&lt;&#x2F;strong&gt;: Markdown is extended with inline React components. Great for callouts, tabbed code blocks, or interactive demos sitting right next to the prose.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in versioning&lt;&#x2F;strong&gt;: Docusaurus handles multiple doc versions side by side (v2.0, v3.0, etc.) with zero third-party setup. Critical for libraries supporting several active branches.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;i18n out of the box&lt;&#x2F;strong&gt;: Translations handled locally or through Crowdin, with per-language routes. No convoluted plugin needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Search and blog included&lt;&#x2F;strong&gt;: Algolia DocSearch wires up in a few lines, and the integrated blog covers release notes or changelogs without piling on another tool.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Pluggable architecture&lt;&#x2F;strong&gt;: Plugins, presets, swizzlable themes. You can customise a component without forking, and the community maintains plugins for OpenAPI, redirects, sitemaps and more.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Documentation portal for an open source library or public API&lt;&#x2F;li&gt;
&lt;li&gt;Internal company docs with versioning per release&lt;&#x2F;li&gt;
&lt;li&gt;Multilingual technical knowledge base&lt;&#x2F;li&gt;
&lt;li&gt;Engineering blog + docs under the same roof, with unified search&lt;&#x2F;li&gt;
&lt;li&gt;Product docs with interactive React&#x2F;MDX demos&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Excalidraw</title>
        <published>2026-05-03T00:00:00+00:00</published>
        <updated>2026-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/excalidraw/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/excalidraw/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/excalidraw/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Excalidraw is an open source virtual whiteboard for sketching diagrams, wireframes and schematics with a deliberately imperfect hand-drawn style. The canvas is infinite, exports are clean (PNG, SVG, JSON), and everything runs straight in the browser with no signup required.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hand-drawn aesthetic&lt;&#x2F;strong&gt;: The pencil-style rendering avoids the &quot;frozen official diagram&quot; feel. Great for in-progress schematics that should still feel open to debate.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Encrypted real-time collaboration&lt;&#x2F;strong&gt;: Multiple people edit the same board live, with end-to-end encryption. The server never sees the content of your drawings.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Local-first&lt;&#x2F;strong&gt;: Everything is saved in the browser. No account required, no mandatory cloud, full offline support via PWA.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Clean exports&lt;&#x2F;strong&gt;: PNG, SVG, &lt;code&gt;.excalidraw&lt;&#x2F;code&gt; (JSON), clipboard copy. SVG output drops cleanly into technical documentation.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Embeddable&lt;&#x2F;strong&gt;: The &lt;code&gt;@excalidraw&#x2F;excalidraw&lt;&#x2F;code&gt; npm package lets you embed the canvas in any React app. An official VSCode extension lets you sketch without leaving the editor.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Quick architecture sketches during team brainstorming&lt;&#x2F;li&gt;
&lt;li&gt;Low-fidelity wireframes before moving to Figma&lt;&#x2F;li&gt;
&lt;li&gt;Annotated screenshots for bug reports or code reviews&lt;&#x2F;li&gt;
&lt;li&gt;Diagrams for technical documentation, exported as SVG&lt;&#x2F;li&gt;
&lt;li&gt;Shared whiteboard for remote meetings, no SaaS account needed&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Flowise</title>
        <published>2026-05-03T00:00:00+00:00</published>
        <updated>2026-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/flowise/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/flowise/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/flowise/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Flowise is an open source platform for building AI agents and workflows &lt;strong&gt;with drag-and-drop&lt;&#x2F;strong&gt;. You visually wire nodes (LLMs, retrievers, memory, tools, custom functions) on a canvas, and end up with an executable LangChain pipeline immediately exposed through a REST API or an embeddable chat widget.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pipeline visualisation&lt;&#x2F;strong&gt;: Seeing an agent&#x27;s topology (prompt → retriever → LLM → tool → memory) makes debugging and handoff easier. Faster to iterate on than a pure-code LangChain pipeline.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Integration-rich&lt;&#x2F;strong&gt;: OpenAI, Anthropic, Mistral, Ollama, Hugging Face, plus dozens of vector stores (Pinecone, Chroma, Qdrant, pgvector…), loaders, embeddings and memories.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-agent&lt;&#x2F;strong&gt;: Natively builds systems where multiple agents collaborate (supervisor, workers, hand-off), not just a linear chain.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API + widget&lt;&#x2F;strong&gt;: Every flow automatically exposes a REST endpoint and a chat widget you can drop into a web app. No glue code needed to ship.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted&lt;&#x2F;strong&gt;: Docker, K8s, AWS&#x2F;GCP&#x2F;Azure, Railway… Data and API keys stay on your infra, unlike pure SaaS competitors.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Quickly prototype a RAG chatbot over an internal documentation base&lt;&#x2F;li&gt;
&lt;li&gt;Build an agent that calls business APIs (CRM, billing) through tools&lt;&#x2F;li&gt;
&lt;li&gt;Hand a working AI POC to a non-dev product team&lt;&#x2F;li&gt;
&lt;li&gt;Orchestrate a multi-agent system (research, writing, validation) without coding&lt;&#x2F;li&gt;
&lt;li&gt;Expose an AI workflow as an API to integrate into an existing application&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Mermaid</title>
        <published>2026-05-03T00:00:00+00:00</published>
        <updated>2026-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/mermaid/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/mermaid/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/mermaid/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Mermaid is a JavaScript library that turns Markdown-like text into SVG diagrams (flowcharts, sequence, class, Gantt, ER, state, journey…). The goal: write your diagrams inside the source code, version them with Git, and let GitHub, Notion, Obsidian, VS Code and most modern tools render them automatically.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Plain-text diagrams&lt;&#x2F;strong&gt;: No more binary &lt;code&gt;.drawio&lt;&#x2F;code&gt; files that can&#x27;t be diffed. A PR touching a diagram reads like a code PR.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native support everywhere&lt;&#x2F;strong&gt;: GitHub, GitLab, Notion, Obsidian, Azure DevOps, VS Code, JetBrains… rendering is built into the platform, no pipeline needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Wide catalog&lt;&#x2F;strong&gt;: Flowcharts, sequence, class, ER, state, Gantt, pie, git graph, journey, C4, mindmap, timeline, sankey, quadrant chart… Most technical-doc needs are covered.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Live editor&lt;&#x2F;strong&gt;: &lt;code&gt;mermaid.live&lt;&#x2F;code&gt; lets you iterate quickly in a preview mode, then copy-paste the code into your docs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Embeddable&lt;&#x2F;strong&gt;: Available via npm, CDN, CLI (PNG&#x2F;SVG rendering) and an API. Drops into any doc generator, blog or web app.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Architecture diagrams in a README, versioned next to the code&lt;&#x2F;li&gt;
&lt;li&gt;Sequence diagrams to document an API or auth flow&lt;&#x2F;li&gt;
&lt;li&gt;Project roadmap as Gantt directly in the docs, no Excel or external tool&lt;&#x2F;li&gt;
&lt;li&gt;ER data model sitting next to migrations in the repo&lt;&#x2F;li&gt;
&lt;li&gt;CI&#x2F;CD workflow or business-logic schematics in internal documentation&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>open-appsec</title>
        <published>2026-05-03T00:00:00+00:00</published>
        <updated>2026-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openappsec/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openappsec/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openappsec/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;open-appsec is an application security engine (WAF&#x2F;WAAP) that uses machine learning to automatically block attacks against web applications and APIs. Instead of maintaining hundreds of ModSecurity rules or CRS signatures, it analyzes request patterns in real time to detect OWASP Top-10 and zero-day attacks with no human tuning.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Two-stage ML approach&lt;&#x2F;strong&gt;: a supervised model trained on millions of requests flags suspicious traffic, then an unsupervised model learns your specific traffic profile to decide whether to block. This drastically reduces false positives.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No rules to maintain&lt;&#x2F;strong&gt;: no CRS tuning, no signatures to update. The engine continuously learns from your traffic.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Plugs into what you already run&lt;&#x2F;strong&gt;: native modules for NGINX, Kong, APISIX, Envoy&#x2F;Istio. Deployable on Linux, Docker, or Kubernetes (official Helm chart).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Genuinely open source&lt;&#x2F;strong&gt;: code and base ML model under Apache 2.0. An optional SaaS UI exists, but the engine runs standalone with plain config files.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Audited&lt;&#x2F;strong&gt;: OpenSSF Best Practices badge, documented third-party security audits. That&#x27;s rare for a young security project.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Protect an NGINX or Kong reverse proxy in front of internal APIs without writing ModSecurity rules&lt;&#x2F;li&gt;
&lt;li&gt;Add a WAAP layer to a Kubernetes cluster via the NGINX Ingress or Istio module&lt;&#x2F;li&gt;
&lt;li&gt;Replace a proprietary cloud WAF (AWS WAF, Cloudflare) with a self-hosted, auditable alternative&lt;&#x2F;li&gt;
&lt;li&gt;Shield exposed legacy applications when modifying their code is not an option&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Storybook</title>
        <published>2026-05-03T00:00:00+00:00</published>
        <updated>2026-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/storybook/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/storybook/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/storybook/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Storybook is a frontend development environment for building, documenting and testing UI components &lt;strong&gt;in isolation&lt;&#x2F;strong&gt;, outside the context of a real app. Each component has its own &quot;stories&quot; (variants&#x2F;states), displayed in a dedicated interface that devs and designers can browse, test and use as the source of truth for the design system.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Total isolation&lt;&#x2F;strong&gt;: Every component is rendered in a sandbox, with no dependency on the rest of the app. No more clicking through three screens to test a button&#x27;s error state.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-framework&lt;&#x2F;strong&gt;: React, Vue 3, Angular, Svelte, Web Components, Preact, HTML, Ember… plus React Native, iOS, Android. One workflow to learn across every ecosystem.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Auto-generated docs&lt;&#x2F;strong&gt;: Stories + TypeScript types + JSDoc → clean documentation pages with interactive examples and props tables. The design system practically documents itself.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Powerful addons&lt;&#x2F;strong&gt;: Accessibility (a11y), visual testing, interactive controls, viewport, backgrounds, measurements, design assets… The addon ecosystem covers most day-to-day needs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Integrated testing&lt;&#x2F;strong&gt;: Interaction tests, visual snapshots, a11y checks. Stories double as test cases, not just documentation.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Build and maintain a design system or shared UI library across multiple apps&lt;&#x2F;li&gt;
&lt;li&gt;Document components for designers and devs (a shared visual ground truth)&lt;&#x2F;li&gt;
&lt;li&gt;Develop a complex component without booting the whole app&lt;&#x2F;li&gt;
&lt;li&gt;Set up automated visual and accessibility tests in CI&lt;&#x2F;li&gt;
&lt;li&gt;Demo a component&#x27;s states and variants to a product owner before integration&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>2FAuth</title>
        <published>2026-04-30T00:00:00+00:00</published>
        <updated>2026-04-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/2fauth/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/2fauth/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/2fauth/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;2FAuth is a self-hosted web app to manage your two-factor authentication accounts and generate their security codes. Think of it as a drop-in replacement for Google Authenticator, Authy or Microsoft Authenticator, but reachable from any browser (desktop or mobile) instead of being locked to a single phone.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cross-device by design&lt;&#x2F;strong&gt;: Your 2FA codes are reachable from any browser. No more panic when switching phones or when the battery dies at the worst moment.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Standards-compliant&lt;&#x2F;strong&gt;: RFC 4226 (HOTP) and RFC 6238 (TOTP) compliant, with Steam Guard support too. Works with any service that ships standard 2FA.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Serious security&lt;&#x2F;strong&gt;: Optional encryption for sensitive data, WebAuthn support (Yubikey, Titan), auto-logout on inactivity, multi-user setup.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Import&#x2F;Export and API&lt;&#x2F;strong&gt;: Easy migration from other 2FA apps, REST API to integrate 2FAuth in your own tooling, browser extensions for Chrome and Firefox.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native QR code&lt;&#x2F;strong&gt;: Scan or decode QR images to add an account in two clicks, or fall back to manual entry when needed.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Centralize all your 2FA accounts on a personal server (Docker, VPS, NAS) instead of relying on a Big Tech app.&lt;&#x2F;li&gt;
&lt;li&gt;Share 2FA access across a team through a secure multi-user instance.&lt;&#x2F;li&gt;
&lt;li&gt;Backup your TOTP tokens in case the phone is lost, stolen or broken.&lt;&#x2F;li&gt;
&lt;li&gt;Integrate OTP generation into your own scripts and internal tools through the REST API.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>PegaProx</title>
        <published>2026-04-30T00:00:00+00:00</published>
        <updated>2026-04-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/pegaprox/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/pegaprox/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/pegaprox/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;PegaProx is a web platform that unifies the administration of multiple Proxmox VE &lt;strong&gt;and&lt;&#x2F;strong&gt; XCP-ng clusters into a single dashboard. Instead of jumping between each hypervisor&#x27;s native UI, you manage your entire fleet - VMs, containers, Ceph storage, snapshots, ACME - from one coherent interface. Built for admins running mixed-hypervisor datacenters or multi-site infrastructure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Native multi-hypervisor&lt;&#x2F;strong&gt;: Proxmox and XCP-ng in the same console, with &lt;strong&gt;cross-cluster AND cross-hypervisor&lt;&#x2F;strong&gt; VM migration. Rare in the open source space.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-time metrics via SSE&lt;&#x2F;strong&gt;: no polling, the dashboard pushes live metrics for nodes, VMs and storage through server-sent events.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Serious RBAC&lt;&#x2F;strong&gt;: LDAP&#x2F;OIDC integration, fine-grained roles, audit trail. Not just a thin wrapper over the root API.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Bulk operations&lt;&#x2F;strong&gt;: rolling updates, scheduled tasks, automated snapshot&#x2F;backup verification across the whole fleet.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in consoles&lt;&#x2F;strong&gt;: noVNC and xterm.js in the browser, no need to fire up a separate client for each VM.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Bundled security&lt;&#x2F;strong&gt;: integrated syslog server, CVE scanning, ACME certificate automation - fewer homegrown scripts to maintain.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;MSPs managing multiple Proxmox clusters for different clients from one console&lt;&#x2F;li&gt;
&lt;li&gt;Progressive migration from XCP-ng to Proxmox (or the other way around) without breaking orchestration&lt;&#x2F;li&gt;
&lt;li&gt;Multi-site datacenters needing cross-region VM migration&lt;&#x2F;li&gt;
&lt;li&gt;Ops teams wanting clean RBAC on top of Proxmox without deploying Veeam or proprietary tooling&lt;&#x2F;li&gt;
&lt;li&gt;Advanced homelabs federating several heterogeneous nodes&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>ProxCenter</title>
        <published>2026-04-30T00:00:00+00:00</published>
        <updated>2026-04-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/proxcenter-ui/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/proxcenter-ui/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/proxcenter-ui/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;ProxCenter is a web interface positioning itself as an open source alternative to VMware vCenter, but for Proxmox. You connect multiple Proxmox VE clusters and Proxmox Backup Servers, and drive the whole stack from a single dashboard. No more tab-switching between PVE UIs, no more homemade scripts to aggregate state across a distributed infrastructure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multi-cluster single pane&lt;&#x2F;strong&gt;: every PVE node and PBS instance in one UI, with VMs, containers, resources and backups consolidated&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cross-hypervisor migration&lt;&#x2F;strong&gt;: move a VM from one cluster to another without resorting to a hacky script or manual export&#x2F;import&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Workload balancing (DRS)&lt;&#x2F;strong&gt;: the Enterprise edition ships an orchestrator that spreads workloads based on actual node load&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Simple deployment&lt;&#x2F;strong&gt;: one docker-compose, one port (3000), optional Nginx for reverse proxy, and you&#x27;re up&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AGPL Community edition&lt;&#x2F;strong&gt;: free for personal and commercial use, source available, support through GitHub&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Homelab running several Proxmox clusters you want to supervise without juggling tabs&lt;&#x2F;li&gt;
&lt;li&gt;MSP or hoster managing Proxmox for multiple clients who needs an aggregated view&lt;&#x2F;li&gt;
&lt;li&gt;Gradual migration from VMware while keeping a UX close to vCenter&lt;&#x2F;li&gt;
&lt;li&gt;Centralizing PBS instances to check backup health across the whole infrastructure at a glance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Sniffnet</title>
        <published>2026-04-29T00:00:00+00:00</published>
        <updated>2026-04-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/sniffnet/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/sniffnet/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/sniffnet/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Sniffnet is a cross-platform desktop application written in Rust that monitors network traffic on your machine in real time. It sits in a sweet spot between command-line tools like &lt;code&gt;tcpdump&lt;&#x2F;code&gt; and heavyweight analyzers like Wireshark, when you just want to quickly understand what&#x27;s happening on a network interface.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Polished GUI&lt;&#x2F;strong&gt;: live charts, aggregated stats and dynamic filters - no need to learn cryptic BPF syntax.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Service identification&lt;&#x2F;strong&gt;: recognizes 6000+ upper-layer protocols, plus signatures for known trojans and worms.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Host geolocation&lt;&#x2F;strong&gt;: shows source and destination country for each connection, handy for spotting suspicious outbound traffic.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;PCAP friendly&lt;&#x2F;strong&gt;: import and export &lt;code&gt;.pcap&lt;&#x2F;code&gt; files for offline analysis in Wireshark or sharing with a teammate.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Notifications and blacklists&lt;&#x2F;strong&gt;: customizable alerts on traffic thresholds or connections to known-bad IPs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cross-platform and lightweight&lt;&#x2F;strong&gt;: single binary for Linux, macOS and Windows, with no heavy runtime dependency.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Diagnose unexpected bandwidth consumption on a workstation.&lt;&#x2F;li&gt;
&lt;li&gt;Quickly spot outbound connections to unexpected destinations (exfiltration, malware).&lt;&#x2F;li&gt;
&lt;li&gt;Learn to read network traffic on a machine without Wireshark&#x27;s steep learning curve.&lt;&#x2F;li&gt;
&lt;li&gt;Capture a &lt;code&gt;.pcap&lt;&#x2F;code&gt; sample to hand off to a SecOps team for deeper analysis.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Databasus</title>
        <published>2026-04-28T00:00:00+00:00</published>
        <updated>2026-04-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/databasus/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/databasus/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/databasus/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Databasus is a self-hosted database backup tool focused on PostgreSQL, with support for MySQL, MariaDB and MongoDB. It automates scheduled backups, ships them to the storage of your choice (S3, R2, Google Drive, SFTP, Rclone…) and notifies your team on Slack, Discord or Telegram. All wrapped in a polished UI deployable through a single Docker command.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No vendor lock-in&lt;&#x2F;strong&gt;: backups are encrypted with AES-256-GCM and restorable without Databasus itself, directly from the storage backend. A rarity in the backup tooling space.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;GFS retention&lt;&#x2F;strong&gt;: Grandfather-Father-Son policy to keep hourly&#x2F;daily&#x2F;weekly&#x2F;monthly&#x2F;yearly snapshots independently, ideal for compliance and long-term archival.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Three backup types&lt;&#x2F;strong&gt;: logical (native dump), physical (file-level copy) and incremental with WAL archiving for near-zero-loss Point-in-Time Recovery.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Agent or direct mode&lt;&#x2F;strong&gt;: connect to the database in read-only mode, or run a lightweight Go agent that streams backups without exposing the DB to the public network.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Fully self-hosted&lt;&#x2F;strong&gt;: Docker, Docker Compose or Helm chart deployment, Apache 2.0 license, and full feature parity between open source and the cloud offering.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Protect a production PostgreSQL stack with long retention and zero-trust encryption on S3&lt;&#x2F;li&gt;
&lt;li&gt;Centralize multi-database backups (Postgres + Mongo) across teams via workspaces and RBAC&lt;&#x2F;li&gt;
&lt;li&gt;Enable PITR for critical workloads without paying for a managed DBaaS&lt;&#x2F;li&gt;
&lt;li&gt;Replace an artisanal &lt;code&gt;pg_dump&lt;&#x2F;code&gt; cron job with a UI-driven solution offering alerting and audit logs&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>NocoDB</title>
        <published>2026-04-28T00:00:00+00:00</published>
        <updated>2026-04-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/nocodb/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/nocodb/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/nocodb/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;NocoDB turns any relational database (MySQL, PostgreSQL, SQLite, MS SQL) into a collaborative spreadsheet UI à la Airtable. Instead of bending Google Sheets to manage business data, you get a real SQL backend with a no-code interface on top, and a REST&#x2F;GraphQL API generated automatically.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Real SQL underneath&lt;&#x2F;strong&gt;: your data stays in Postgres or MySQL, not in a proprietary format. Existing SQL tools (BI, ETL, scripts) plug straight in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Connect to existing databases&lt;&#x2F;strong&gt;: point NocoDB at a production DB and it generates a spreadsheet UI without touching the schema. Great for giving a UI to non-technical users.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multiple views&lt;&#x2F;strong&gt;: Grid, Kanban, Form, Gallery, Calendar. Each view is a filtered&#x2F;sorted projection of the same table, shareable via public link.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in REST API and webhooks&lt;&#x2F;strong&gt;: every table becomes a Swagger-documented CRUD endpoint. No need to write a backend for an MVP.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted and lightweight&lt;&#x2F;strong&gt;: single Docker container, ships with SQLite by default. Zero vendor lock-in, five-minute deployment on a VPS.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Add a spreadsheet UI to a business database without writing a back-office&lt;&#x2F;li&gt;
&lt;li&gt;Replace Airtable for cost, sovereignty or data-volume reasons&lt;&#x2F;li&gt;
&lt;li&gt;Prototype a product fast with auto-generated REST API and free admin UI&lt;&#x2F;li&gt;
&lt;li&gt;Centralize a CRM, project tracker or inventory across a team without going SaaS&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Apache APISIX</title>
        <published>2026-04-23T00:00:00+00:00</published>
        <updated>2026-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/apisix/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/apisix/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/apisix/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Apache APISIX is a dynamic API gateway built on top of OpenResty&#x2F;NGINX and etcd. It handles routing, authentication, rate limiting, observability and load balancing for your APIs and microservices, with hot configuration reloads and zero restarts. It works equally well as a plain reverse proxy, a Kubernetes ingress controller, or an AI gateway.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hot-reload configuration&lt;&#x2F;strong&gt;: etcd-backed config means route and plugin changes propagate in milliseconds, without ever dropping traffic.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Massive plugin ecosystem&lt;&#x2F;strong&gt;: around a hundred official plugins (JWT, OAuth2, rate limiting, CORS, Prometheus, OpenTelemetry, request transforms) plus the ability to write your own in Lua, Go, Java, Python, Node.js or WebAssembly.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native multi-protocol&lt;&#x2F;strong&gt;: HTTP&#x2F;HTTPS, HTTP&#x2F;3 (QUIC), gRPC, WebSocket, TCP&#x2F;UDP, MQTT, Dubbo. No separate stack needed for non-HTTP protocols.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;OpenResty performance&lt;&#x2F;strong&gt;: built on NGINX + LuaJIT, delivering sub-millisecond latencies and throughput that holds up against Go-based alternatives like Kong or Traefik.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in observability&lt;&#x2F;strong&gt;: Prometheus metrics, distributed tracing (Zipkin, SkyWalking, OpenTelemetry) and log shipping to Kafka, Loki or Elasticsearch, all pluggable.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Kubernetes ingress controller with dedicated CRDs (APISIX Ingress Controller).&lt;&#x2F;li&gt;
&lt;li&gt;Central API gateway to expose and secure microservices behind a single entry point.&lt;&#x2F;li&gt;
&lt;li&gt;AI gateway to route, authenticate and throttle access to LLMs or agents via dedicated plugins.&lt;&#x2F;li&gt;
&lt;li&gt;Reverse proxy with canary releases, circuit breaking and service discovery (Consul, Nacos, Eureka).&lt;&#x2F;li&gt;
&lt;li&gt;mTLS termination and centralized certificate management across a fleet of internal APIs.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Authelia</title>
        <published>2026-04-23T00:00:00+00:00</published>
        <updated>2026-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/authelia/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/authelia/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/authelia/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Authelia is an open source authentication and authorization server that sits in front of your web apps through a reverse proxy (nginx, Traefik, Caddy, HAProxy, Envoy). It exposes an SSO portal, 2FA and an OpenID Connect provider, so any self-hosted service can be protected, including those with no built-in user management.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Transparent to apps&lt;&#x2F;strong&gt;: authentication is enforced at the reverse proxy layer via forward-auth, your services stay unaware of it.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Serious 2FA&lt;&#x2F;strong&gt;: TOTP, WebAuthn&#x2F;Passkeys (FIDO2) and Duo Push, not just SMS.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Certified OpenID Connect&lt;&#x2F;strong&gt;: OIDC 1.0 &#x2F; OAuth 2.0 provider certified for Basic, Implicit, Hybrid, Form Post and Config OP.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Rule-based access control&lt;&#x2F;strong&gt;: fine-grained ACLs by subdomain, user, group, URI, HTTP method and source network.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Production-ready&lt;&#x2F;strong&gt;: SQL backend (MySQL, PostgreSQL, SQLite), Redis sessions, Kubernetes integrations and HA support.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted and lean&lt;&#x2F;strong&gt;: a single Go binary and a Docker image, no third-party SaaS holding your identities.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Adding SSO and 2FA in front of a homelab full of self-hosted services (Jellyfin, Nextcloud, Grafana, etc.).&lt;&#x2F;li&gt;
&lt;li&gt;Replacing Keycloak when it feels overkill for modest OIDC needs.&lt;&#x2F;li&gt;
&lt;li&gt;Enforcing WebAuthn only on sensitive subdomains (admin, backups) while keeping plain login elsewhere.&lt;&#x2F;li&gt;
&lt;li&gt;Centralizing authentication for a Kubernetes cluster behind nginx-ingress or Traefik.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Camoufox</title>
        <published>2026-04-23T00:00:00+00:00</published>
        <updated>2026-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/camoufox/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/camoufox/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/camoufox/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Camoufox is a Firefox fork built for web scraping and automation that slips past bot detection systems. The browser injects a consistent fingerprint directly at the C++ level — navigator, screen metrics, WebGL, WebRTC, timezone, geolocation — and ships stealth patches that hide automation libraries like Playwright from any JS inspection. You drive it from a Python package that handles binary download and fingerprint injection.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;C++-level injection&lt;&#x2F;strong&gt;: spoofed properties (&lt;code&gt;navigator.userAgent&lt;&#x2F;code&gt;, &lt;code&gt;screen.width&lt;&#x2F;code&gt;, WebGL renderer, etc.) are written inside the engine itself — impossible to detect through JS overrides the way classic stealth solutions can be&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in anti-detection patches&lt;&#x2F;strong&gt;: traces left by Playwright, Selenium and friends are wiped from the JS runtime, &lt;code&gt;navigator.webdriver&lt;&#x2F;code&gt; and siblings no longer leak&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Consistent fingerprints&lt;&#x2F;strong&gt;: the Python package generates full profiles (OS, GPU, resolution, fonts, timezone) that hold up against cross-checking detection scripts&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Human-like mouse movement&lt;&#x2F;strong&gt;: algorithm that simulates realistic cursor trajectories instead of the straight-line paths typical of bots&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Font anti-fingerprinting&lt;&#x2F;strong&gt;: handles system fonts cleanly so you don&#x27;t show up with a font set that&#x27;s too generic or inconsistent with the announced OS&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Debloated build&lt;&#x2F;strong&gt;: Firefox telemetry removed, reduced memory footprint, designed to run in parallel on VPS or containers&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Scraping sites protected by Cloudflare, DataDome, PerimeterX and similar&lt;&#x2F;li&gt;
&lt;li&gt;Multi-account automation needing distinct, credible browser identities&lt;&#x2F;li&gt;
&lt;li&gt;Large-scale data collection for benchmarking or price monitoring&lt;&#x2F;li&gt;
&lt;li&gt;E2E testing of apps that react to fingerprinting (fraud, adtech, paywalls)&lt;&#x2F;li&gt;
&lt;li&gt;Building ML training datasets without getting filtered mid-run&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>GoAccess</title>
        <published>2026-04-23T00:00:00+00:00</published>
        <updated>2026-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/goaccess/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/goaccess/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/goaccess/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;GoAccess is a real-time web log analyzer that runs either inside a terminal or in a browser through a self-contained HTML report. Feed it an Apache, Nginx, CloudFront or pretty much any common log format and it spits out an interactive dashboard right away: top URLs, HTTP status codes, countries, user agents, bandwidth, response times.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Genuine real-time&lt;&#x2F;strong&gt;: the HTML report updates over WebSocket (1s refresh), the terminal view at 200ms. No cron job, no ELK pipeline to babysit.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;One dependency&lt;&#x2F;strong&gt;: ncurses. Compile, drop a binary, done. A world away from running an ELK or Loki stack.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-contained HTML report&lt;&#x2F;strong&gt;: a single HTML file with no external assets, perfect to email or host as a static artifact.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Handles large logs&lt;&#x2F;strong&gt;: optional on-disk persistence, incremental processing, multi-threading via &lt;code&gt;--jobs&lt;&#x2F;code&gt;. Multi-GB log files go through without drama.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Zero config&lt;&#x2F;strong&gt;: it auto-detects common log formats and renders a useful dashboard in one command. Fine-grained config stays there when you need it.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Quick audit of a web server over SSH without deploying a full observability stack&lt;&#x2F;li&gt;
&lt;li&gt;Static HTML traffic report to share with a client or a team&lt;&#x2F;li&gt;
&lt;li&gt;Anomaly detection (404 spikes, bots, suspicious ASNs) live on a reverse proxy&lt;&#x2F;li&gt;
&lt;li&gt;Lightweight monitoring for side projects or VPS where Grafana&#x2F;Loki would be overkill&lt;&#x2F;li&gt;
&lt;li&gt;Incident post-mortem from archived log files&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>MarkItDown</title>
        <published>2026-04-23T00:00:00+00:00</published>
        <updated>2026-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/markitdown/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/markitdown/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/markitdown/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;MarkItDown is an open-source Python utility from Microsoft that converts just about every document format into usable Markdown. PDF, Word, Excel, PowerPoint, images, audio, HTML, CSV, ZIP, EPUB, YouTube URLs : everything gets funneled into clean, structured text ready to feed an LLM or a text analysis pipeline.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One lib, twenty formats&lt;&#x2F;strong&gt;: PDF, DOCX, XLSX, PPTX, HTML, CSV, JSON, XML, images, audio, ZIP, EPUB, YouTube. No more juggling ten different parsers in your project.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;LLM-oriented, not human-oriented&lt;&#x2F;strong&gt;: conversion preserves structure (headings, lists, tables, links) without visual noise. It&#x27;s clean text meant to fit in a model context.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;CLI + Python API&lt;&#x2F;strong&gt;: scriptable from the shell for batch jobs, importable into your code for on-the-fly processing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Optional dependencies&lt;&#x2F;strong&gt;: install only the formats you actually need (&lt;code&gt;pip install markitdown[pdf,docx]&lt;&#x2F;code&gt;), everything else stays lightweight.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible&lt;&#x2F;strong&gt;: OCR via Azure Document Intelligence, image descriptions generated by GPT-4o, third-party plugin system. The heavy use cases already have an answer.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Preparing a heterogeneous document corpus for RAG or fine-tuning&lt;&#x2F;li&gt;
&lt;li&gt;Converting Excel&#x2F;PowerPoint reports into Markdown before ingesting them into a vector index&lt;&#x2F;li&gt;
&lt;li&gt;Extracting text from audio transcripts or scanned images for analysis&lt;&#x2F;li&gt;
&lt;li&gt;Normalizing email attachments into a single backend-friendly format&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Outline</title>
        <published>2026-04-23T00:00:00+00:00</published>
        <updated>2026-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/outline/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/outline/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/outline/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Outline is a collaborative knowledge base for teams tired of scattering docs across Google Drive and Slack threads. Fast markdown editor, real-time multiplayer editing, AI search, granular permissions — available as a managed SaaS or fully self-hosted. A serious alternative to Notion or Confluence, without the lock-in.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fast, markdown-first editor&lt;&#x2F;strong&gt;: slash commands, interactive embeds, keyboard shortcuts. Writing stays smooth, and you can export clean markdown anytime.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-time collaboration&lt;&#x2F;strong&gt;: Google Docs-style multiplayer editing, threaded comments and mentions. Discussions stay attached to content instead of scattered across Slack.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in AI search&lt;&#x2F;strong&gt;: ask a question in natural language and Outline answers by searching the workspace and citing source docs. Useful once the knowledge base grows.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Serious permissions&lt;&#x2F;strong&gt;: user groups, guests, public shares, read&#x2F;write access per collection or document. Enough to model a real team hierarchy without hacks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;First-class self-hosting&lt;&#x2F;strong&gt;: Docker, custom domains, white-label with brand logo and colors. The code is on GitHub (React + Node.js stack) and the open API lets you wire in whatever you need.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Internal wiki for an engineering team: onboarding, runbooks, architecture decisions&lt;&#x2F;li&gt;
&lt;li&gt;Product documentation shared across dev, support and marketing with differentiated permissions&lt;&#x2F;li&gt;
&lt;li&gt;Self-hosted knowledge base for companies that need to keep data on-premise&lt;&#x2F;li&gt;
&lt;li&gt;Drop-in replacement for Confluence or Notion without depending on a closed SaaS&lt;&#x2F;li&gt;
&lt;li&gt;Public documentation hub (product docs, handbook) via public shares and white-label branding&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Polar</title>
        <published>2026-04-23T00:00:00+00:00</published>
        <updated>2026-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/polar/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/polar/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/polar/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Polar is an open source platform that lets developers sell their digital products — SaaS, subscriptions, downloads, Discord access, license keys, private GitHub repos — without building the payment plumbing themselves. Polar acts as Merchant of Record: they collect the money, issue invoices and report VAT&#x2F;sales tax in every jurisdiction. You plug the SDK, define the product, and get paid.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Global Merchant of Record&lt;&#x2F;strong&gt;: Polar handles EU VAT, US sales tax, compliant invoices and refunds — no more spinning up a legal entity per country to sell internationally&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Open source and auditable&lt;&#x2F;strong&gt;: Apache-2.0 license, Python&#x2F;FastAPI backend and TypeScript&#x2F;Next.js frontend — you can read exactly how your payments flow through&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Simple pricing&lt;&#x2F;strong&gt;: 4% + $0.40 per transaction, no fixed monthly fee — you only pay when you sell, unlike stacking Stripe Billing plus a separate tax provider&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native digital products&lt;&#x2F;strong&gt;: selling license keys, private GitHub repo access, Discord roles, downloadable files — the classic indie dev use cases are built in&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Clean SDKs and webhooks&lt;&#x2F;strong&gt;: integrate via official SDKs, hosted checkout or direct API — keep control of the UX without touching PCI-DSS&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Credible alternative to Lemon Squeezy &#x2F; Paddle&lt;&#x2F;strong&gt;: same Merchant of Record model, but with open code and a clear payout policy&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Monetizing a solo or small-team SaaS without setting up a tax entity per jurisdiction&lt;&#x2F;li&gt;
&lt;li&gt;Selling software licenses, templates, ebooks or online courses with VAT handled automatically&lt;&#x2F;li&gt;
&lt;li&gt;Managing recurring subscriptions (monthly, yearly, usage-based) on an open source project or side project&lt;&#x2F;li&gt;
&lt;li&gt;Distributing premium content through GitHub (private repos) or Discord (paid roles) transparently&lt;&#x2F;li&gt;
&lt;li&gt;Replacing a Stripe + tax provider + custom invoicing stack with a single integration&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>CrowdSec</title>
        <published>2026-04-22T00:00:00+00:00</published>
        <updated>2026-04-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/crowdsec/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/crowdsec/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/crowdsec/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;CrowdSec is an open source security engine that acts as an IDS&#x2F;IPS and WAF. It parses logs from your services (SSH, nginx, apps…), detects malicious patterns and triggers remediations through bouncers deployed on firewalls, reverse proxies or cloud platforms. Beyond local detection, each instance anonymously reports aggressive IPs to a community network that redistributes a blocklist of real-world threats.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Decoupled detection and remediation&lt;&#x2F;strong&gt;: the engine reads logs on one machine, bouncers block somewhere else. Perfect for distributed setups or shared reverse proxies.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Scenario and parser hub&lt;&#x2F;strong&gt;: community-driven library of ready-to-use rules (SSH bruteforce, port scans, web exploits, aggressive scrapers) installable with a single command.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Community blocklist&lt;&#x2F;strong&gt;: you benefit from IPs already reported by other instances before you even get attacked. A genuine network effect, not marketing fluff.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Bouncers everywhere&lt;&#x2F;strong&gt;: iptables, nftables, Traefik, nginx, Cloudflare, AWS WAF, Caddy, HAProxy, Kubernetes… more than 30 official integrations.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Lightweight and scriptable&lt;&#x2F;strong&gt;: single Go binary, local API, clean &lt;code&gt;cscli&lt;&#x2F;code&gt; CLI, YAML config. Runs on a tiny VPS or a full cluster.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Free console&lt;&#x2F;strong&gt;: web dashboard to visualize alerts, decisions and multi-machine instances, without hosting your own Grafana.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Protect an exposed SSH server against distributed bruteforce attempts.&lt;&#x2F;li&gt;
&lt;li&gt;Filter traffic on a reverse proxy (Traefik, nginx) facing scanners and aggressive bots.&lt;&#x2F;li&gt;
&lt;li&gt;Block known malicious IPs upstream of a self-hosted web application.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize detection across multiple VPS and share decisions through a shared LAPI instance.&lt;&#x2F;li&gt;
&lt;li&gt;Replace or complement fail2ban with a modern, multi-source and shared approach.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Fleet</title>
        <published>2026-04-22T00:00:00+00:00</published>
        <updated>2026-04-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/fleet/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/fleet/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/fleet/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Fleet is an open-source device management platform (MDM + visibility) for macOS, Windows, Linux, iOS, Android and Chromebooks. It builds on osquery to query host state in real time and bundles configuration, compliance, software inventory and remediation into a single tool driven through UI, API or GitOps.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multi-OS in one console&lt;&#x2F;strong&gt;: macOS, Windows, Linux, iOS, Android and ChromeOS managed with the same workflows - no more silos between IT and security teams.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API-first and GitOps&lt;&#x2F;strong&gt;: entire configuration (profiles, scripts, policies) described as YAML, versioned in Git, applied via pipeline. No mandatory clicks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built on osquery&lt;&#x2F;strong&gt;: 300+ SQL tables to interrogate any host. Hardware, software, processes, vulnerabilities - everything is queryable.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Lightweight and modular&lt;&#x2F;strong&gt;: features (MDM, vulnerability management, posture) toggle independently. Deploy only what you use.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Enterprise integrations&lt;&#x2F;strong&gt;: native connectors for Snowflake, Splunk, Elastic, Jira, Zendesk, Vanta, GitHub Actions. Plays well with CrowdStrike, SentinelOne, Munki, Ansible.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Inventory and audit a heterogeneous fleet (employee laptops, prod servers, IoT) from a single source of truth&lt;&#x2F;li&gt;
&lt;li&gt;Enforce CIS macOS&#x2F;Windows benchmarks and produce compliance reports (SOC 2, ISO 27001)&lt;&#x2F;li&gt;
&lt;li&gt;Surface per-host software vulnerabilities and drive remediation via centralized scripts&lt;&#x2F;li&gt;
&lt;li&gt;Run the MDM lifecycle (enrollment, profiles, remote wipe) on Apple and Windows through a GitOps workflow&lt;&#x2F;li&gt;
&lt;li&gt;Detection and threat hunting by querying the fleet in SQL via osquery straight from the SOC&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>ConvertX</title>
        <published>2026-04-20T00:00:00+00:00</published>
        <updated>2026-04-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/convertx/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/convertx/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/convertx/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;ConvertX is a self-hosted file converter that handles 1000+ formats. It cleanly wraps a dozen battle-tested conversion engines (FFmpeg, ImageMagick, Pandoc, LibreOffice, Calibre, Inkscape...) behind a minimalist web UI, with multi-user accounts and batch processing. The point: stop relying on shady online sites to turn a PDF into an EPUB or an MKV into an MP4.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Absurdly broad coverage&lt;&#x2F;strong&gt;: ~472 input and ~199 output formats just for video via FFmpeg, plus 245&#x2F;183 for images via ImageMagick, plus Pandoc for documents, Calibre for e-books, Inkscape for vectors.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern, lightweight stack&lt;&#x2F;strong&gt;: Bun + Elysia + TypeScript, no bloat. Bun runs the web server and SSR without extra layers, the Docker image stays reasonable.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted = privacy&lt;&#x2F;strong&gt;: your files never leave your machine. Goodbye to online services that keep a copy or stuff their pages with dodgy ads.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-user with auth&lt;&#x2F;strong&gt;: user accounts, password protection — you can expose the instance to your whole family or team without mixing things up.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Batch processing&lt;&#x2F;strong&gt;: throw 50 files at it and get a ZIP back. Perfect for repetitive conversions.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Trivial Docker deploy&lt;&#x2F;strong&gt;: official image on GHCR and Docker Hub, a single &lt;code&gt;docker run&lt;&#x2F;code&gt; and you&#x27;re live.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Bulk-convert iPhone HEIC photos to JPEG without going through a third-party service.&lt;&#x2F;li&gt;
&lt;li&gt;Transcode a video library (MKV → MP4) without firing up FFmpeg from the CLI every time.&lt;&#x2F;li&gt;
&lt;li&gt;Convert e-books EPUB → MOBI&#x2F;AZW3 for Kindle, or PDF → EPUB for Kobo readers.&lt;&#x2F;li&gt;
&lt;li&gt;Deploy an internal converter for a team (marketing, docs, support) that hates the command line.&lt;&#x2F;li&gt;
&lt;li&gt;Replace cloudconvert.com and other paid or intrusive SaaS with a personal instance.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>GeoNames</title>
        <published>2026-04-20T00:00:00+00:00</published>
        <updated>2026-04-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/geonames/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/geonames/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/geonames/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;GeoNames is a worldwide geographical database that indexes over 11 million placenames (cities, landmarks, points of interest) across every country. All data is distributed under Creative Commons Attribution 4.0 and a comprehensive REST API handles geocoding, reverse geocoding and proximity search — no need to run your own geo infrastructure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Worldwide coverage&lt;&#x2F;strong&gt;: 11M+ placenames, 250+ countries, translated names in many languages, full administrative hierarchies (country → region → city → neighbourhood).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Free data dumps&lt;&#x2F;strong&gt;: &lt;code&gt;allCountries.zip&lt;&#x2F;code&gt;, postal codes, hierarchies and shapes are downloadable directly under CC BY 4.0, with daily updates.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Free REST API&lt;&#x2F;strong&gt;: web services for geocoding, reverse geocoding, nearby search, time zones, elevation and even geotagged Wikipedia articles — 10,000 credits per day per application.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible formats&lt;&#x2F;strong&gt;: JSON, XML or RDF responses, plus official client libraries for most mainstream languages.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Dead simple integration&lt;&#x2F;strong&gt;: a free account gives you a username to pass as a query param — no complex API keys to juggle.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Bulk geocoding and reverse geocoding without relying on Google Maps or Mapbox.&lt;&#x2F;li&gt;
&lt;li&gt;Address form autocompletion with multilingual suggestions.&lt;&#x2F;li&gt;
&lt;li&gt;Data enrichment: derive time zone, country, region or population from coordinates.&lt;&#x2F;li&gt;
&lt;li&gt;Building maps or geo search engines by self-hosting the dumps in Postgres or Elasticsearch.&lt;&#x2F;li&gt;
&lt;li&gt;Validating and normalising postal codes at an international scale.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>MarkEdit</title>
        <published>2026-04-20T00:00:00+00:00</published>
        <updated>2026-04-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/markedit/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/markedit/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/markedit/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;MarkEdit is a native macOS Markdown editor that channels TextEdit&#x27;s minimalist spirit, but dedicated exclusively to Markdown. The app weighs 4 MB, handles files up to 10 MB without breaking a sweat, and collects zero user data. A sober alternative to bloated apps like Typora or Obsidian when you just want to write.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Native macOS&lt;&#x2F;strong&gt;: Clean Cocoa UI with full system integration — force-touch word lookup, Services, Shortcuts and AppleScript support.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Lightweight and fast&lt;&#x2F;strong&gt;: 4 MB on disk, instant launch, responsive even on large files. No Electron, no lag.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real extensibility&lt;&#x2F;strong&gt;: Inject custom CSS and JavaScript, plus CodeMirror 6 extensions to tweak the editor to your exact needs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Pro-grade features&lt;&#x2F;strong&gt;: Multi-caret editing, code folding, strict GFM compliance, tables support, math and diagram previews.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Privacy by default&lt;&#x2F;strong&gt;: Zero telemetry, zero account, zero cloud — just a text editor that respects your disk.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Write READMEs, notes and technical documentation without leaving the native macOS ecosystem.&lt;&#x2F;li&gt;
&lt;li&gt;Replace TextEdit as the default editor for &lt;code&gt;.md&lt;&#x2F;code&gt; files with proper syntax highlighting.&lt;&#x2F;li&gt;
&lt;li&gt;Customize editor appearance and behavior through CSS&#x2F;JS without waiting for an official plugin.&lt;&#x2F;li&gt;
&lt;li&gt;Automate Markdown file editing via Shortcuts or AppleScript in macOS workflows.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>msgvault</title>
        <published>2026-04-20T00:00:00+00:00</published>
        <updated>2026-04-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/msgvault/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/msgvault/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/msgvault/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;msgvault pulls your entire email history (Gmail, IMAP, MBOX, Apple Mail) and messages (WhatsApp, iMessage, Google Voice) into a local archive, then lets you explore everything offline via a TUI, DuckDB SQL or an MCP server. The premise: your communications belong to you, so they live on your disk, not on a provider&#x27;s cluster.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fully offline after sync&lt;&#x2F;strong&gt;: once the database is populated, no network needed. Search, analytics and AI queries all run locally.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Stack built for volume&lt;&#x2F;strong&gt;: SQLite with FTS5 for Gmail-style full-text search, Parquet + DuckDB for analytics over hundreds of thousands of messages.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Snappy TUI&lt;&#x2F;strong&gt;: interactive terminal UI to browse the archive with zero latency, even on massive corpora.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Smart incremental sync&lt;&#x2F;strong&gt;: leverages the Gmail History API, so no full re-download on every run.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native AI integration&lt;&#x2F;strong&gt;: an MCP server exposes the archive to Claude Desktop or any MCP client for semantic queries across your whole correspondence.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-account and dedup&lt;&#x2F;strong&gt;: multiple mailboxes in a single database, attachments deduplicated via SHA-256 content addressing.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Full backup of a Gmail mailbox before migrating or closing an account.&lt;&#x2F;li&gt;
&lt;li&gt;Historical search across 10+ years of mail without relying on the provider&#x27;s UI.&lt;&#x2F;li&gt;
&lt;li&gt;Personal analytics: top senders, volume over time, attachment extraction.&lt;&#x2F;li&gt;
&lt;li&gt;Feeding an AI assistant with your message history via MCP to recover context.&lt;&#x2F;li&gt;
&lt;li&gt;Consolidating scattered exports (MBOX, emlx, WhatsApp, iMessage) into a single store.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenPanel</title>
        <published>2026-04-20T00:00:00+00:00</published>
        <updated>2026-04-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openpanel/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openpanel/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openpanel/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OpenPanel is a web hosting control panel that drops every user into their own Docker container, complete with a dedicated web server, database and PHP versions. The idea: give customers a VPS-like experience without provisioning an actual VPS each time. A credible alternative to cPanel and CyberPanel for hosting providers who want isolation without the WHM licensing tax.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Per-user container isolation&lt;&#x2F;strong&gt;: every account runs inside its own Docker container with resource limits and independent services. No more noisy neighbours.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Pick your web stack&lt;&#x2F;strong&gt;: Nginx, Apache or OpenLitespeed, with multiple PHP versions coexisting side by side without conflicts.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Billing plugged in&lt;&#x2F;strong&gt;: native integrations with FOSSBilling, WHMCS and Blesta turn a server into a billable hosting offering.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Assisted migration&lt;&#x2F;strong&gt;: imports accounts from cPanel and CyberPanel so you don&#x27;t start from scratch when switching panels.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;OpenAdmin + OpenPanel UI&lt;&#x2F;strong&gt;: two distinct interfaces, one for server admins and one for end users, with activity logs and backup management baked in.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Shared hosting provider that wants container-level isolation without jumping to a VPS product&lt;&#x2F;li&gt;
&lt;li&gt;Migrating existing cPanel or CyberPanel accounts to a modern Docker-based stack&lt;&#x2F;li&gt;
&lt;li&gt;White-label hosting platform with built-in billing via FOSSBilling or WHMCS&lt;&#x2F;li&gt;
&lt;li&gt;Multi-tenant environment where each customer owns their own web services and databases&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Agent Reach</title>
        <published>2026-04-17T00:00:00+00:00</published>
        <updated>2026-04-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/agent-reach/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/agent-reach/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/agent-reach/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Agent Reach is a CLI scaffolding that plugs your AI agent into the public web — Twitter&#x2F;X, Reddit, YouTube, Bilibili, GitHub, Xiaohongshu, Douyin, LinkedIn, WeChat, Weibo, RSS — without forcing you to pay for a single official API. The project doesn&#x27;t reinvent scraping: it orchestrates proven tools from the ecosystem (yt-dlp, Jina Reader, twitter-cli, rdt-cli, gh, feedparser, Exa…) behind a unified, agent-friendly layer.&lt;&#x2F;p&gt;
&lt;p&gt;Installation is a single command (&lt;code&gt;agent-reach install&lt;&#x2F;code&gt;), which detects your environment and pulls the system dependencies. Coding assistants (Claude Code, Cursor, Codex…) then call it like any other CLI, or consume it over MCP via &lt;code&gt;mcporter&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero paid APIs&lt;&#x2F;strong&gt;: No $100&#x2F;month Twitter key, no YouTube Data API quota. The underlying tools talk straight to public sites, for free.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Asian platform coverage&lt;&#x2F;strong&gt;: Bilibili, Xiaohongshu, Douyin, WeChat, Weibo. Rare in Western projects, invaluable for product or competitive intelligence in China.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;One surface for the agent&lt;&#x2F;strong&gt;: Your LLM doesn&#x27;t have to learn ten different SDKs. It learns one verb (&lt;code&gt;read&lt;&#x2F;code&gt;, &lt;code&gt;search&lt;&#x2F;code&gt;, &lt;code&gt;watch&lt;&#x2F;code&gt;) and a list of platforms.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Autonomous install&lt;&#x2F;strong&gt;: Hand the install URL to your agent and it figures out the binaries (yt-dlp, gh, twitter-cli…) and their config on its own.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Open Python stack&lt;&#x2F;strong&gt;: MIT license, 100% Python, easy to fork or extend to bolt on a new platform.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in MCP bridge&lt;&#x2F;strong&gt;: With &lt;code&gt;mcporter&lt;&#x2F;code&gt;, the CLI exposes itself as a Model Context Protocol server, consumable by any MCP client.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Multi-platform product and competitive monitoring driven by an agent&lt;&#x2F;li&gt;
&lt;li&gt;YouTube or Bilibili transcript extraction to feed a RAG pipeline&lt;&#x2F;li&gt;
&lt;li&gt;Tracking Reddit threads, tweets or LinkedIn posts on a given topic&lt;&#x2F;li&gt;
&lt;li&gt;Semantic web search via Exa, embedded inside a research agent&lt;&#x2F;li&gt;
&lt;li&gt;Collecting RSS and WeChat content for automated daily summaries&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>SMS Gateway for Android</title>
        <published>2026-04-17T00:00:00+00:00</published>
        <updated>2026-04-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/android-sms-gateway/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/android-sms-gateway/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/android-sms-gateway/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;An Android app that turns any old smartphone into an API-driven SMS gateway. You send an HTTP request, the phone sends the SMS through its SIM card. Incoming messages are pushed back in real time via webhooks. No registration, no middleman.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No provider lock-in&lt;&#x2F;strong&gt;: use your own mobile plan instead of paying Twilio, Vonage or similar per-SMS pricing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Three deployment modes&lt;&#x2F;strong&gt;: local server (LAN&#x2F;VPN), private cloud server (self-hostable), or public cloud hosted by the maintainers.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;End-to-end encryption&lt;&#x2F;strong&gt;: message content and phone numbers encrypted client-side before transit.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native webhooks&lt;&#x2F;strong&gt;: real-time delivery of incoming SMS, delivery status updates, MMS notifications.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-SIM and multi-device&lt;&#x2F;strong&gt;: orchestrate several phones, pick which SIM sends which message, handle multipart messages.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Two-factor authentication (2FA) over SMS without paying a third-party service&lt;&#x2F;li&gt;
&lt;li&gt;Transactional notifications for an early-stage SaaS that wants to control costs&lt;&#x2F;li&gt;
&lt;li&gt;Appointment reminders for clinics, garages, hair salons or any small business&lt;&#x2F;li&gt;
&lt;li&gt;SMS-based feedback collection or surveys in markets where SMS still dominates&lt;&#x2F;li&gt;
&lt;li&gt;Putting an old Android device stuck in a drawer back to productive use&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenSEO</title>
        <published>2026-04-17T00:00:00+00:00</published>
        <updated>2026-04-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/open-seo/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/open-seo/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/open-seo/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OpenSEO is an open source, self-hostable SEO platform bundling keyword research, rank tracking, domain analysis, backlink monitoring and technical site audits. Instead of paying a monthly Ahrefs or Semrush subscription, you plug in your own DataForSEO key and only pay for the API calls you actually consume.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pay-as-you-go instead of subscription&lt;&#x2F;strong&gt;: the tool itself is free; you only pay for the DataForSEO API requests you make (a few dollars to a few dozen depending on usage).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted by default&lt;&#x2F;strong&gt;: two official deployment paths, Docker for a quick start and Cloudflare Workers for an edge, multi-user setup.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full SEO coverage&lt;&#x2F;strong&gt;: research, rank tracking (desktop + mobile with SERP feature detection), domain insights, backlinks and site audits in a single UI.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern, readable stack&lt;&#x2F;strong&gt;: TypeScript, Drizzle ORM, Vite and Vitest - easy to fork, read and extend with your own workflows.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Managed SaaS available&lt;&#x2F;strong&gt;: if you want to skip the ops, openseo.so offers the same product with automatic backups and no lock-in on data format.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Track your target keyword positions without paying 100+ €&#x2F;month to an SEO SaaS.&lt;&#x2F;li&gt;
&lt;li&gt;Run recurring technical audits on your client sites from a self-hosted instance.&lt;&#x2F;li&gt;
&lt;li&gt;Build automated SEO reports by wrapping the DataForSEO API behind a controlled UI.&lt;&#x2F;li&gt;
&lt;li&gt;Start a freelance SEO practice with variable API costs instead of a fixed subscription.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Crawlee</title>
        <published>2026-04-15T00:00:00+00:00</published>
        <updated>2026-04-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/crawlee/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/crawlee/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/crawlee/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Crawlee is Apify&#x27;s Node.js&#x2F;TypeScript framework for building web crawlers that actually hold up in production. It unifies plain HTTP scraping (Cheerio, JSDOM) and headless browser automation (Playwright, Puppeteer) behind a single API. The goal: ship scrapers that look like real users and sail past modern bot protections without homegrown hacks.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unified HTTP and headless API&lt;&#x2F;strong&gt;: Same routing logic, same queue handling, whether you&#x27;re firing Cheerio or driving Playwright. Swapping engines becomes an implementation detail, not a rewrite.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Anti-blocking out of the box&lt;&#x2F;strong&gt;: Realistic TLS fingerprints, coherent browser headers, session and proxy rotation. Defaults are tuned to avoid getting flagged by Cloudflare, DataDome and friends.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Persistent smart queue&lt;&#x2F;strong&gt;: Automatic request deduplication, BFS or DFS traversal, resume-after-crash semantics. Your crawl state survives interruptions.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native autoscaling&lt;&#x2F;strong&gt;: The framework adjusts concurrency based on available CPU and memory. No manual tuning, it adapts to whatever hardware it runs on.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;TypeScript first&lt;&#x2F;strong&gt;: Full types, solid IDE autocomplete, clean integration into modern Node projects. The CLI scaffolds a ready-to-run project in seconds.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Apify ecosystem&lt;&#x2F;strong&gt;: The library runs perfectly fine locally, but deploys without friction onto the Apify platform if you ever need managed production hosting.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Scraping JavaScript-heavy sites that require an actual browser engine&lt;&#x2F;li&gt;
&lt;li&gt;Large-scale data collection to train LLMs or feed RAG pipelines&lt;&#x2F;li&gt;
&lt;li&gt;Price, stock or content monitoring across e-commerce catalogs&lt;&#x2F;li&gt;
&lt;li&gt;Structured extraction from SaaS apps that don&#x27;t expose a public API&lt;&#x2F;li&gt;
&lt;li&gt;Automated competitive intelligence with deduplication and crash recovery&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Dify</title>
        <published>2026-04-15T00:00:00+00:00</published>
        <updated>2026-04-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/dify/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/dify/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/dify/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Dify is an open-source platform for building LLM-powered applications. It bundles a visual workflow editor, a RAG pipeline, agent creation and multi-model management into a single interface. The goal: shrink the gap between prototype and production while keeping full control over data and infra.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Visual canvas&lt;&#x2F;strong&gt;: Build and test AI workflows on a canvas, without rewriting code for every iteration. Developers can still drop into the APIs when needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Solid RAG&lt;&#x2F;strong&gt;: Document ingestion pipeline (PDFs, docs, etc.) with extraction, chunking and vector search built in. Usable without rolling your own stack.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Model-agnostic&lt;&#x2F;strong&gt;: Integrates hundreds of proprietary and open-source LLMs (OpenAI, Anthropic, Mistral, Llama, Ollama...). Swap providers without rewriting the app.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Agents with tools&lt;&#x2F;strong&gt;: ReAct or function-calling agents with 50+ built-in tools (web search, math, APIs). Extensible via custom tools.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Backend-as-a-Service&lt;&#x2F;strong&gt;: Ships APIs ready to plug into a frontend or chatbot. No need to write the orchestration server yourself.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in LLMOps&lt;&#x2F;strong&gt;: Logs, traces, cost and performance analytics. Observability baked in to debug and iterate on prompts.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Stand up an internal chatbot wired to company documentation (RAG) in a few hours.&lt;&#x2F;li&gt;
&lt;li&gt;Prototype multi-step agents before hardening them in code.&lt;&#x2F;li&gt;
&lt;li&gt;Compare multiple LLMs on the same workflow to pick the best cost&#x2F;quality tradeoff.&lt;&#x2F;li&gt;
&lt;li&gt;Expose an AI API to product teams without rebuilding on every prompt change.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Hermes Agent</title>
        <published>2026-04-15T00:00:00+00:00</published>
        <updated>2026-04-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/hermes-agent/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/hermes-agent/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/hermes-agent/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Hermes Agent is a self-improving AI agent built by Nous Research. It runs in a terminal, plugs into messaging platforms (Telegram, Discord, Slack, WhatsApp, Signal) and ships a learning loop that creates and refines its own skills from experience. The point: an agent that gets more useful over time, deployable from a $5 VPS to a GPU cluster.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Autonomous learning loop&lt;&#x2F;strong&gt;: the agent builds skills, improves them during use and searches past conversations for relevant context.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;LLM-agnostic&lt;&#x2F;strong&gt;: Nous Portal, OpenRouter, OpenAI, Hugging Face or a custom endpoint — pick your backend.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible deployment&lt;&#x2F;strong&gt;: local, Docker, SSH, VPS, GPU cluster or serverless (Daytona, Modal).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-channel by default&lt;&#x2F;strong&gt;: rich TUI with multiline editing and slash-command autocomplete, paired with bridges to consumer messaging apps.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in automation&lt;&#x2F;strong&gt;: cron scheduler for unattended tasks plus parallel subagents for fan-out workloads.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Personal multi-device assistant reachable from Telegram or Signal, with memory persisting across sessions.&lt;&#x2F;li&gt;
&lt;li&gt;Automated watch pipelines via cron: daily digests, monitoring, scheduled reports.&lt;&#x2F;li&gt;
&lt;li&gt;Testbench to compare several LLM providers on the same workflows without rewriting code.&lt;&#x2F;li&gt;
&lt;li&gt;Long-running agent that accumulates domain- or project-specific skills over time.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Formbricks</title>
        <published>2026-04-13T00:00:00+00:00</published>
        <updated>2026-04-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/formbricks/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/formbricks/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/formbricks/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Formbricks is an open source survey and user feedback platform. It lets you create targeted surveys and deploy them across multiple channels: in-app, website, email, or via shareable links. Everything is configurable without code, thanks to a no-code editor and an event-based triggering system tied to user actions.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Credible Qualtrics alternative&lt;&#x2F;strong&gt;: Full experience management capabilities without the enterprise price tag or proprietary lock-in&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native multi-channel&lt;&#x2F;strong&gt;: In-app, website, email, and link surveys — one tool to cover the entire user journey&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Granular no-code targeting&lt;&#x2F;strong&gt;: Pre-segmentation by custom attributes and event-based triggering, all configurable from the UI&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable and GDPR-friendly&lt;&#x2F;strong&gt;: Deploy on your own infrastructure for full data control and built-in GDPR compliance&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Solid integrations&lt;&#x2F;strong&gt;: Slack, Notion, Zapier, n8n — feedback flows directly into your existing tools&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern stack&lt;&#x2F;strong&gt;: Next.js, React, Prisma, TailwindCSS — a clean, contributor-friendly codebase&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Measure NPS or customer satisfaction at key journey touchpoints&lt;&#x2F;li&gt;
&lt;li&gt;Collect onboarding feedback to improve retention&lt;&#x2F;li&gt;
&lt;li&gt;Analyze churn reasons with targeted post-cancellation surveys&lt;&#x2F;li&gt;
&lt;li&gt;Validate product-market fit with contextual in-app surveys&lt;&#x2F;li&gt;
&lt;li&gt;Gather feedback on documentation or new feature releases&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Netdata</title>
        <published>2026-04-13T00:00:00+00:00</published>
        <updated>2026-04-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/netdata/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/netdata/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/netdata/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Netdata is an open-source monitoring agent that collects per-second metrics across your entire infrastructure — servers, containers, applications, hardware. It runs locally on each node, auto-detects what needs monitoring, and exposes interactive dashboards without writing a single query. All of this with minimal CPU and RAM footprint.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero configuration&lt;&#x2F;strong&gt;: the agent auto-detects services, containers, and system metrics right after installation. No YAML to write, no collectors to manually configure.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Per-second granularity&lt;&#x2F;strong&gt;: while most tools sample every 15 or 60 seconds, Netdata collects and visualizes every single second. Perfect for catching short-lived spikes.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;ML-powered anomaly detection&lt;&#x2F;strong&gt;: every metric is analyzed by an unsupervised model running directly on the agent. No need to manually define thresholds — drifts are flagged automatically.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Ultra-compact storage&lt;&#x2F;strong&gt;: roughly 0.5 bytes per sample thanks to tiered storage. Months of retention without blowing up your disk.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;800+ integrations&lt;&#x2F;strong&gt;: Linux, Windows, macOS, Kubernetes, Docker, databases, web servers, hardware sensors… coverage is massive and most work out-of-the-box.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Parent-child architecture&lt;&#x2F;strong&gt;: native horizontal scalability. Child agents push data to parents that centralize the view, with no single point of failure.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Full-stack monitoring of Linux&#x2F;Windows server fleets with centralized dashboards&lt;&#x2F;li&gt;
&lt;li&gt;Real-time observability on Kubernetes clusters and containerized workloads&lt;&#x2F;li&gt;
&lt;li&gt;Proactive anomaly detection on application performance in production&lt;&#x2F;li&gt;
&lt;li&gt;Edge monitoring in distributed environments with local data processing&lt;&#x2F;li&gt;
&lt;li&gt;Lightweight replacement for a Prometheus + Grafana stack for teams wanting less maintenance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Postiz</title>
        <published>2026-04-10T00:00:00+00:00</published>
        <updated>2026-04-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/postiz/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/postiz/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/postiz/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Postiz is a social media scheduling platform built as a self-hosted alternative to Buffer, Hootsuite or Later. It lets you manage, schedule and analyze posts across fifteen or so networks from a single interface, with built-in AI to help draft content and a full API for automation.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Broad network coverage&lt;&#x2F;strong&gt;: Instagram, YouTube, LinkedIn, Reddit, TikTok, Facebook, Pinterest, Threads, X, Bluesky, Mastodon, Dribbble, Slack and Discord - hard to find anything more complete in open source.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Truly self-hosted&lt;&#x2F;strong&gt;: simple Docker deployment, AGPL-3.0, you keep your data and OAuth tokens on your own infrastructure instead of trusting a SaaS.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Team collaboration&lt;&#x2F;strong&gt;: invitations, comments, post approval flows and roles - usable well beyond a personal account.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API and webhooks&lt;&#x2F;strong&gt;: direct integration with n8n, Make, Zapier or your own scripts to automate content generation and publishing.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern, hackable stack&lt;&#x2F;strong&gt;: Next.js + NestJS + Prisma + Temporal, TypeScript end-to-end, pnpm monorepo - easy to fork to plug in a custom provider.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replace a Buffer or Hootsuite subscription with a self-hosted instance for an agency or marketing team.&lt;&#x2F;li&gt;
&lt;li&gt;Automate content reposting (blog → LinkedIn&#x2F;X&#x2F;Bluesky) through the API from an n8n pipeline.&lt;&#x2F;li&gt;
&lt;li&gt;Give multiple creators a shared space to collaborate on posts before publishing.&lt;&#x2F;li&gt;
&lt;li&gt;Centralize multi-platform engagement stats without handing data to a third party.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Gitea</title>
        <published>2026-04-09T00:00:00+00:00</published>
        <updated>2026-04-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/gitea/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/gitea/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/gitea/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Gitea is a self-hosted software forge written in Go. It provides Git repository hosting, code review, project management (issues, kanban boards, milestones), a package registry and a built-in CI&#x2F;CD system. It&#x27;s the lightweight, open-source alternative to GitHub, GitLab or Bitbucket that you can deploy on your own server in minutes.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ultra lightweight&lt;&#x2F;strong&gt;: Gitea runs on a Raspberry Pi. A single Go binary, no heavy external dependencies. It uses a fraction of GitLab&#x27;s resources.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Gitea Actions&lt;&#x2F;strong&gt;: Built-in CI&#x2F;CD system compatible with GitHub Actions workflows. You can reuse your &lt;code&gt;.github&#x2F;workflows&lt;&#x2F;code&gt; files almost as-is.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Universal package registry&lt;&#x2F;strong&gt;: Native support for 20+ package types - npm, PyPI, Maven, Docker, Cargo, NuGet, Composer and many more.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible database&lt;&#x2F;strong&gt;: Compatible with SQLite, PostgreSQL, MySQL, TiDB and MS SQL. SQLite is enough for small teams, no extra infrastructure needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cross-platform&lt;&#x2F;strong&gt;: Runs on Linux, Windows, macOS, FreeBSD on both x86 and ARM64. Deploy via Docker, Kubernetes or a simple binary.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Integration ecosystem&lt;&#x2F;strong&gt;: Webhooks, full REST API, Slack, Discord, Teams, Jenkins, ArgoCD integration. Fits into any existing pipeline.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Host Git repositories internally without relying on a cloud service&lt;&#x2F;li&gt;
&lt;li&gt;Set up a complete forge for a small team with built-in CI&#x2F;CD&lt;&#x2F;li&gt;
&lt;li&gt;Replace GitLab with a less resource-hungry solution&lt;&#x2F;li&gt;
&lt;li&gt;Centralize code, issues and packages on a single self-hosted platform&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>LibreDesk</title>
        <published>2026-04-09T00:00:00+00:00</published>
        <updated>2026-04-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/libredesk/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/libredesk/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/libredesk/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;LibreDesk is an open-source, self-hosted customer support platform distributed as a single Go binary. It consolidates conversations from multiple channels (support, billing, sales email addresses) into a unified inbox, powered by a Vue.js 3 frontend and PostgreSQL backend.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Single executable&lt;&#x2F;strong&gt; : No complex dependencies to wrangle. One binary, one PostgreSQL database, and you&#x27;re up. Deployment is trivial compared to alternatives like Zendesk or Freshdesk.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-channel inbox&lt;&#x2F;strong&gt; : Consolidates multiple email addresses (support@, billing@, sales@) into a single interface. Every conversation is tracked, assigned and categorized.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in automation&lt;&#x2F;strong&gt; : Conditional workflows for automatic routing, tagging and conversation assignment. SLA rules with breach alerts keep tickets from falling through the cracks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full data ownership&lt;&#x2F;strong&gt; : Self-hosted means no vendor lock-in, no customer data flowing through third parties. A critical point for compliance-conscious organizations.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI and productivity&lt;&#x2F;strong&gt; : AI-powered response refinement, quick-send macros, keyboard-driven interface. Agents spend less time on mechanics, more on substance.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Support teams looking to move away from Zendesk&#x2F;Freshdesk without sacrificing core features&lt;&#x2F;li&gt;
&lt;li&gt;Startups and SMBs that need a structured helpdesk without recurring SaaS costs&lt;&#x2F;li&gt;
&lt;li&gt;Organizations with compliance requirements (data hosted on their own infrastructure)&lt;&#x2F;li&gt;
&lt;li&gt;Technical teams wanting an extensible tool via webhooks and custom attributes&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>PriceGhost</title>
        <published>2026-04-09T00:00:00+00:00</published>
        <updated>2026-04-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/priceghost/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/priceghost/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/priceghost/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;PriceGhost is a self-hosted price tracking application. You add a product via its URL, the app automatically extracts the price and monitors it at regular intervals. When the price drops, you get a notification. That&#x27;s it.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multi-strategy extraction&lt;&#x2F;strong&gt;: JSON-LD, site-specific scrapers, generic CSS selectors, and AI-powered analysis as fallback (Claude, GPT, Ollama). If one method fails, the next one kicks in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Human validation&lt;&#x2F;strong&gt;: a &quot;voting&quot; system lets users confirm or correct the extracted price. The app learns from your corrections.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-channel notifications&lt;&#x2F;strong&gt;: Telegram, Discord, Pushover, ntfy.sh, Gotify. Pick where you want to be alerted.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Site-specific optimizations&lt;&#x2F;strong&gt;: Amazon, Best Buy, Walmart, Target, Costco, eBay, Newegg, Home Depot, AliExpress and Magento 2 stores are natively supported with dedicated scrapers.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full PWA&lt;&#x2F;strong&gt;: dark&#x2F;light mode, multi-user support with admin panel, and one-command Docker deployment.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Monitor a tech product&#x27;s price across multiple marketplaces and buy at the right time&lt;&#x2F;li&gt;
&lt;li&gt;Track PC component or appliance prices over time with the built-in history charts&lt;&#x2F;li&gt;
&lt;li&gt;Get notified when an out-of-stock product comes back&lt;&#x2F;li&gt;
&lt;li&gt;Centralize price tracking for a whole family or team with multi-user support&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Plane</title>
        <published>2026-04-08T00:00:00+00:00</published>
        <updated>2026-04-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/plane/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/plane/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/plane/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Plane is an open-source project management platform designed to replace Jira, Linear, or Monday.com. It covers issue tracking, sprint planning, roadmap management and team documentation — all wrapped in a modern interface that doesn&#x27;t require a degree to configure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Clean, modern UI&lt;&#x2F;strong&gt; : UX built for productivity, with a rich text editor, drag-and-drop and keyboard shortcuts. The experience is closer to Linear than Jira.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cycles and Modules&lt;&#x2F;strong&gt; : Sprints (called Cycles) include native burn-down charts. Modules let you break complex projects into manageable subsets with their own tracking.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Customizable Views&lt;&#x2F;strong&gt; : Flexible filters and groupings to display exactly what matters — by assignee, priority, label, or any custom criteria.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI-powered Pages&lt;&#x2F;strong&gt; : Collaborative documentation built right into the tool, with AI writing assistance. No more juggling between Notion and your tracker.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-time Analytics&lt;&#x2F;strong&gt; : Dashboards and trend visualization to track velocity, workload distribution and progress without exporting to a spreadsheet.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Easy self-hosting&lt;&#x2F;strong&gt; : Deploy with Docker or Kubernetes. A cloud option is also available for those who&#x27;d rather not manage infrastructure.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Product teams looking for an open-source Jira alternative with a modern UX&lt;&#x2F;li&gt;
&lt;li&gt;Startups wanting a self-hosted project tracker to keep control over their data&lt;&#x2F;li&gt;
&lt;li&gt;Organizations managing multiple projects in parallel that need centralized roadmaps and analytics&lt;&#x2F;li&gt;
&lt;li&gt;Agile teams practicing Scrum or Kanban with sprint tracking and burn-down charts&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Zitadel</title>
        <published>2026-04-08T00:00:00+00:00</published>
        <updated>2026-04-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/zitadel/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/zitadel/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/zitadel/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Zitadel is an open-source identity and access management (IAM) platform written in Go. It provides everything you need to handle authentication and authorization for your users: SSO, MFA, Passkeys, OIDC, SAML 2.0, SCIM 2.0 and a battle-tested multi-tenancy model. The approach is API-first with gRPC, connectRPC and REST support.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Native multi-tenancy&lt;&#x2F;strong&gt;: The architecture is designed from the ground up to manage multiple organizations with strict hierarchy and infrastructure-level data isolation. No hacks needed - it&#x27;s baked into the project&#x27;s DNA.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full standards support&lt;&#x2F;strong&gt;: OpenID Connect certified, SAML 2.0, SCIM 2.0, FIDO2&#x2F;WebAuthn. Covers B2C, B2B and internal use cases without juggling multiple tools.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Event-driven audit trail&lt;&#x2F;strong&gt;: Every action is tracked through an event-driven system accessible via API. Perfect for compliance (SOC2, GDPR, ISO 27001) without extra development work.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Passkeys and passwordless&lt;&#x2F;strong&gt;: Native FIDO2&#x2F;WebAuthn support for passwordless authentication. MFA, social login, identity brokering - all built in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API-first and scalable&lt;&#x2F;strong&gt;: gRPC and REST, zero-downtime updates, horizontal scalability. Integration into an existing stack is done cleanly through APIs, not a monolithic SDK.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted or cloud&lt;&#x2F;strong&gt;: Deploy on your own infrastructure or use the managed SaaS offering. You stay in control of your identity data.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replace Auth0 or Keycloak with an open-source solution featuring native multi-tenancy&lt;&#x2F;li&gt;
&lt;li&gt;Set up SSO and identity brokering for a B2B SaaS platform&lt;&#x2F;li&gt;
&lt;li&gt;Manage authentication for multiple organizations from a single instance&lt;&#x2F;li&gt;
&lt;li&gt;Implement passwordless auth (Passkeys&#x2F;WebAuthn) without building all the plumbing&lt;&#x2F;li&gt;
&lt;li&gt;Centralize identity audit trails to meet compliance requirements&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Maestro</title>
        <published>2026-04-07T00:00:00+00:00</published>
        <updated>2026-04-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/maestro/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/maestro/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/maestro/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Maestro is an open‑source end‑to‑end testing framework for mobile (Android, iOS) and web applications. Test scenarios are written in YAML using human‑readable commands like &lt;code&gt;launchApp&lt;&#x2F;code&gt;, &lt;code&gt;tapOn&lt;&#x2F;code&gt;, or &lt;code&gt;assertVisible&lt;&#x2F;code&gt;. No compilation, no complex setup — a single install script and you&#x27;re good to go.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Human‑readable YAML&lt;&#x2F;strong&gt; : test flows look like plain language. QAs, PMs, and devs can all read and write them without friction.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native cross‑platform&lt;&#x2F;strong&gt; : Android, iOS, React Native, Flutter, and web — one framework to cover them all.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flaky test tolerance&lt;&#x2F;strong&gt; : the engine ships with automatic waiting and built‑in resilience. No more &lt;code&gt;sleep(5)&lt;&#x2F;code&gt; scattered everywhere.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Zero compilation&lt;&#x2F;strong&gt; : flows are interpreted on the fly. Editing and re‑running a test takes seconds, not minutes.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Maestro Studio&lt;&#x2F;strong&gt; : a free visual IDE to build flows, inspect UI elements, and even generate tests with AI (MaestroGPT).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Parallel execution&lt;&#x2F;strong&gt; : Maestro Cloud runs tests in parallel, cutting execution time by up to 90%.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Validate critical user journeys (login, checkout, onboarding) across mobile and web&lt;&#x2F;li&gt;
&lt;li&gt;Set up a regression test suite in CI&#x2F;CD without complex infrastructure&lt;&#x2F;li&gt;
&lt;li&gt;Test cross‑platform apps (React Native, Flutter) with a single set of scenarios&lt;&#x2F;li&gt;
&lt;li&gt;Rapidly prototype tests via Maestro Studio before integrating them into the pipeline&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Coolify</title>
        <published>2026-04-06T00:00:00+00:00</published>
        <updated>2026-04-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/coolify/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/coolify/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/coolify/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Coolify is an open source, self-hostable PaaS platform that lets you deploy applications, databases and services on any server reachable via SSH. It&#x27;s the self-hosted alternative to Vercel, Heroku, Netlify and Railway - you keep full control over your data and infrastructure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero vendor lock-in&lt;&#x2F;strong&gt;: everything runs on your servers. If you stop using Coolify, your configs stay in place and everything keeps running.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;280+ one-click services&lt;&#x2F;strong&gt;: WordPress, PostgreSQL, Redis, MinIO, Plausible, n8n... a massive catalog of preconfigured services ready to deploy.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Any server works&lt;&#x2F;strong&gt;: VPS, bare metal, Raspberry Pi, EC2, Hetzner - anything that accepts an SSH connection will do.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Git push to deploy&lt;&#x2F;strong&gt;: native integration with GitHub, GitLab, Bitbucket and Gitea. Pull requests automatically spin up preview environments.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Automatic SSL&lt;&#x2F;strong&gt;: Let&#x27;s Encrypt certificates generated and renewed without intervention. Zero manual DNS config for HTTPS.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full API and CLI&lt;&#x2F;strong&gt;: automate your deployments, integrate with your existing CI&#x2F;CD pipelines, or manage everything from the terminal.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Host your full stack (app + DB + cache + monitoring) on a single VPS without manually writing Docker Compose files&lt;&#x2F;li&gt;
&lt;li&gt;Replace Heroku&#x2F;Railway for a team that wants to control infrastructure costs&lt;&#x2F;li&gt;
&lt;li&gt;Quickly deploy internal services (Gitea, Plausible, n8n) for a startup or small team&lt;&#x2F;li&gt;
&lt;li&gt;Set up automatic preview environments for every pull request&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenScreen</title>
        <published>2026-04-06T00:00:00+00:00</published>
        <updated>2026-04-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/openscreen/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/openscreen/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/openscreen/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OpenScreen is an open-source desktop application for creating professional screen recordings and product demos. It&#x27;s a free alternative to Screen Studio — no subscription, no watermarks. The app runs on macOS, Windows, and Linux, built with Electron and React.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automatic and manual zoom&lt;&#x2F;strong&gt;: Zoom effects with adjustable depth levels to guide viewer attention, just like premium tools&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in editing&lt;&#x2F;strong&gt;: Video cropping, per-segment speed adjustment, and trimming — no external editor needed&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Annotations&lt;&#x2F;strong&gt;: Text, arrows, and image overlays directly on your recording for clear demos&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Custom backgrounds&lt;&#x2F;strong&gt;: Wallpapers, solid colors, gradients, and motion blur effects for a polished look&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible export&lt;&#x2F;strong&gt;: Multiple aspect ratios and resolutions to fit any distribution platform&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Creating product demos for a landing page or GitHub README&lt;&#x2F;li&gt;
&lt;li&gt;Recording technical tutorials with zoom on relevant code sections&lt;&#x2F;li&gt;
&lt;li&gt;Producing marketing content (LinkedIn posts, tweets) with stylized recordings&lt;&#x2F;li&gt;
&lt;li&gt;Documenting bugs or internal workflows with annotations&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Papermark</title>
        <published>2026-04-06T00:00:00+00:00</published>
        <updated>2026-04-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/papermark/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/papermark/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/papermark/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Papermark is an open-source document sharing platform built as an alternative to DocSend. You share a PDF or document through a secure link, and you get detailed analytics on who viewed it, how long they spent on each page, and whether they downloaded it. All of this with your own branding and custom domain.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Page-by-page analytics&lt;&#x2F;strong&gt;: Not just a view counter. You know exactly how long each reader spends on every page of your document, which is invaluable for pitch decks and sales proposals.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Custom branding&lt;&#x2F;strong&gt;: Custom domain, logo, colors. Your documents are shared under your brand, not a third-party tool&#x27;s.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Secure data rooms&lt;&#x2F;strong&gt;: Share sensitive documents with granular access control, email verification, and password protection.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt;: Classic Next.js + PostgreSQL + Prisma stack. You keep full control over your data and your clients&#x27; data.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native integrations&lt;&#x2F;strong&gt;: Connect with tools like Notion to import content directly, and use webhooks to automate workflows.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Share a pitch deck with investors and track their engagement page by page&lt;&#x2F;li&gt;
&lt;li&gt;Send sales proposals with analytics to know when to follow up&lt;&#x2F;li&gt;
&lt;li&gt;Create a data room for fundraising or due diligence processes&lt;&#x2F;li&gt;
&lt;li&gt;Distribute client documentation under your own branding&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>The Heading, Not the Weather: Why Your Inability to Hold a Vision Is Destroying Your Teams</title>
        <published>2026-04-05T00:00:00+00:00</published>
        <updated>2026-04-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/articles/the-vision/"/>
        <id>https://papyrus.z29k.fr/en/articles/the-vision/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/articles/the-vision/">&lt;p&gt;We live in a world that celebrates the pivot. The &quot;fail fast&quot; mantra. Agility elevated to dogma. Changing direction every quarter means being responsive. Questioning the roadmap at every board meeting means listening to the market.&lt;&#x2F;p&gt;
&lt;p&gt;No — it&#x27;s mostly a symptom of a much deeper problem: the absence of vision.&lt;&#x2F;p&gt;
&lt;p&gt;I&#x27;m not necessarily talking about large corporations, publicly traded companies, or behemoths with 10,000 employees. They typically have a locked-down strategic plan, validated by a board, broken down into multi-year roadmaps. Their problem is often the opposite: too much rigidity, not enough adaptability. I&#x27;m talking about where the damage is greatest: startups, scale-ups, SMBs, growing product teams. Organizations where strategy sometimes lives entirely in a founder&#x27;s head, where decisions are made fast — sometimes too fast — and where the absence of a clearly defined heading comes at a steep price.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-real-luxury-is-clarity&quot;&gt;The real luxury is clarity&lt;&#x2F;h2&gt;
&lt;p&gt;There&#x27;s a fundamental confusion in many of these organizations today. Strategy gets mixed up with tactics. Agility with fickleness. Adaptation with wandering.&lt;&#x2F;p&gt;
&lt;p&gt;Having a vision isn&#x27;t about writing an inspiring deck for the annual kick-off. It&#x27;s about being able to answer a simple question: &lt;strong&gt;where are we going, and why?&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Not in three weeks. In three years, five years...&lt;&#x2F;p&gt;
&lt;p&gt;The problem is that formulating a clear vision requires considerable intellectual effort. It forces you to make choices. To give things up, to accept that you won&#x27;t do everything. And in a world where every opportunity feels urgent, giving things up is frightening.&lt;&#x2F;p&gt;
&lt;p&gt;So we don&#x27;t choose. And we call it flexibility...&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-forgotten-art-of-saying-where-you-re-going&quot;&gt;The forgotten art of saying where you&#x27;re going&lt;&#x2F;h2&gt;
&lt;p&gt;A vision that exists only in the leader&#x27;s head isn&#x27;t a vision. It&#x27;s a secret.&lt;&#x2F;p&gt;
&lt;p&gt;The ability to clearly express your strategy, to describe it precisely, to make it tangible for every team member — that&#x27;s a dramatically underestimated leadership skill. It&#x27;s not a corporate communications exercise. It&#x27;s the necessary condition for every decision made at every level of the organization to be consistent with the trajectory.&lt;&#x2F;p&gt;
&lt;p&gt;When a developer chooses between two architectures, they should be able to decide based on the product direction for the next 18 months. When a product manager prioritizes their backlog, they should rely on a clear strategy — not the CEO&#x27;s latest email after lunch with a client or an investor.&lt;&#x2F;p&gt;
&lt;p&gt;Embodying the vision means repeating it. Again and again, until it becomes a collective reflex. Leaders who think communicating it once at an all-hands is enough are mistaken. Vision is transmitted through repetition, through example, through the concrete decisions of everyday work. It&#x27;s a practice, not an event.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;adapting-is-not-betraying&quot;&gt;Adapting is not betraying&lt;&#x2F;h2&gt;
&lt;p&gt;Obviously, the world changes. Markets shift, crises hit, initial assumptions sometimes prove wrong.&lt;&#x2F;p&gt;
&lt;p&gt;Nobody&#x27;s asking you to cling to an obsolete plan out of sheer stubbornness — that would be foolish.&lt;&#x2F;p&gt;
&lt;p&gt;But there&#x27;s a fundamental difference between &lt;strong&gt;adjusting the trajectory&lt;&#x2F;strong&gt; and &lt;strong&gt;changing the destination&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;A good captain changes course when the storm hits. They don&#x27;t change ports.&lt;&#x2F;p&gt;
&lt;p&gt;True strategic adaptation means finding new paths to the same goal. Not redefining the goal at every obstacle. The means are flexible; the purpose is stable.&lt;&#x2F;p&gt;
&lt;p&gt;The best leaders I&#x27;ve observed share this trait: they are remarkably flexible on the &quot;How&quot; and remarkably firm on the &quot;Why.&quot; They absorb shocks, integrate field feedback, adjust execution plans — without ever losing sight of the objective.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-hidden-cost-of-managerial-weathervanes&quot;&gt;The hidden cost of managerial weathervanes&lt;&#x2F;h2&gt;
&lt;p&gt;Let&#x27;s talk about what actually happens when a leader changes course with every shift in the wind.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Teams disengage.&lt;&#x2F;strong&gt; Not immediately, but progressively — each unexplained change of direction erodes trust a little more. By the third pivot in six months, people stop investing emotionally. Why give your best on a project that will probably be abandoned next month?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Cynicism sets in.&lt;&#x2F;strong&gt; The most perceptive employees start decoding the pattern. They know the &quot;new strategic priority&quot; has the same life expectancy as the last one. So they execute half-heartedly, wait for the next iteration — engagement morphs into passive compliance.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;The best people leave.&lt;&#x2F;strong&gt; The most talented individuals need meaning; they want to contribute to something that endures. When they realize there&#x27;s no vision behind the decisions, they go looking for that coherence elsewhere.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Decision debt accumulates.&lt;&#x2F;strong&gt; Every change of direction leaves traces: abandoned code, half-built features, aborted partnerships, time invested for nothing. Nobody measures this debt, but it drags down the organization&#x27;s real velocity far more surely than any technical problem.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;vision-rigidity&quot;&gt;Vision ≠ rigidity&lt;&#x2F;h2&gt;
&lt;p&gt;Let&#x27;s say it clearly, because the objection always comes: defending the importance of strategic constancy is not arguing for immobility.&lt;&#x2F;p&gt;
&lt;p&gt;It&#x27;s arguing for &lt;strong&gt;intellectual discipline&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;It&#x27;s demanding that anyone proposing a change of direction explain how the destination has changed — not just how the landscape is different. A new competitor, an emerging technology, unexpected customer feedback: all of these can legitimately impact the how, but rarely the why.&lt;&#x2F;p&gt;
&lt;p&gt;And when the why must evolve, then name it. Explicitly. Own the fact that the vision is changing, explain why, and rebuild alignment around the new heading. What&#x27;s toxic isn&#x27;t changing the vision — it&#x27;s doing so silently, or worse, without even being aware of it.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-ultimate-test&quot;&gt;The ultimate test&lt;&#x2F;h2&gt;
&lt;p&gt;Here&#x27;s a simple exercise. Ask five people on your team, independently, to describe in two sentences the strategic direction of the project or product over the next 12 to 18 months.&lt;&#x2F;p&gt;
&lt;p&gt;If you get five consistent answers: congratulations. You have a shared vision.&lt;&#x2F;p&gt;
&lt;p&gt;If you get five different answers — or worse, five awkward silences — you have a problem. And that problem won&#x27;t be solved by a new project management tool, a prioritization framework, or a team-building seminar.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Holding a heading is an act of leadership. It&#x27;s also, perhaps, the hardest one.&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Because it means resisting the pressure of the short term. Saying no to enticing opportunities that don&#x27;t serve the vision. Accepting that strategic clarity requires trade-offs.&lt;&#x2F;p&gt;
&lt;p&gt;But that&#x27;s the price of coherence. And coherence is what transforms a group of competent individuals into a team that moves forward.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Codeberg</title>
        <published>2026-04-05T00:00:00+00:00</published>
        <updated>2026-04-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/codeberg/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/codeberg/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/codeberg/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Codeberg is a free, community-driven Git forge operated by the non-profit Codeberg e.V. based in Berlin. It provides repository hosting, CI&#x2F;CD, static Pages hosting and collaborative translation — all powered by Forgejo, a community-maintained fork of Gitea.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero tracking, zero third-party cookies&lt;&#x2F;strong&gt;: No profiling, no data monetization. Infrastructure runs on servers controlled by the association, hosted in Europe.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Non-profit by design&lt;&#x2F;strong&gt;: Codeberg e.V. is a German non-profit organization. Funding comes from donations and memberships, not from exploiting users.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Fully open-source stack&lt;&#x2F;strong&gt;: Forgejo under the hood, Woodpecker CI for pipelines, Weblate for translations. No proprietary components anywhere.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in static Pages&lt;&#x2F;strong&gt;: Host static websites directly from a repository, no external service needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Massive community&lt;&#x2F;strong&gt;: Over 481,000 projects and 304,000 users. Enough critical mass to be a reliable, long-term platform.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Community governance&lt;&#x2F;strong&gt;: Decisions are made with members. The platform&#x27;s future is in the hands of its users.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Host open-source projects on an ethical platform without relying on GitHub or GitLab&lt;&#x2F;li&gt;
&lt;li&gt;Migrate existing projects to a privacy-respecting forge&lt;&#x2F;li&gt;
&lt;li&gt;Deploy static sites via Codeberg Pages without third-party services&lt;&#x2F;li&gt;
&lt;li&gt;Collaborate on software translations through the integrated Weblate instance&lt;&#x2F;li&gt;
&lt;li&gt;Contribute to the Forgejo ecosystem by participating in the forge that runs it&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Matomo</title>
        <published>2026-04-05T00:00:00+00:00</published>
        <updated>2026-04-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/matomo/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/matomo/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/matomo/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Matomo (formerly Piwik) is an open source web analytics platform you host on your own infrastructure. It tracks visitor activity across your sites and apps, stores everything on your servers, and gives you full-featured dashboards — without ever sending your visitors&#x27; data to a third party. It&#x27;s the most mature alternative to Google Analytics for teams that want to stay in control.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Full data ownership&lt;&#x2F;strong&gt;: Your data stays on your server. No reselling, no sharing with ad networks, no dependency on a cloud service that can change its terms overnight.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in GDPR compliance&lt;&#x2F;strong&gt;: Matomo is recognized by the French CNIL as compliant without a consent banner (in exempted configuration). A real advantage in Europe where analytics compliance has become a headache.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Feature-complete&lt;&#x2F;strong&gt;: Real-time tracking, heatmaps, funnels, e-commerce, visitor profiles, email reports, advanced segmentation — the feature set rivals paid solutions.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible architecture&lt;&#x2F;strong&gt;: Mature plugin system with a well-stocked marketplace. Add features or build your own without touching the core.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Massive community&lt;&#x2F;strong&gt;: Over 200,000 active installations, 21k+ GitHub stars, and an active contributor ecosystem spanning 15+ years.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replace Google Analytics on GDPR-regulated sites without consent banner headaches&lt;&#x2F;li&gt;
&lt;li&gt;Monitor traffic across a network of sites while keeping all data in-house&lt;&#x2F;li&gt;
&lt;li&gt;Set up detailed e-commerce tracking (carts, conversions, revenue) on your own infrastructure&lt;&#x2F;li&gt;
&lt;li&gt;Provide white-label analytics dashboards to clients via a multi-site instance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>PostHog</title>
        <published>2026-04-05T00:00:00+00:00</published>
        <updated>2026-04-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/posthog/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/posthog/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/posthog/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;PostHog is an open source platform that bundles every tool you need to understand how users interact with your product. Instead of stitching together Google Analytics, LaunchDarkly, Hotjar and Amplitude, PostHog ships it all in a single interface — with the option to self-host.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Genuinely all-in-one&lt;&#x2F;strong&gt; : product analytics, web analytics, session replay, feature flags, A&#x2F;B testing, surveys, error tracking and a data warehouse — no need to juggle ten different SaaS tools&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Open source and self-hostable&lt;&#x2F;strong&gt; : the codebase is MIT-licensed (except the &lt;code&gt;ee&lt;&#x2F;code&gt; directory). A Docker hobby deployment handles up to ~100k events&#x2F;month&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No sampling&lt;&#x2F;strong&gt; : data is complete, not sampled. Product decisions are based on real numbers&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in LLM Analytics&lt;&#x2F;strong&gt; : dedicated monitoring for AI&#x2F;LLM applications, a rare addition in the analytics ecosystem&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Data pipelines and CDP&lt;&#x2F;strong&gt; : data doesn&#x27;t stay locked inside PostHog — export to any data warehouse or third-party tool through built-in pipelines&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Understand user journeys and identify friction points in a SaaS product&lt;&#x2F;li&gt;
&lt;li&gt;Progressively roll out a feature with feature flags and measure its impact via A&#x2F;B testing&lt;&#x2F;li&gt;
&lt;li&gt;Replay sessions of users hitting bugs to understand the exact context&lt;&#x2F;li&gt;
&lt;li&gt;Centralize a startup&#x27;s entire analytics stack to avoid tool fragmentation and cut costs&lt;&#x2F;li&gt;
&lt;li&gt;Monitor performance and behavior of applications powered by LLMs&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Stirling PDF</title>
        <published>2026-04-05T00:00:00+00:00</published>
        <updated>2026-04-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/stirling-pdf/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/stirling-pdf/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/stirling-pdf/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Stirling PDF is an open-source platform bundling 50+ tools to manipulate PDF files. Merging, splitting, compressing, OCR, signing, converting, redacting — everything happens locally, without sending your documents to a third-party service. Deployable as a desktop app, web interface or self-hosted server via Docker.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Privacy by default&lt;&#x2F;strong&gt;: all processing happens locally on your machine or server. No file ever leaves your infrastructure.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;50+ built-in tools&lt;&#x2F;strong&gt;: merge, split, rotate, OCR, electronic signatures, conversion (Word, Excel, images), compression, content redaction — virtually every common PDF operation is covered.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible deployment&lt;&#x2F;strong&gt;: desktop application (Windows, Mac, Linux), standalone web interface or Docker container for self-hosting. One tool for every context.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full REST API&lt;&#x2F;strong&gt;: every tool is exposed via an API, allowing you to integrate PDF processing into your automation pipelines or existing applications.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No-code workflows&lt;&#x2F;strong&gt;: build automated processing chains without writing a single line of code. Perfect for batch processing large document volumes.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multilingual interface&lt;&#x2F;strong&gt;: 40+ languages supported, making it usable by international teams.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Automate PDF conversion and merging in a CI&#x2F;CD pipeline or business workflow&lt;&#x2F;li&gt;
&lt;li&gt;Replace paid SaaS tools (Adobe Acrobat, Smallpdf) with a self-hosted solution at no recurring cost&lt;&#x2F;li&gt;
&lt;li&gt;Extract text from scanned PDFs via built-in OCR to feed an internal search engine&lt;&#x2F;li&gt;
&lt;li&gt;Sign and redact sensitive documents without uploading them to an external cloud service&lt;&#x2F;li&gt;
&lt;li&gt;Deploy a shared internal PDF service for a team or organization via Docker&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Meilisearch</title>
        <published>2026-04-03T00:00:00+00:00</published>
        <updated>2026-04-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/meilisearch/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/meilisearch/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/meilisearch/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Meilisearch is an open-source search engine written in Rust, designed for easy deployment and lightning-fast search-as-you-type experiences. It exposes a REST API that lets you index JSON documents and query them with relevant results in under 50 ms — typos included.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;AI-powered hybrid search&lt;&#x2F;strong&gt;: combines semantic (vector) and full-text search in a single query, no complex configuration needed. Results stay relevant even when users don&#x27;t type the exact words.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Actually fast&lt;&#x2F;strong&gt;: responses come back in under 50 ms. Search-as-you-type feels instant, even across millions of documents.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Typo tolerance&lt;&#x2F;strong&gt;: Meilisearch automatically corrects typos and handles synonyms. No need to guess what the user meant.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Filters, facets and geosearch&lt;&#x2F;strong&gt;: advanced filtering, geographic search and faceted navigation built right in. Everything you need for e-commerce or catalog applications.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-tenant and multi-language&lt;&#x2F;strong&gt;: native multi-tenancy support via tenant tokens, with specific optimizations for Chinese, Japanese, Hebrew and other languages.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Simple deployment&lt;&#x2F;strong&gt;: single binary, one command to launch. No external dependencies, no cluster to set up to get started.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Instant search bar on an e-commerce site or marketplace&lt;&#x2F;li&gt;
&lt;li&gt;Document search across an internal knowledge base&lt;&#x2F;li&gt;
&lt;li&gt;Search engine for a multi-tenant SaaS application&lt;&#x2F;li&gt;
&lt;li&gt;Location-based search (restaurants, points of interest, real estate listings)&lt;&#x2F;li&gt;
&lt;li&gt;Drop-in replacement for Elasticsearch when simplicity matters more than complexity&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>n8n</title>
        <published>2026-04-03T00:00:00+00:00</published>
        <updated>2026-04-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/n8n/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/n8n/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/n8n/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;n8n is a workflow automation platform that combines a visual node-based editor with the ability to write JavaScript or Python code at any step. You connect services together, define your logic, and it runs — self-hosted or in their cloud. With over 182k stars on GitHub, it&#x27;s one of the most popular open-source alternatives to Zapier and Make.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Visual + code&lt;&#x2F;strong&gt; : the drag-and-drop editor handles simple cases, but you can inject native JavaScript or Python into any node when logic gets complex.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;400+ native integrations&lt;&#x2F;strong&gt; : from Slack to PostgreSQL to Google Sheets, connectors are ready out of the box. Over 900 community templates to get started fast.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in AI via LangChain&lt;&#x2F;strong&gt; : AI agents are first-class citizens. You can build LLM chains directly in your workflows without hand-rolling API calls.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full self-hosting&lt;&#x2F;strong&gt; : you keep complete control over your data and workflows. A single &lt;code&gt;docker run&lt;&#x2F;code&gt; and you&#x27;re up.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Fair-code model&lt;&#x2F;strong&gt; : the source code is visible and modifiable. The licensing model allows self-hosting while sustaining project development.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native error handling&lt;&#x2F;strong&gt; : each node can have its own error flow with automatic retries and notifications. No need to wrap your workflows in hand-crafted try-catch logic.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Sync data between CRM, databases, and communication tools in real time&lt;&#x2F;li&gt;
&lt;li&gt;Build lead enrichment pipelines with scraping, APIs, and AI scoring&lt;&#x2F;li&gt;
&lt;li&gt;Automate infrastructure monitoring with conditional alerts on Slack or PagerDuty&lt;&#x2F;li&gt;
&lt;li&gt;Orchestrate AI agents that process emails, classify tickets, or generate reports&lt;&#x2F;li&gt;
&lt;li&gt;Create custom webhooks to connect internal tools without building an API&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Penpot</title>
        <published>2026-04-03T00:00:00+00:00</published>
        <updated>2026-04-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/penpot/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/penpot/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/penpot/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Penpot is an open source design platform built for seamless collaboration between designers and developers. Unlike proprietary tools, it uses SVG as its native format and generates real CSS — no approximation, no lossy translation. The tool is fully self-hostable, giving teams complete control over their data and design files.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Native SVG&lt;&#x2F;strong&gt; : Designs are stored as standard SVG. No proprietary format, no lock-in. What you draw is exactly what renders in the browser.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in CSS Grid&lt;&#x2F;strong&gt; : Since version 2.0, Penpot natively supports CSS Grid for layouts. Designers work with the same layout primitives as front-end developers.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Inspect mode with real code&lt;&#x2F;strong&gt; : The inspection mode generates usable CSS, HTML and SVG code. No more copy-pasting from a tool that invents its own units.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Design tokens&lt;&#x2F;strong&gt; : A single source of truth between design and code. Tokens are shared and synchronized, drastically reducing inconsistencies between mockups and production.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt; : Deployable on your own infrastructure via Docker. Data stays on your servers — a strong argument for organizations with regulatory constraints.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Plugin system&lt;&#x2F;strong&gt; : Extensible through a plugin ecosystem to adapt the tool to your own workflows and integrations.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Design-dev teams that want to bridge the gap between mockups and implementation through native CSS output&lt;&#x2F;li&gt;
&lt;li&gt;Organizations that need an internally hosted design tool for compliance or data sovereignty reasons&lt;&#x2F;li&gt;
&lt;li&gt;Open source projects looking for a collaborative design tool with no licensing costs&lt;&#x2F;li&gt;
&lt;li&gt;Front-end teams that want to extract usable CSS code directly from design mockups&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Seafile</title>
        <published>2026-04-03T00:00:00+00:00</published>
        <updated>2026-04-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/seafile/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/seafile/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/seafile/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Seafile is a self-hosted file synchronization and sharing platform. Files are organized into libraries, each synced independently with optional client-side encryption. The project has been around for over 10 years, has 14k+ stars on GitHub, and is used by universities, enterprises, and organizations that want full control over their data.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Client-side encryption&lt;&#x2F;strong&gt; : each library can be encrypted with a user-chosen password. The server never sees plaintext data, even when hosted by a third party.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Delta sync&lt;&#x2F;strong&gt; : only modified blocks are transferred, not entire files. This makes a real difference with large files and slow connections.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible metadata&lt;&#x2F;strong&gt; : assign custom properties to files (status, owner, security level) and browse them as table, gallery, kanban, or map views.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in collaborative editing&lt;&#x2F;strong&gt; : SeaDoc enables real-time document editing with revision tracking, no external services required.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Granular permission controls&lt;&#x2F;strong&gt; : read&#x2F;write, read-only, preview-only, password-protected share links with expiration dates.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Virtual drive&lt;&#x2F;strong&gt; : a client that mounts libraries as a local disk with on-demand sync — no need to download everything upfront.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Replace Dropbox&#x2F;Google Drive with a GDPR-compliant self-hosted solution&lt;&#x2F;li&gt;
&lt;li&gt;Share sensitive files across teams with end-to-end encryption&lt;&#x2F;li&gt;
&lt;li&gt;Manage a corporate document base with hierarchical tags and custom views&lt;&#x2F;li&gt;
&lt;li&gt;Set up an internal collaborative wiki with version history&lt;&#x2F;li&gt;
&lt;li&gt;Sync large files across multiple workstations without saturating bandwidth&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Strapi</title>
        <published>2026-04-03T00:00:00+00:00</published>
        <updated>2026-04-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/strapi/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/strapi/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/strapi/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Strapi is an open-source headless CMS built with TypeScript on Node.js. It provides a visual admin panel for content management and automatically exposes REST and GraphQL APIs consumable by any frontend. The idea: decouple content management from presentation without sacrificing the editor experience.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Content Types Builder&lt;&#x2F;strong&gt;: create content models directly from the admin panel with dynamic fields, flexible content zones and relations between types. No code needed to model your data.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Auto-generated APIs&lt;&#x2F;strong&gt;: every content type automatically exposes REST and GraphQL endpoints. Filtering, sorting, pagination and relation population are built in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Customizable admin&lt;&#x2F;strong&gt;: the admin panel is extensible through a plugin system. You can modify the interface, add custom fields or integrate third-party services without forking the project.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-database support&lt;&#x2F;strong&gt;: PostgreSQL, MySQL, MariaDB and SQLite are all supported. Pick the right database for the context, from local dev with SQLite to production on PostgreSQL.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Granular access control&lt;&#x2F;strong&gt;: roles and permissions configurable per content type and per action. Multi-user management with differentiated access levels for editors, authors and admins.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native i18n&lt;&#x2F;strong&gt;: built-in internationalization to manage multilingual content without external plugins.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Content backend for a Jamstack site (Next.js, Nuxt, Gatsby, Astro)&lt;&#x2F;li&gt;
&lt;li&gt;Product catalog management for a headless e-commerce setup&lt;&#x2F;li&gt;
&lt;li&gt;Multi-author editorial portal with validation workflows&lt;&#x2F;li&gt;
&lt;li&gt;Content API for a mobile application (iOS&#x2F;Android)&lt;&#x2F;li&gt;
&lt;li&gt;Internal knowledge base or intranet with role-based access control&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Chatwoot</title>
        <published>2026-04-02T00:00:00+00:00</published>
        <updated>2026-04-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/chatwoot/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/chatwoot/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/chatwoot/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Chatwoot is an open-source customer support platform that centralizes all conversations — live chat, email, WhatsApp, Facebook, Instagram, Telegram, SMS — into a single inbox. It&#x27;s the self-hostable alternative to Intercom and Zendesk for teams that want full control over their data.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Native omnichannel&lt;&#x2F;strong&gt; : a unified inbox for every channel (chat, email, social media, messaging apps). No more juggling ten tabs to track customer conversations.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in AI agent (Captain)&lt;&#x2F;strong&gt; : automates responses to common questions and assists human agents in real time. No need to plug in a third-party service.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hosted or cloud&lt;&#x2F;strong&gt; : Docker&#x2F;Kubernetes deployment in minutes with full data ownership, or a managed cloud version if you&#x27;d rather skip the ops work.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Integration ecosystem&lt;&#x2F;strong&gt; : Slack, Shopify, Dialogflow, Linear, Google Translate — Chatwoot plugs into the tools your team already uses.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in Help Center&lt;&#x2F;strong&gt; : publish a knowledge base directly from the platform to cut down incoming ticket volume.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;SaaS startups looking for an Intercom alternative without the Intercom price tag&lt;&#x2F;li&gt;
&lt;li&gt;Support teams managing conversations across WhatsApp, email and web chat from a single dashboard&lt;&#x2F;li&gt;
&lt;li&gt;Companies with compliance requirements (GDPR, data sovereignty) that need self-hosting&lt;&#x2F;li&gt;
&lt;li&gt;E-commerce businesses integrating customer support directly into their Shopify stack&lt;&#x2F;li&gt;
&lt;li&gt;Engineering teams using the API and webhooks to automate ticket routing&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>AI and Code: What If the Real Gain Isn&#x27;t Where You Think?</title>
        <published>2026-03-31T00:00:00+00:00</published>
        <updated>2026-03-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/articles/mirage-ia/"/>
        <id>https://papyrus.z29k.fr/en/articles/mirage-ia/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/articles/mirage-ia/">&lt;p&gt;We were promised a productivity revolution. Augmented developers shipping twice as fast. Teams cut in half. Costs divided by three. Yet on the ground, the reality is more nuanced — and far more interesting than the ambient marketing narrative.&lt;&#x2F;p&gt;
&lt;p&gt;After several months of intensive use of LLMs and AI agents in professional settings, a paradox emerges: &lt;strong&gt;these tools don&#x27;t necessarily save time, but they radically transform the nature of work that actually matters.&lt;&#x2F;strong&gt; And that might be the real revolution.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-velocity-mirage&quot;&gt;The velocity mirage&lt;&#x2F;h2&gt;
&lt;p&gt;The number one selling point of AI applied to software development is speed. Copilot, Cursor, Claude Code, autonomous agents — they all promise to accelerate code production. And it&#x27;s true: generating code has never been faster.&lt;&#x2F;p&gt;
&lt;p&gt;But here&#x27;s the problem nobody wants to hear: &lt;strong&gt;producing code has never been the real bottleneck.&lt;&#x2F;strong&gt; Any experienced developer knows this. The actual time on a project isn&#x27;t consumed writing lines of code. It&#x27;s consumed in back-and-forth over poorly defined requirements, debugging a shaky architecture, in meetings to understand what the business actually needed.&lt;&#x2F;p&gt;
&lt;p&gt;Speeding up code writing without improving clarity about what we&#x27;re building is like putting a more powerful engine in a car with no GPS: you get nowhere, faster.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-real-value-shift&quot;&gt;The real value shift&lt;&#x2F;h2&gt;
&lt;p&gt;What we concretely observe in teams that get the most out of AI agents is a shift in the center of gravity of work. The time no longer spent writing code manually is spent — or rather &lt;em&gt;should&lt;&#x2F;em&gt; be spent — producing what has been sorely missing for years:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Product documentation.&lt;&#x2F;strong&gt; What exactly are we building? For whom? What problem are we solving? Functional specs, detailed user stories, acceptance criteria — everything that was too often rushed due to lack of time or interest.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Technical documentation.&lt;&#x2F;strong&gt; How does the system work? What are the architectural choices and why? What trade-offs were made? ADRs (Architecture Decision Records), flow diagrams, API contracts — everything we promise to do &quot;after the release&quot; and never do.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Architectural thinking.&lt;&#x2F;strong&gt; Before asking an agent to generate a service, you have to explain what you want. And to explain it, you have to understand it yourself. The agent becomes a merciless mirror: if the prompt is vague, the result is vague — or at best a generic version (hello, AI-generated landing pages). It forces you to formalize your thinking.&lt;&#x2F;p&gt;
&lt;p&gt;In short, we finally put our reasoning on paper to build this or that system. And that changes everything.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-documentation-paradox-costly-today-indispensable-tomorrow&quot;&gt;The documentation paradox: costly today, indispensable tomorrow&lt;&#x2F;h2&gt;
&lt;p&gt;It&#x27;s a pattern as old as the software industry. Documentation is systematically sacrificed because it&#x27;s perceived as unproductive at time T. Writing a spec, maintaining an ADR, documenting an API — none of this ships a feature. It doesn&#x27;t move the Jira board. It doesn&#x27;t show up in sprint review.&lt;&#x2F;p&gt;
&lt;p&gt;And yet, the absence of documentation is one of the most destructive factors for velocity in the medium and long term. How many times does a developer join a team only to discover a codebase with no README, architecture decisions recorded nowhere, and business rules spread across the memories of three people — two of whom have left the company?&lt;&#x2F;p&gt;
&lt;p&gt;The cost of this documentation debt is invisible day-to-day but colossal over time: extended onboarding, repeated decisions, misinterpretations, incomprehensible legacy code.&lt;&#x2F;p&gt;
&lt;p&gt;The arrival of AI agents makes this negligence even more costly. An agent without context produces generic code. An agent fed with rich documentation, clear specs, and a well-defined architecture produces relevant code. &lt;strong&gt;The quality of AI&#x27;s output is directly proportional to the quality of the human thinking that precedes it.&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;beyond-development-a-cross-functional-issue&quot;&gt;Beyond development: a cross-functional issue&lt;&#x2F;h2&gt;
&lt;p&gt;This phenomenon extends well beyond the technical perimeter. In every business function where LLMs are taking hold, the same pattern emerges.&lt;&#x2F;p&gt;
&lt;p&gt;In marketing, the teams achieving the best results aren&#x27;t those generating the most content, but those who took the time to formalize their positioning, tone, and personas. In project management, AI is useful when framing is solid, useless when scope is nebulous. In customer support, automated responses are relevant when the knowledge base is structured and up to date.&lt;&#x2F;p&gt;
&lt;p&gt;The common denominator is always the same: &lt;strong&gt;AI amplifies what already exists.&lt;&#x2F;strong&gt; If the thinking is rigorous, AI multiplies it. If it&#x27;s absent, AI produces nothing but noise.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;what-this-means-for-organizations&quot;&gt;What this means for organizations&lt;&#x2F;h2&gt;
&lt;p&gt;This reality has profound implications for how companies should approach AI adoption.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Invest in practices before tools.&lt;&#x2F;strong&gt; Deploying an AI agent without first working on documentation quality, functional framing rigor, and architectural clarity is building on sand. The tool will amplify gaps as much as strengths.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Revalue design roles.&lt;&#x2F;strong&gt; Profiles who know how to frame a problem, structure a solution, and document it clearly will become even more valuable. The &quot;silent expert&quot; who codes fast but explains nothing will be increasingly dispensable next to an agent that codes just as fast and never complains.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Rethink performance metrics.&lt;&#x2F;strong&gt; If we keep measuring productivity by tickets closed or lines of code produced, we&#x27;ll miss the point. Indicators must evolve to include documentation quality, spec coverage, architectural clarity — everything that makes a team&#x27;s work sustainable.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Accept that ROI will be qualitative before quantitative.&lt;&#x2F;strong&gt; The first benefit of AI agents isn&#x27;t a time saving measurable in person-days. It&#x27;s a quality improvement: fewer bugs from misunderstood requirements, less wild refactoring, less knowledge lost when people leave. These gains are real but harder to put in a business case.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;the-developer-s-new-job&quot;&gt;The developer&#x27;s new job&lt;&#x2F;h2&gt;
&lt;p&gt;For developers themselves, this shift is an opportunity disguised as a threat. Mechanical code writing — CRUD, boilerplate, plumbing — will be increasingly delegated. What remains is what has always held the most value but that we &quot;didn&#x27;t have time&quot; to do.&lt;&#x2F;p&gt;
&lt;p&gt;Designing systems. Making technical trade-offs. Understanding the business domain. Communicating complex choices in accessible ways. Producing documentation that allows other humans — or agents — to build on top of it.&lt;&#x2F;p&gt;
&lt;p&gt;Tomorrow&#x27;s developer isn&#x27;t the one who codes fastest. It&#x27;s the one who thinks most clearly, and knows how to put that thinking on paper.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;conclusion-paper-before-keyboard&quot;&gt;Conclusion: paper before keyboard&lt;&#x2F;h2&gt;
&lt;p&gt;The irony of the AI revolution is that it brings us back to fundamentals the software industry has neglected for decades under the guise of misunderstood agility and &quot;ship fast&quot; culture. Documenting, specifying, architecting — these activities long considered &quot;unproductive work&quot; are becoming the differentiating competency.&lt;&#x2F;p&gt;
&lt;p&gt;AI agents won&#x27;t replace developers. They&#x27;ll replace those who have nothing to say to an agent. And having something to say starts with knowing how to formulate it clearly, in writing.&lt;&#x2F;p&gt;
&lt;p&gt;The real question isn&#x27;t &quot;will AI save me time?&quot; but rather: &lt;strong&gt;&quot;Have I thought enough about what I&#x27;m building for an agent to help me effectively?&quot;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;If the answer is no, AI will only accelerate the chaos. If the answer is yes, it will be the best collaborator you&#x27;ve ever had.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>ALTCHA</title>
        <published>2026-03-31T00:00:00+00:00</published>
        <updated>2026-03-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/altcha/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/altcha/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/altcha/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;ALTCHA is an open-source CAPTCHA widget that replaces reCAPTCHA, hCaptcha or Turnstile with a proof-of-work mechanism. No visual puzzles, no cookies, no tracking: the browser solves a cryptographic challenge in the background while the user fills out the form. Shipped as a standard Web Component, it integrates anywhere.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ultra-lightweight&lt;&#x2F;strong&gt;: 30 kB gzipped vs 85 kB for Turnstile, 250 kB for hCaptcha and 300 kB for reCAPTCHA. Near-zero load time&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full compliance&lt;&#x2F;strong&gt;: GDPR, HIPAA, CCPA out of the box, no special configuration needed. No data ever leaves for third-party servers&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native accessibility&lt;&#x2F;strong&gt;: WCAG 2.2 AA and European Accessibility Act 2025 compliant. Audio challenges, RTL support and 50+ built-in languages&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-layered defense&lt;&#x2F;strong&gt;: Proof-of-work is the first line, but ALTCHA also offers Human Interaction Signature analysis, proxy detection, rate limiting and IP geo-fencing&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Wide integrations&lt;&#x2F;strong&gt;: Starters for React, Vue, Svelte, Angular, Flutter, React Native. Server libs in TypeScript, PHP, Go, Python, Java, Ruby, Elixir. CMS plugins for WordPress, Drupal, TYPO3&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Protect contact or signup forms without degrading user experience&lt;&#x2F;li&gt;
&lt;li&gt;Secure a public API while staying GDPR-compliant with zero extra legal overhead&lt;&#x2F;li&gt;
&lt;li&gt;Replace reCAPTCHA on European websites to meet EAA 2025 accessibility requirements&lt;&#x2F;li&gt;
&lt;li&gt;Deploy a self-hosted anti-spam solution on private infrastructure (Docker, Kubernetes, AWS ECS)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>BookStack</title>
        <published>2026-03-31T00:00:00+00:00</published>
        <updated>2026-03-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/bookstack/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/bookstack/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/bookstack/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;BookStack is an open-source, self-hosted documentation and wiki platform built on Laravel. It organizes content into a clear hierarchy — Shelves, Books, Chapters, Pages — making navigation intuitive even with hundreds of documents. The goal: let anyone document without needing technical skills.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Accessible interface&lt;&#x2F;strong&gt;: WYSIWYG editor by default (TinyMCE), Markdown editor available, and code editor (CodeMirror). No user training required.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Logical hierarchy&lt;&#x2F;strong&gt;: The Shelves → Books → Chapters → Pages model enforces structure without being overly rigid. Easy to navigate from day one.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full-text search&lt;&#x2F;strong&gt;: Built-in search engine that indexes all content, with advanced filters by tags, dates and authors.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Granular permissions&lt;&#x2F;strong&gt;: Multi-level role and permission system (platform, shelf, book, chapter, page). Perfect for teams with differentiated access needs.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible authentication&lt;&#x2F;strong&gt;: SAML2, OIDC, LDAP support and two-factor authentication. Plugs into an existing SSO setup painlessly.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-format export&lt;&#x2F;strong&gt;: Export pages as PDF, HTML and Markdown. Handy for archiving or sharing outside the platform.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in diagrams&lt;&#x2F;strong&gt;: Native diagrams.net integration to create diagrams directly within pages.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Internal knowledge base for technical or non-technical teams&lt;&#x2F;li&gt;
&lt;li&gt;Product documentation or API docs with access control&lt;&#x2F;li&gt;
&lt;li&gt;Self-hosted company wiki as an alternative to Confluence or Notion&lt;&#x2F;li&gt;
&lt;li&gt;Procedures manual and onboarding guide for new hires&lt;&#x2F;li&gt;
&lt;li&gt;Project documentation with versioning and change history&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Shinobi</title>
        <published>2026-03-31T00:00:00+00:00</published>
        <updated>2026-03-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/shinobi/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/shinobi/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/shinobi/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Shinobi is an open source Network Video Recorder (NVR) written in Node.js. It lets you manage, record and monitor video streams from IP and USB cameras through a web interface. Think of it as a self-hosted alternative to proprietary surveillance systems, built as a smart wrapper around FFmpeg.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fully web-based UI&lt;&#x2F;strong&gt; : No app to install — live stream viewing, recording playback and full configuration happen right in the browser from any device.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Massive camera support&lt;&#x2F;strong&gt; : Compatible with over 6000 IP and USB camera models via ONVIF, RTSP, MJPEG and other standard protocols.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Lightweight and efficient&lt;&#x2F;strong&gt; : Users report running 16 cameras at 1080p 15fps on a Pentium E5500 with just 3 GB of RAM. Runs on anything from a dedicated server to a Raspberry Pi.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Real-time via WebSocket&lt;&#x2F;strong&gt; : Events like motion detection and alerts are pushed to connected clients in real time — no polling needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in motion detection&lt;&#x2F;strong&gt; : Server-side video analysis with configurable zones, custom thresholds and automatic recording triggers.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-user management&lt;&#x2F;strong&gt; : Account system with granular permissions, ideal for shared installations or professional deployments.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Self-hosted home surveillance without relying on third-party cloud services&lt;&#x2F;li&gt;
&lt;li&gt;Construction site or retail space monitoring with continuous recording&lt;&#x2F;li&gt;
&lt;li&gt;Browser-accessible baby monitor viewable from any mobile device&lt;&#x2F;li&gt;
&lt;li&gt;Centralized multi-site security system running on a single server&lt;&#x2F;li&gt;
&lt;li&gt;Integration into existing home automation setups (Home Assistant compatible)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Tesseract.js</title>
        <published>2026-03-31T00:00:00+00:00</published>
        <updated>2026-03-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/tesseract-js/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/tesseract-js/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/tesseract-js/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Tesseract.js is a JavaScript port of the Tesseract OCR engine, compiled to WebAssembly. It extracts text from images directly in the browser or server-side with Node.js — no external dependencies, no API calls. Pass it an image, get text back. That&#x27;s it.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;100+ languages supported&lt;&#x2F;strong&gt;: From English to Chinese, Arabic to Russian — massive language coverage. Automatic orientation and script detection included.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Zero backend required&lt;&#x2F;strong&gt;: Everything runs in the browser thanks to WebAssembly. No server needed for OCR, data stays client-side.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Simple, progressive API&lt;&#x2F;strong&gt;: A single &lt;code&gt;recognize()&lt;&#x2F;code&gt; call handles basic cases. For advanced scenarios, a scheduler enables parallel processing of multiple images simultaneously.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Granular output&lt;&#x2F;strong&gt;: Beyond raw text, Tesseract.js returns bounding boxes at the paragraph, line, word, and character level. Useful for annotation or post-processing workflows.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Mature ecosystem&lt;&#x2F;strong&gt;: 38k GitHub stars, 36k+ dependents, stable v7.0 release. Actively maintained and widely adopted in production.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Extracting text from photos of documents (invoices, receipts, business cards)&lt;&#x2F;li&gt;
&lt;li&gt;Digitizing printed content directly in a web app without server uploads&lt;&#x2F;li&gt;
&lt;li&gt;Captioning or indexing text embedded in images and video frames&lt;&#x2F;li&gt;
&lt;li&gt;Accessibility: converting text-based images into screen-reader-friendly content&lt;&#x2F;li&gt;
&lt;li&gt;Automating data entry from scans or screenshots&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Cap</title>
        <published>2026-03-30T00:00:00+00:00</published>
        <updated>2026-03-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/cap/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/cap/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/cap/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Cap is an open-source alternative to traditional CAPTCHAs (reCAPTCHA, hCaptcha, Turnstile). Instead of asking users to click on traffic lights, Cap uses SHA-256 proof-of-work and JavaScript instrumentation to tell humans apart from bots. All in ~20kb, zero dependencies, and without sending any telemetry to third-party servers.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ultra-lightweight&lt;&#x2F;strong&gt;: ~20kb, zero dependencies — 250x smaller than hCaptcha. Loads in milliseconds&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Privacy-first&lt;&#x2F;strong&gt;: No data sent to external servers. You keep full control over your users&#x27; data&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt;: Standalone mode with Docker, analytics included. No third-party service dependency&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Proof-of-work&lt;&#x2F;strong&gt;: Users no longer waste time on visual puzzles — challenges are solved browser-side&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Fully customizable&lt;&#x2F;strong&gt;: Colors, size, position, icons — everything configurable via CSS variables&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Programmatic mode&lt;&#x2F;strong&gt;: Hidden widget with background challenge solving, perfect for APIs&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Protecting forms against bots without degrading UX&lt;&#x2F;li&gt;
&lt;li&gt;Securing APIs while remaining accessible to legitimate automation (M2M)&lt;&#x2F;li&gt;
&lt;li&gt;Replacing reCAPTCHA or hCaptcha with a privacy-respecting solution&lt;&#x2F;li&gt;
&lt;li&gt;Adding an anti-abuse layer to a site without depending on an external SaaS&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Check If Email Exists</title>
        <published>2026-03-30T00:00:00+00:00</published>
        <updated>2026-03-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/check-if-email-exists/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/check-if-email-exists/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/check-if-email-exists/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Check If Email Exists (aka Reacher) is a Rust library that verifies whether an email address is valid without ever sending an email. It chains syntax validation, DNS&#x2F;MX resolution, SMTP connection and deliverability checks to give you a reachability score (safe&#x2F;risky&#x2F;invalid&#x2F;unknown). Available as a Rust crate, a CLI tool, or a dockerized HTTP backend.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Full verification without sending&lt;&#x2F;strong&gt;: Syntax, DNS, MX, SMTP, catch-all, full mailboxes, disabled accounts - all without sending a single email&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Disposable email detection&lt;&#x2F;strong&gt;: Automatically identifies temporary addresses (Guerrilla Mail, Mailinator, etc.) and role accounts (info@, admin@)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Three deployment modes&lt;&#x2F;strong&gt;: Rust crate you can embed in your code, CLI for scripting, or HTTP backend via Docker for a REST API&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Written in Rust&lt;&#x2F;strong&gt;: Fast and reliable, handles volume without breaking a sweat&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No telemetry&lt;&#x2F;strong&gt;: Self-hosted, your verification data stays with you&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Cleaning an email list before a campaign to reduce bounce rates&lt;&#x2F;li&gt;
&lt;li&gt;Validating addresses at signup to prevent fake accounts&lt;&#x2F;li&gt;
&lt;li&gt;Integrating email verification into a CI&#x2F;CD pipeline or onboarding workflow&lt;&#x2F;li&gt;
&lt;li&gt;Detecting disposable addresses to improve lead quality&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Paperclip</title>
        <published>2026-03-30T00:00:00+00:00</published>
        <updated>2026-03-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/paperclip/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/paperclip/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/paperclip/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Paperclip is an orchestration platform that coordinates teams of autonomous AI agents to run business operations. You plug in your agents (Claude Code, Cursor, OpenClaw, etc.), define an org chart with roles and reporting lines, and Paperclip handles task delegation, cost tracking and governance. Think of it as the management layer sitting above your individual agents.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multi-provider orchestration&lt;&#x2F;strong&gt;: Coordinates agents from any provider (Claude, Cursor, Codex, bash scripts, HTTP endpoints) within a unified structure&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Agent org chart&lt;&#x2F;strong&gt;: Each agent gets a role, a job description and a reporting line — like a real team, but fully autonomous&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cost control&lt;&#x2F;strong&gt;: Per-agent monthly budgets with automatic throttling when limits approach — no more billing surprises&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in governance&lt;&#x2F;strong&gt;: Approval gates, versioned configs and rollback capabilities — you stay in control even when everything runs autonomously&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Goal alignment&lt;&#x2F;strong&gt;: Every task traces its ancestry back to the company mission — agents don&#x27;t go off the rails&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-company isolation&lt;&#x2F;strong&gt;: A single deployment can manage multiple companies with complete data separation&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Managing 20+ simultaneous agents without losing track (customer support, social media, reporting)&lt;&#x2F;li&gt;
&lt;li&gt;Coordinating specialized agents (dev, design, marketing) toward a shared product goal&lt;&#x2F;li&gt;
&lt;li&gt;Automating recurring business processes with agents that wake on schedule&lt;&#x2F;li&gt;
&lt;li&gt;Running a portfolio of autonomous businesses from a single dashboard&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Activepieces</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/activepieces/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/activepieces/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/activepieces/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Activepieces is an open-source workflow automation platform positioned as a self-hostable alternative to Zapier. You build automation scenarios through a visual no-code builder, connect your applications together and let them run. The whole thing comes with a TypeScript-based pieces framework that lets you extend the platform with your own integrations.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;280+ integrations&lt;&#x2F;strong&gt; : Google Sheets, OpenAI, Discord, Slack, RSS and many more — the majority contributed by the community&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Visual no-code builder&lt;&#x2F;strong&gt; : loops, branches, automatic retries, code execution with NPM and flow versioning — not just a linear chain of steps&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native AI&lt;&#x2F;strong&gt; : built-in AI pieces, agent support and MCP (Model Context Protocol) compatibility to connect flows to Claude Desktop or Cursor&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Human-in-the-loop&lt;&#x2F;strong&gt; : workflows with approvals, delays and input interfaces (chat and forms) for processes that require human validation&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible framework&lt;&#x2F;strong&gt; : create your own pieces in TypeScript with type safety and hot reloading for local development&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt; : deploy on your own infrastructure, air-gapped network compatible, customizable branding for enterprise use&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Automatic data synchronization between CRM, support tools and spreadsheets&lt;&#x2F;li&gt;
&lt;li&gt;Approval workflows with human validation before executing critical actions&lt;&#x2F;li&gt;
&lt;li&gt;Automation of repetitive tasks (sending emails, updating statuses, notifications)&lt;&#x2F;li&gt;
&lt;li&gt;Integrating AI agents into business processes via OpenAI pieces and MCP support&lt;&#x2F;li&gt;
&lt;li&gt;Replacing a Zapier&#x2F;Make subscription with a controlled self-hosted solution&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Cal.com</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/calcom/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/calcom/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/calcom/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Cal.com is an open-source scheduling platform positioned as the successor to Calendly. You create booking pages, connect your calendars and your guests pick an available slot. The whole thing is self-hostable, white-label by default and driven by an API to integrate into any product.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Native white-label&lt;&#x2F;strong&gt; : designed from the ground up to be customized and deployed on your own domain, with no Cal.com branding visible to your users&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API-first&lt;&#x2F;strong&gt; : tRPC architecture that lets you integrate booking flows in headless mode into your existing application&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt; : deploy via Docker, Railway, Render or Vercel — you keep full control of your scheduling data&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Calendar integrations&lt;&#x2F;strong&gt; : native sync with Google Calendar, Outlook, Apple Calendar and other providers&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible event types&lt;&#x2F;strong&gt; : variable durations, collective events, round-robin across team members and recurring bookings&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Workflows and automation&lt;&#x2F;strong&gt; : customizable reminders, confirmations and notifications via email and SMS&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Public booking page for freelancers, consultants or lawyers&lt;&#x2F;li&gt;
&lt;li&gt;White-label scheduling system embedded in a SaaS application&lt;&#x2F;li&gt;
&lt;li&gt;Sales call scheduling with round-robin distribution across team members&lt;&#x2F;li&gt;
&lt;li&gt;Slot booking for classes, seminars or coaching sessions with capacity management&lt;&#x2F;li&gt;
&lt;li&gt;Replacing a Calendly subscription with a controlled self-hosted solution&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>changedetection.io</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/changedetection/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/changedetection/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/changedetection/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;changedetection.io is a self-hosted tool that monitors web pages and alerts you as soon as a change is detected. You add a URL, define what to watch (entire page, CSS selector, XPath, JSON API) and the tool notifies you via Discord, Slack, Telegram, email or 30+ other channels. Web content monitoring, simple and effective.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Visual selector&lt;&#x2F;strong&gt; : click on the page area to monitor directly in the interface, no need to know CSS or XPath&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Detailed diffs&lt;&#x2F;strong&gt; : change visualization word by word, line by line or character by character — you see exactly what changed&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;JavaScript support&lt;&#x2F;strong&gt; : dynamic client-rendered pages are supported via Playwright or WebDriver, not just static HTML&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Price and restock detection&lt;&#x2F;strong&gt; : dedicated mode to monitor price drops and restocks with configurable thresholds&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Browser steps&lt;&#x2F;strong&gt; : automate navigation steps (login, click, form filling) before content capture&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;30+ notification channels&lt;&#x2F;strong&gt; : via Apprise, you can hook up virtually any alerting service&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;REST API&lt;&#x2F;strong&gt; : OpenAPI specification to integrate monitoring into your own workflows&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Price monitoring on e-commerce sites with alerts when price drops below a threshold&lt;&#x2F;li&gt;
&lt;li&gt;Regulatory and legal monitoring on government pages that change silently&lt;&#x2F;li&gt;
&lt;li&gt;Restock alerts for out-of-stock products&lt;&#x2F;li&gt;
&lt;li&gt;JSON API monitoring to detect data or structure changes&lt;&#x2F;li&gt;
&lt;li&gt;Job board monitoring to get notified of new postings&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Documenso</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/documenso/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/documenso/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/documenso/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Documenso is an open-source document signing platform positioned as an alternative to DocuSign. You send a PDF document, signers receive a link, sign online and everyone gets the signed document back. The code is open, auditable, and you can self-host the entire thing on your own infrastructure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open source and auditable&lt;&#x2F;strong&gt; : the code is public under AGPL-3.0, you can verify exactly how your signatures and documents are processed&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt; : deploy via Docker, Railway, Render or Koyeb — your documents don&#x27;t go through third-party infrastructure if you don&#x27;t want them to&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modern stack&lt;&#x2F;strong&gt; : React Router, Prisma, Tailwind CSS, shadcn&#x2F;ui and tRPC for type-safe APIs — a pleasant project to extend and maintain&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native PDF signing&lt;&#x2F;strong&gt; : dedicated @documenso&#x2F;pdf-sign package for digital PDF signatures, not just an image pasted on a document&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API-first&lt;&#x2F;strong&gt; : tRPC architecture that lets you integrate document signing into your own application workflows&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Flexible deployment&lt;&#x2F;strong&gt; : one-click deploy on multiple cloud platforms or manual install for custom environments&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Signing commercial contracts without relying on expensive proprietary SaaS&lt;&#x2F;li&gt;
&lt;li&gt;Internal document validation workflows with transparent audit trail&lt;&#x2F;li&gt;
&lt;li&gt;Integrating electronic signatures into a business application via the API&lt;&#x2F;li&gt;
&lt;li&gt;Companies with data sovereignty constraints that cannot use DocuSign&lt;&#x2F;li&gt;
&lt;li&gt;Legal teams that need full traceability over the signing process&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Medusa</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/medusa/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/medusa/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/medusa/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Medusa is an open-source e-commerce platform built in TypeScript that provides the foundational building blocks of online commerce. Instead of forcing you into a rigid mold, it gives you a customization framework and reusable commerce modules that you assemble to fit your needs. The architecture is headless: the backend handles business logic, and you plug in whatever frontend you want.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Modular architecture&lt;&#x2F;strong&gt; : every feature (products, orders, inventory, promotions) is an independent module available on npm — you pick what you need&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in customization framework&lt;&#x2F;strong&gt; : no need to fork the core to adapt business logic, the framework lets you extend and override cleanly&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Headless by design&lt;&#x2F;strong&gt; : API-first, you connect any frontend (React, Next.js, mobile) without being tied to a server-side rendering layer&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multi-channel and multi-region&lt;&#x2F;strong&gt; : native support for multiple sales channels, currencies, languages and warehouses from a single instance&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;TypeScript ecosystem&lt;&#x2F;strong&gt; : type-safe end-to-end, polished DX with autocompletion and compile-time error detection&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;MIT License&lt;&#x2F;strong&gt; : no gotcha, no features locked behind a commercial license&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;B2B or DTC store with custom business rules (per-customer pricing, segmented catalogs)&lt;&#x2F;li&gt;
&lt;li&gt;Multi-vendor marketplace with distributed inventory management&lt;&#x2F;li&gt;
&lt;li&gt;Multi-regional sales platform with local currencies, taxes and warehouses&lt;&#x2F;li&gt;
&lt;li&gt;Migration from Shopify or WooCommerce to a controlled headless solution&lt;&#x2F;li&gt;
&lt;li&gt;Point of Sale (PoS) system connected to the same backend as the online store&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Novu</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/novu/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/novu/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/novu/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Novu is an open-source notification infrastructure that centralizes message delivery across all channels: email, SMS, push, chat and in-app. Instead of wiring each provider manually (SendGrid, Twilio, Firebase...), you go through a single API and a workflow engine that orchestrates delivery. The project also includes an embeddable inbox component you can drop right into your frontend.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unified multi-channel API&lt;&#x2F;strong&gt; : a single entry point for email, SMS, push, chat and in-app notifications — switch providers without touching your business code&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Embeddable inbox&lt;&#x2F;strong&gt; : a ready-to-integrate React component with real-time support, user preferences and customizable theming&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Workflow engine&lt;&#x2F;strong&gt; : define complex notification scenarios (conditions, delays, cross-channel fallback) without reinventing the wheel&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Digest Engine&lt;&#x2F;strong&gt; : aggregates multiple notifications into a single message to avoid spamming your users&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;No-code editor&lt;&#x2F;strong&gt; : product teams can modify email templates using a block editor without touching code&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;User preferences&lt;&#x2F;strong&gt; : built-in component that lets each user choose their channels and notification frequency&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Multi-channel transactional notifications (order confirmation, password reset, alerts)&lt;&#x2F;li&gt;
&lt;li&gt;In-app notification center with real-time inbox in a SaaS product&lt;&#x2F;li&gt;
&lt;li&gt;Complex communication workflows with cross-channel escalation (email → SMS → push if unread)&lt;&#x2F;li&gt;
&lt;li&gt;Daily or weekly digests grouping multiple events into a single summary&lt;&#x2F;li&gt;
&lt;li&gt;Centralized per-user notification preference management&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OneUptime</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/oneuptime/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/oneuptime/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/oneuptime/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;OneUptime is an open-source observability platform that bundles everything an ops team needs into a single tool: uptime monitoring, status pages, incident management, on-call scheduling, log collection and application performance monitoring (APM). The goal is to replace the usual stack of Pingdom + StatusPage + PagerDuty + Datadog + Sentry with a unified, self-hostable solution.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Truly all-in-one&lt;&#x2F;strong&gt; : monitoring, status pages, incidents, on-call, logs and APM in the same interface — no more juggling between six different tools&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt; : deploy on your own infrastructure and keep full control of your observability data&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Custom status pages&lt;&#x2F;strong&gt; : branded status pages to communicate with your users during incidents, no external tool needed&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;On-call and escalations&lt;&#x2F;strong&gt; : on-call scheduling with escalation policies, multi-channel alerts (email, SMS, Slack) and automatic rotation&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI Copilot&lt;&#x2F;strong&gt; : 24&#x2F;7 anomaly detection, root cause analysis and automated fix suggestions&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;5000+ integrations&lt;&#x2F;strong&gt; : workflow engine to connect OneUptime to your existing ecosystem without custom development&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Website and API uptime monitoring from multiple geographic locations with real-time alerting&lt;&#x2F;li&gt;
&lt;li&gt;Public status page to communicate service health to customers and stakeholders&lt;&#x2F;li&gt;
&lt;li&gt;Collaborative incident management with timeline, assignment and post-mortems&lt;&#x2F;li&gt;
&lt;li&gt;Centralized application log collection with built-in search and visualization&lt;&#x2F;li&gt;
&lt;li&gt;Replacing a multi-tool observability stack with a single self-hosted solution&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Playwright</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/playwright/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/playwright/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/playwright/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Playwright is a web testing and automation framework developed by Microsoft that lets you drive Chromium, Firefox and WebKit with a single API. You write your tests once, run them across all three rendering engines. The framework automatically handles element waiting, test isolation and provides built-in debugging tools.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One API, three engines&lt;&#x2F;strong&gt; : Chromium, Firefox and WebKit natively supported — you cover Chrome, Edge, Safari and Firefox with the same test code&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Smart auto-wait&lt;&#x2F;strong&gt; : Playwright automatically waits for elements to be actionable before interacting, no more manual &lt;code&gt;sleep&lt;&#x2F;code&gt; or &lt;code&gt;waitFor&lt;&#x2F;code&gt; scattered everywhere&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Context isolation&lt;&#x2F;strong&gt; : each test runs in an isolated browser context created in milliseconds, no pollution between tests and no restart overhead&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Trace Viewer&lt;&#x2F;strong&gt; : visual tool to replay every action of a failed test with screenshots, DOM snapshots and network logs — debugging becomes tangible&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Codegen&lt;&#x2F;strong&gt; : record your browser interactions and generate the corresponding test code, ideal for quick bootstrapping&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Web-first assertions&lt;&#x2F;strong&gt; : assertions automatically retry until satisfied, eliminating the majority of flaky tests&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Cross-browser end-to-end tests for web applications (React, Vue, Angular, SSR)&lt;&#x2F;li&gt;
&lt;li&gt;Browser workflow automation (scraping, PDF generation, screenshots)&lt;&#x2F;li&gt;
&lt;li&gt;Visual regression testing with screenshot comparison&lt;&#x2F;li&gt;
&lt;li&gt;Network request interception and mocking for edge-case scenario testing&lt;&#x2F;li&gt;
&lt;li&gt;Multi-tab or multi-user application testing with parallel contexts&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>RustDesk</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/rustdesk/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/rustdesk/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/rustdesk/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;RustDesk is an open-source remote desktop solution that works out of the box with zero configuration. The idea is straightforward: take full control of your remote connections without relying on third-party cloud services like TeamViewer or AnyDesk. You host your own relay server, you keep your data on your own infrastructure.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Self-hosting by design&lt;&#x2F;strong&gt; : deploy your own signaling and relay server — your traffic never goes through third-party infrastructure&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Zero configuration&lt;&#x2F;strong&gt; : works immediately with RustDesk&#x27;s public servers, and you can switch to your own infra whenever you want&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full cross-platform&lt;&#x2F;strong&gt; : Windows, macOS, Linux, Android, iOS and even Web — everyone can connect&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;P2P connections&lt;&#x2F;strong&gt; : when possible, connections are direct between machines without going through the relay&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;File transfer and TCP tunneling&lt;&#x2F;strong&gt; : not just remote desktop — it&#x27;s a full network tool for transferring files or creating tunnels&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Written in Rust&lt;&#x2F;strong&gt; : fast, safe and lightweight — the client uses fewer resources compared to proprietary alternatives&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Remote tech support without installing proprietary software or creating accounts&lt;&#x2F;li&gt;
&lt;li&gt;Server and workstation administration in corporate environments with an internal relay server&lt;&#x2F;li&gt;
&lt;li&gt;Accessing your personal PC from anywhere without exposing RDP&#x2F;VNC ports to the internet&lt;&#x2F;li&gt;
&lt;li&gt;Deployment in sensitive environments where data must not transit through third-party servers&lt;&#x2F;li&gt;
&lt;li&gt;Self-hosted alternative for IT teams who want full control over their connection chain&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Twenty</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/twenty/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/twenty/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/twenty/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Twenty is an open-source CRM designed as a modern alternative to Salesforce. The interface draws inspiration from Notion, Airtable and Linear to deliver a smooth experience for sales teams. You self-host your customer data, customize your data model and avoid any vendor lock-in.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Modern UX&lt;&#x2F;strong&gt; : table views, Kanban, filters, sorting and grouping — an interface that looks like what teams already use daily, not a 2000s-era software&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible data model&lt;&#x2F;strong&gt; : create your own custom objects and fields without being constrained by a rigid schema imposed by the vendor&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Workflows and automation&lt;&#x2F;strong&gt; : configurable triggers and actions to automate repetitive processes (assignment, notifications, status updates)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Role-based access control&lt;&#x2F;strong&gt; : granular permissions with custom role creation, suitable for teams of all sizes&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native integrations&lt;&#x2F;strong&gt; : email, calendar and file management built directly into the CRM&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt; : your customer data stays on your infrastructure, with a simple Docker deployment&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Sales pipeline management for teams without paying Salesforce or HubSpot licenses&lt;&#x2F;li&gt;
&lt;li&gt;Internal CRM for startups and SMBs who want to keep control of their customer data&lt;&#x2F;li&gt;
&lt;li&gt;Lead and opportunity tracking with Kanban views and custom filters per sales rep&lt;&#x2F;li&gt;
&lt;li&gt;Sales process automation (follow-ups, status changes, automatic assignment)&lt;&#x2F;li&gt;
&lt;li&gt;Self-hosted alternative for companies with data residency compliance requirements&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Umami</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/umami/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/umami/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/umami/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Umami is an open-source web analytics platform designed as a privacy-friendly alternative to Google Analytics. You drop a lightweight script on your site, get your traffic metrics in a clean dashboard and never set a single cookie on your visitors. The whole thing is self-hostable on your own infrastructure with PostgreSQL.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cookie-free&lt;&#x2F;strong&gt; : no cookies, no consent required — you&#x27;re GDPR compliant by default without intrusive banners&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Clean dashboard&lt;&#x2F;strong&gt; : pageviews, visitors, bounce rate, visit duration, traffic sources and popular pages — all the essentials without noise&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Self-hostable&lt;&#x2F;strong&gt; : simple Docker deployment with PostgreSQL, your analytics data stays on your infrastructure&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Lightweight&lt;&#x2F;strong&gt; : the tracking script weighs a few KB, no measurable impact on your site&#x27;s performance&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Custom events&lt;&#x2F;strong&gt; : track clicks, form submissions, signups and any business action with just a few lines of code&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Advanced features&lt;&#x2F;strong&gt; : user journeys, funnels, campaign attribution, audience segmentation and revenue tracking&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Website or blog analytics without depending on Google Analytics or setting cookies&lt;&#x2F;li&gt;
&lt;li&gt;Product metrics tracking for a SaaS with custom events and funnels&lt;&#x2F;li&gt;
&lt;li&gt;GDPR-compliant analytics for European companies without complex configuration&lt;&#x2F;li&gt;
&lt;li&gt;Centralized dashboard to monitor multiple sites from a single instance&lt;&#x2F;li&gt;
&lt;li&gt;Free self-hosted alternative to paid analytics solutions (Mixpanel, Amplitude)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Uptime Kuma</title>
        <published>2026-03-28T00:00:00+00:00</published>
        <updated>2026-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/uptime-kuma/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/uptime-kuma/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/uptime-kuma/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Uptime Kuma is a self-hosted uptime monitoring tool with a modern, reactive web interface. You add your services, it checks them every 20 seconds and alerts you as soon as something goes down. No cloud dependency, no subscription — a single Docker command and you&#x27;re up and running.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Polished interface&lt;&#x2F;strong&gt; : reactive Vue.js UI with latency charts, SSL certificates and uptime history — far from austere command-line monitoring&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multiple protocols&lt;&#x2F;strong&gt; : HTTP(s), TCP, ping, DNS, WebSocket, Docker, Steam, JSON queries and keyword monitoring — you cover virtually every case&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;90+ notification channels&lt;&#x2F;strong&gt; : Telegram, Discord, Slack, email, Pushover, Gotify, webhooks and many more — route alerts wherever you want&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Public status pages&lt;&#x2F;strong&gt; : branded pages with domain mapping to communicate service health to your users&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Dead simple deployment&lt;&#x2F;strong&gt; : a single Docker command and the tool is running, no external database or complex configuration needed&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Short intervals&lt;&#x2F;strong&gt; : checks every 20 seconds by default, you detect outages quickly&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Uptime monitoring for websites, APIs and internal services for a homelab or small team&lt;&#x2F;li&gt;
&lt;li&gt;Public status pages to inform customers about service health in real time&lt;&#x2F;li&gt;
&lt;li&gt;SSL certificate monitoring with alerts before expiration&lt;&#x2F;li&gt;
&lt;li&gt;Docker container monitoring directly from the interface&lt;&#x2F;li&gt;
&lt;li&gt;Free self-hosted alternative to paid monitoring services (Pingdom, Better Uptime)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Usertour</title>
        <published>2026-03-27T00:00:00+00:00</published>
        <updated>2026-03-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/usertour/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/usertour/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/usertour/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Usertour is an open-source platform for building guided product tours, onboarding checklists and in-app surveys. Designed as a self-hostable alternative to Userflow and Appcues, it integrates with any frontend framework through a lightweight JavaScript SDK.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open-source and self-hostable&lt;&#x2F;strong&gt;: Deployable via Docker, keeping data under your control. The community edition is MIT-licensed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Framework-agnostic&lt;&#x2F;strong&gt;: The JavaScript SDK works with React, Vue, Angular or any web app — no framework lock-in.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Visual builder&lt;&#x2F;strong&gt;: Create tours and checklists through a no-code editor without touching application code.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Advanced user targeting&lt;&#x2F;strong&gt;: Segmentation by custom attributes and events, multi-environment management (production, staging) and content versioning.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Analytics and tracking&lt;&#x2F;strong&gt;: Performance metrics, drop-off identification and completion tracking to iterate on onboarding flows.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Guide new users through key SaaS features during their first session&lt;&#x2F;li&gt;
&lt;li&gt;Deploy activation checklists to boost trial-to-paid conversion rates&lt;&#x2F;li&gt;
&lt;li&gt;Collect user feedback with contextual in-app surveys without leaving the application&lt;&#x2F;li&gt;
&lt;li&gt;Announce new features with targeted tooltips for specific user segments&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Dub</title>
        <published>2026-03-26T00:00:00+00:00</published>
        <updated>2026-03-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/dub/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/dub/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/dub/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Dub is an open source link attribution platform built for marketing teams who want to go beyond vanity metrics. It combines URL shortening, conversion analytics and affiliate program management in a single interface. Used by companies like Twilio, Vercel and Perplexity, it processes over 100 million clicks per month.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Feature-rich short links&lt;&#x2F;strong&gt;: custom domains, QR codes, device and geo-targeting, A&#x2F;B testing, deep links and cloaking — all configurable per link.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;End-to-end attribution&lt;&#x2F;strong&gt;: track the full journey from first click to final conversion with real-time analytics. No more dashboards that just count clicks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in affiliate programs&lt;&#x2F;strong&gt;: partner management, commission structures, embedded referral dashboards and global payouts — no third-party tools needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;API-first&lt;&#x2F;strong&gt;: SDKs available in TypeScript, Python, Go, PHP and Ruby. Webhooks, deferred deep linking and link generation at scale for programmatic use cases.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Open source and self-hostable&lt;&#x2F;strong&gt;: code is on GitHub under AGPL-3.0 with 23k+ stars. Self-host it or use the managed SaaS version.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Measure real marketing campaign impact with conversion tracking, not just click counts&lt;&#x2F;li&gt;
&lt;li&gt;Launch an affiliate program without stacking third-party tools&lt;&#x2F;li&gt;
&lt;li&gt;Generate branded short links at scale via the API for a platform or product&lt;&#x2F;li&gt;
&lt;li&gt;Replace Bitly with an open source solution featuring advanced analytics and custom domains&lt;&#x2F;li&gt;
&lt;li&gt;Track cross-channel attribution (email, social, paid) in a single dashboard&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Keycloak</title>
        <published>2026-03-26T00:00:00+00:00</published>
        <updated>2026-03-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/keycloak/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/keycloak/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/keycloak/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Keycloak is an open source Identity and Access Management (IAM) platform that lets you add authentication and authorization to your applications without reinventing the wheel. It handles Single Sign-On, identity federation, strong authentication and fine-grained authorization — all managed through a centralized admin console. A CNCF incubation project, maintained by Red Hat and a large community.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Turnkey Single Sign-On&lt;&#x2F;strong&gt;: users log in once and access all connected applications. Supports OpenID Connect, OAuth 2.0 and SAML 2.0 natively.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Identity federation&lt;&#x2F;strong&gt;: built-in LDAP and Active Directory connectors, plus the ability to plug in custom providers. Social login (Google, GitHub, etc.) in just a few clicks.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Fine-grained authorization&lt;&#x2F;strong&gt;: goes well beyond simple RBAC. Authorization policies based on attributes, roles, context — all configurable from the admin console.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full-featured admin console&lt;&#x2F;strong&gt;: centralized management of realms, users, clients, roles and sessions. Users also get their own console to manage their profile and MFA.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Extensible and customizable&lt;&#x2F;strong&gt;: custom themes, SPIs to extend behavior, clustering support for high availability. Scales from a side project to enterprise infrastructure.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Centralize authentication across multiple microservices behind a single Identity Provider&lt;&#x2F;li&gt;
&lt;li&gt;Replace a homegrown auth system with a battle-tested, standards-compliant solution&lt;&#x2F;li&gt;
&lt;li&gt;Federate users from an existing Active Directory into modern web applications&lt;&#x2F;li&gt;
&lt;li&gt;Add social login and MFA to an application without writing a single line of auth code&lt;&#x2F;li&gt;
&lt;li&gt;Secure APIs with OAuth 2.0 tokens and centralized authorization policies&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Pencil</title>
        <published>2026-03-26T00:00:00+00:00</published>
        <updated>2026-03-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/pencil/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/pencil/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/pencil/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Pencil is a vector design tool available as an IDE extension (VS Code, Cursor) or a standalone desktop app (macOS, Linux, Windows). It brings an infinite design canvas with AI-driven pixel-perfect HTML&#x2F;CSS&#x2F;React component generation. Design files use the open &lt;code&gt;.pen&lt;&#x2F;code&gt; format, live in your repo, and version with Git just like any other source file.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Design inside your IDE&lt;&#x2F;strong&gt;: No more juggling between Figma and your editor. The canvas is one tab away from your code, zero friction.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Bidirectional MCP&lt;&#x2F;strong&gt;: Pencil runs a local MCP server with full read AND write access. You can plug in other MCPs, databases, APIs, or external agents directly into the canvas.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Open file format&lt;&#x2F;strong&gt;: &lt;code&gt;.pen&lt;&#x2F;code&gt; files are readable, debuggable, and extensible. No black box, no vendor lock-in. Everything lives in the repo.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI multiplayer&lt;&#x2F;strong&gt;: Spin up multiple agents in parallel to generate screens or explore design directions simultaneously.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Figma import&lt;&#x2F;strong&gt;: Copy-paste designs straight from Figma. Vectors, text, and styles come over intact.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in brand kits&lt;&#x2F;strong&gt;: Curated component-based design kits ready to use, or plug in your own design system from the codebase.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Prototype interfaces directly in Cursor or VS Code without leaving your development context&lt;&#x2F;li&gt;
&lt;li&gt;Generate production-ready React&#x2F;HTML&#x2F;CSS code from vector mockups&lt;&#x2F;li&gt;
&lt;li&gt;Version design files with Git alongside your source code&lt;&#x2F;li&gt;
&lt;li&gt;Connect external data sources (APIs, databases) to the canvas via MCP for dynamic mockups&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Zola</title>
        <published>2026-03-24T00:00:00+00:00</published>
        <updated>2026-03-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/zola/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/zola/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/zola/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Zola is a static site generator written in Rust that ships as a single self-contained binary. No runtime, no &lt;code&gt;node_modules&lt;&#x2F;code&gt;, no gem dependencies - one executable is all you need. Run &lt;code&gt;zola build&lt;&#x2F;code&gt; and you get a &lt;code&gt;public&#x2F;&lt;&#x2F;code&gt; folder ready to deploy.&lt;&#x2F;p&gt;
&lt;p&gt;The Tera template engine (Jinja2&#x2F;Twig-like syntax) supports template inheritance, macros, and filters. Content is written in Markdown with shortcodes for extended functionality. On the asset side, the Sass&#x2F;SCSS compiler is built-in, syntax highlighting runs through syntect, and image processing (resize, convert) happens without external tools. Zola also packs a client-side full-text search engine, customizable taxonomies, pagination, automatic table of contents generation, and internal&#x2F;external link validation.&lt;&#x2F;p&gt;
&lt;p&gt;The project has over 16,800 stars on GitHub, 475 contributors, and the latest stable release is v0.22.1.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;30-second install&lt;&#x2F;strong&gt; : A &lt;code&gt;brew install zola&lt;&#x2F;code&gt;, &lt;code&gt;cargo install zola&lt;&#x2F;code&gt;, or a direct binary download. No system dependencies. You&#x27;re up and running immediately.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Blazing fast builds&lt;&#x2F;strong&gt; : A site with hundreds of pages generates in under a second. The Sass compiler, syntax highlighter, and image processor all run in the same Rust process - no subprocesses, no waiting.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Batteries included&lt;&#x2F;strong&gt; : Built-in search with no third-party service, Sass compilation, shortcodes, pagination, custom taxonomies, header anchors, automatic table of contents, image resizing, link checking. Most SSGs need plugins for this - Zola does it out of the box.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Native i18n&lt;&#x2F;strong&gt; : Declare your languages in &lt;code&gt;config.toml&lt;&#x2F;code&gt;, suffix your content files (&lt;code&gt;.fr.md&lt;&#x2F;code&gt;, &lt;code&gt;.en.md&lt;&#x2F;code&gt;), and multilingual routing just works. No plugin, no workaround.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Readable templates&lt;&#x2F;strong&gt; : Tera uses the Jinja2 syntax that many devs already know. Inheritance, blocks, macros, filters - the learning curve is minimal if you come from Django, Twig, or Nunjucks.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Instant live reload&lt;&#x2F;strong&gt; : &lt;code&gt;zola serve&lt;&#x2F;code&gt; starts a dev server that reloads the browser on every save. The feedback loop between writing and rendering is virtually zero.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Technical blogs and developer personal sites - deploy in one push to Netlify, Vercel, or Cloudflare Pages&lt;&#x2F;li&gt;
&lt;li&gt;Open source project documentation (Zola&#x27;s own website is built with Zola)&lt;&#x2F;li&gt;
&lt;li&gt;Multilingual websites with structured content and custom taxonomies&lt;&#x2F;li&gt;
&lt;li&gt;Internal knowledge bases with full-text search and no backend to maintain&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>BillionMail</title>
        <published>2026-03-20T00:00:00+00:00</published>
        <updated>2026-03-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/billionmail/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/billionmail/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/billionmail/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;BillionMail is an open-source mail platform that bundles a full email server with marketing campaign tools in a single Docker deployment. Under the hood: Postfix handles SMTP, Dovecot takes care of IMAP, Rspamd filters spam, and RoundCube provides webmail. The whole thing is written in Go (92% of the codebase), stores data in a SQL database, and is managed through a web admin interface.&lt;&#x2F;p&gt;
&lt;p&gt;Installation runs through &lt;code&gt;docker compose up -d&lt;&#x2F;code&gt; or a simple &lt;code&gt;bash install.sh&lt;&#x2F;code&gt;. In under 10 minutes you get a working mail server with campaign management, list handling, and analytics. The project is AGPL-3.0 licensed, has over 13,700 GitHub stars, and is currently at version 4.9.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;No per-email metering.&lt;&#x2F;strong&gt; BillionMail has zero built-in sending limits. You pay for your server, you send what you want. No billing tiers, no end-of-month surprises. For high-volume senders, this fundamentally changes the cost equation compared to Mailchimp or SendGrid.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Guided DNS and deliverability.&lt;&#x2F;strong&gt; The admin interface walks you through SPF, DKIM, and DMARC configuration step by step. SSL certificates are provisioned automatically. The dashboard displays sent volume, deliverability rate, open rate, and click-through rate in real time. When an email bounces, you know exactly why.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Native email campaigns.&lt;&#x2F;strong&gt; Reusable template editor, list segmentation, variable personalization, spintax support, scheduled sending. This is a full campaign tool baked into the server, not a plugin bolted on after the fact.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Webmail out of the box.&lt;&#x2F;strong&gt; RoundCube is accessible at &lt;code&gt;&#x2F;roundcube&#x2F;&lt;&#x2F;code&gt; from the moment you deploy. Users can read and send mail from the browser with zero client setup.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Three deployment paths.&lt;&#x2F;strong&gt; Docker Compose, bash script, or one-click install via aaPanel. A CLI tool (&lt;code&gt;bm&lt;&#x2F;code&gt;) handles credential management, DNS record display, and system updates.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Send high-volume newsletters without SaaS dependency or per-email pricing&lt;&#x2F;li&gt;
&lt;li&gt;Host team or organization email on your own domain with built-in webmail&lt;&#x2F;li&gt;
&lt;li&gt;Handle transactional emails (signup confirmation, password reset) on your own infrastructure&lt;&#x2F;li&gt;
&lt;li&gt;Run outreach campaigns with deliverability tracking and engagement metrics&lt;&#x2F;li&gt;
&lt;li&gt;Replace a hand-wired mail stack (Postfix + Dovecot + custom scripts) with an integrated solution&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Crawlee for Python</title>
        <published>2026-03-20T00:00:00+00:00</published>
        <updated>2026-03-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/crawlee-python/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/crawlee-python/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/crawlee-python/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Crawlee is a Python framework for building reliable, high-performance web crawlers. It unifies classic HTTP scraping (with BeautifulSoup or Parsel) and headless browser automation (via Playwright) behind a single API. Its main selling point: making your crawlers behave like real human users, with default configurations that bypass modern anti-bot protections.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unified interface&lt;&#x2F;strong&gt;: Switch from simple HTTP scraping to Playwright browser automation without rewriting your code. Same API, same routing logic.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Anti-detection by default&lt;&#x2F;strong&gt;: Proxy rotation, session management, realistic browser fingerprints - everything is configured out-of-the-box to avoid getting blocked.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Smart parallelization&lt;&#x2F;strong&gt;: The framework automatically adjusts concurrency based on available system resources. No manual tuning needed.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Built-in resilience&lt;&#x2F;strong&gt;: Automatic retries, state persistence, crash recovery. An interrupted crawl resumes right where it left off.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI-ready&lt;&#x2F;strong&gt;: Data extraction optimized for feeding LLMs and RAG pipelines, with structured format exports.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Native asyncio&lt;&#x2F;strong&gt;: Full async architecture, complete type hints, integrates as a simple Python script.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Large-scale data extraction for AI model training or RAG systems&lt;&#x2F;li&gt;
&lt;li&gt;Scraping JavaScript-heavy sites that require a real browser&lt;&#x2F;li&gt;
&lt;li&gt;Automated monitoring of prices, stock levels, or content on e-commerce sites&lt;&#x2F;li&gt;
&lt;li&gt;Building structured datasets with automatic pagination and rate limiting management&lt;&#x2F;li&gt;
&lt;li&gt;Migrating data from websites into internal databases&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Hurl</title>
        <published>2026-03-06T00:00:00+00:00</published>
        <updated>2026-03-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              z29k
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://papyrus.z29k.fr/en/gemshelf/hurl/"/>
        <id>https://papyrus.z29k.fr/en/gemshelf/hurl/</id>
        
        <content type="html" xml:base="https://papyrus.z29k.fr/en/gemshelf/hurl/">&lt;h2 id=&quot;what-is-it&quot;&gt;WHAT IS IT?&lt;&#x2F;h2&gt;
&lt;p&gt;Hurl is a Rust binary that reads &lt;code&gt;.hurl&lt;&#x2F;code&gt; files - a minimalist text format for describing HTTP requests - and executes them sequentially. Each request can include assertions on the response (status code, headers, body via JSONPath or XPath) and capture values to inject into subsequent requests. Under the hood, libcurl handles the networking, which means solid support for HTTP&#x2F;1.1, HTTP&#x2F;2, HTTP&#x2F;3 and IPv6.&lt;&#x2F;p&gt;
&lt;p&gt;The &lt;code&gt;.hurl&lt;&#x2F;code&gt; format is deliberately simple: one request = one method, one URL, optional sections. No programming language, no complex DSL. The file reads like an HTTP conversation.&lt;&#x2F;p&gt;
&lt;pre&gt;&lt;code data-lang=&quot;hurl&quot;&gt;GET https:&#x2F;&#x2F;api.example.com&#x2F;health
HTTP 200
[Asserts]
jsonpath &amp;quot;$.status&amp;quot; == &amp;quot;ok&amp;quot;

POST https:&#x2F;&#x2F;api.example.com&#x2F;login
{
    &amp;quot;user&amp;quot;: &amp;quot;admin&amp;quot;,
    &amp;quot;password&amp;quot;: &amp;quot;secret&amp;quot;
}
HTTP 200
[Captures]
token: jsonpath &amp;quot;$.token&amp;quot;

GET https:&#x2F;&#x2F;api.example.com&#x2F;protected
Authorization: Bearer {{token}}
HTTP 200
&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;why-is-it-interesting&quot;&gt;WHY IS IT INTERESTING?&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;It&#x27;s plain text, period.&lt;&#x2F;strong&gt; &lt;code&gt;.hurl&lt;&#x2F;code&gt; files are versioned in Git, easy to diff, painless to review. No binary format or unreadable JSON like Postman collections.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Assertions are built in.&lt;&#x2F;strong&gt; No need to script your own JSON parser. JSONPath, XPath, regex, header checks, cookie inspection, SSL certificate validation, response duration - all part of the syntax. A failed assertion means a non-zero exit code. Simple.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Chaining is natural.&lt;&#x2F;strong&gt; Capture an auth token, a resource ID, a session cookie, then re-inject it into following requests with &lt;code&gt;{{variable}}&lt;&#x2F;code&gt;. This is the standard workflow for testing a complete flow.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;CI&#x2F;CD without friction.&lt;&#x2F;strong&gt; Hurl generates reports in JUnit XML, TAP, JSON and HTML. It plugs into any pipeline without adapters. A static binary, zero runtime dependencies, available via apt, brew, cargo, npm, conda or Docker.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Retry and polling.&lt;&#x2F;strong&gt; For integration tests that depend on an async service, Hurl supports retry with configurable intervals and stop conditions based on assertions.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;use-cases&quot;&gt;USE CASES&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;REST, SOAP or GraphQL API integration tests in CI pipelines&lt;&#x2F;li&gt;
&lt;li&gt;Post-deployment smoke tests with assertions on critical endpoints&lt;&#x2F;li&gt;
&lt;li&gt;Replacing Postman collections with versionable, reviewable files&lt;&#x2F;li&gt;
&lt;li&gt;Validating multi-step flows: authentication, CRUD, verification&lt;&#x2F;li&gt;
&lt;li&gt;Lightweight endpoint monitoring with response time checks&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
</feed>
