It Tools
The utilities engineers otherwise scatter across a dozen ad-laden websites - 80+ of them - live together in IT-Tools, one fast, polished web app. Crypto covers JWT decoding, MD5 through SHA-512 hashing, HMAC and bcrypt generation, RSA key pairs, and password strength analysis. Converters handle JSON to CSV, YAML, and TOML, Base64 files, URL encoding, HTML entities, color formats, and Docker run commands to Compose files. Generators produce UUIDv4, ULID, BIP39 mnemonics, QR codes (including Wi-Fi QR), and tokens; text tools include a regex tester, diff viewer, slug and case converters; web utilities parse URLs and user agents, look up HTTP status codes and MIME types, and inspect Open Graph metadata; plus a cron parser, chmod calculator, and more. The privacy argument is the point: JWTs contain user IDs, hashes derive from passwords, JSON dumps hold PII - exactly the inputs you least want a third-party utility site to log. IT-Tools is a frontend-only static bundle (Vue/TypeScript, GPL-3.0, 39k+ GitHub stars) served by Nginx in one container, so everything runs client-side on your infrastructure with nothing transmitted anywhere. New tools ship roughly monthly, and a scaffolding script makes adding custom ones straightforward.
Roundcube
Two decades of continuous development made Roundcube the standard-bearer of open-source webmail - a PHP IMAP client that gives any mail server a polished, application-like interface in the browser. It connects to whatever IMAP/SMTP stack you run - Dovecot, Postfix, a hosted mailbox - and delivers the full desktop-client experience: drag-and-drop message management, threaded conversation views, full MIME and HTML mail handling, find-as-you-type address book with groups and LDAP connectors, multiple sender identities, full-text search, and spell checking in dozens of languages. The default Elastic skin is genuinely responsive, working as well on a phone as a desktop, and the entire UI is skinnable. The plugin API is where deployments get shaped: managesieve exposes server-side filter management in the UI, enigma brings PGP encryption and signing via GnuPG, markasjunk trains spam filters, zipdownload batches attachments, password lets users change credentials, and attachment_reminder catches the classic forgotten-attachment email - among hundreds of community plugins. Built-in caching keeps large mailboxes fast, IMAP ACLs and shared folders support team setups, and XSS protection is engineered into the rendering pipeline. It scales from a single personal mailbox to unlimited users, backed by MySQL, MariaDB, PostgreSQL, or SQLite. GPL-licensed with regular security releases.
Kutt
Built for self-hosting from the ground up, Kutt is a modern, MIT-licensed URL shortener: zero-configuration setup, no build step, and SQLite, PostgreSQL, or MySQL with optional Redis caching. Links carry real management features - custom slugs from a configurable alphabet (confusable characters like 0/O and l/1 omitted by default), password protection, descriptions, expiration times, and the ability to edit a destination URL without changing the short link already in circulation. Custom domains make branded short links first-class: add as many as you like and serve each under your own name instead of a third-party's. Private, per-link statistics track clicks, browsers, operating systems, and countries without logging visitor IPs or sensitive data. An admin page manages users and links instance-wide, and two environment flags (DISALLOW_REGISTRATION, DISALLOW_ANONYMOUS_LINKS) lock the instance down for private use; OpenID Connect login integrates with an existing identity provider. Automation runs through a documented REST API - create, list, delete, and pull stats - plus Chrome and Firefox extensions and ShareX compatibility for shortening from anywhere. Built with Node.js and React, deployed in one Docker container, it replaces Bitly with something you own: your domain, your analytics, and links that never die with a vendor.
Shiori
Most web links eventually break - the sobering statistic Shiori, a bookmark manager with archiving by default, is built on. Its answer is archiving by default - where possible, every bookmark you save gets a clean, readable offline copy parsed from the page, ads and navigation stripped, so the article survives even after the original URL dies. Conceived as a simple Pocket clone and written in Go, the entire server is a single binary using roughly 25-30 MB of RAM with SQLite out of the box (Postgres and MySQL supported) - genuinely the lightest archiving bookmark manager you can run. Saving is one click through the Firefox and Chrome extensions, and finding things again is where Shiori quietly outperforms its size: full-text search covers the archived page content, not just titles and tags, so you can find that article by a phrase you remember from paragraph six. Reader mode presents the cleaned text; archive mode shows the preserved page. It's dual-interface by design - a pretty web UI (installable as a PWA on mobile) and a complete CLI for terminal devotees - plus a REST API for scripting. Pocket imports work natively, and Netscape HTML handles browser imports and exports. Multi-user support included. MIT-licensed.
KeeWeb
Your KeePass vaults, opened from any browser: KeeWeb reads, edits, and creates standard KDBX files, so it works with the same databases as KeePass and KeePassXC without conversion or lock-in. Self-hosting the web app gives you a password manager reachable from any modern browser, including mobile, with no client installation and no third-party cloud in the loop. All KDBX cryptography runs client-side; the server just serves the static app. Open multiple vault files simultaneously and search them all from one box, with advanced options covering specific fields, password history, and regular expressions. Vaults load from local files, your own server (WebDAV), or Dropbox, Google Drive, and OneDrive, with automatic sync - and files are cached for offline use, so a dropped connection never locks you out; changes resync once you're back online. Day-to-day niceties include a configurable password generator, protected fields that stay masked and are held in memory more defensively, entry history, tags with easy input, drag-and-drop attachments, and per-entry icons with favicon fetching. The optional KeeWeb Connect extension (Chrome, Firefox, Edge, Safari) autofills credentials using the keepassxc-protocol. MIT-licensed with matching desktop apps for macOS, Windows, and Linux.
Element
Matrix's flagship client, built by the protocol's creators: Element brings the decentralized open standard for real-time communication to web, desktop, iOS, and Android. Paired with a Matrix homeserver, it delivers Slack-quality team messaging where you own every message, file, encryption key, and byte of metadata. End-to-end encryption is on by default, built on Olm and Megolm - the Double Ratchet algorithm family Signal popularized, extended for large-room scalability and publicly audited by NCC Group. Messages encrypt per-device with cross-signed device verification, so even a compromised server yields nothing readable. Federation is the defining capability: like email, users on different homeservers converse seamlessly, and 30+ bridges connect Matrix rooms to Slack, Discord, WhatsApp, and Telegram, so moving to sovereign infrastructure doesn't sever contact with anyone. Rooms support threads, reactions, file sharing, and voice and video calls via Element Call. The result is digital sovereignty chosen by governments and enterprises across Europe: your data sits on your server in your jurisdiction, portable to any other Matrix host because the protocol is an open standard. Apache-2.0 licensed, with no per-user fees at any scale.
Inbox Zero
Your Gmail, Google Workspace, or Outlook inbox, worked by an AI assistant: Inbox Zero sits on top of the account you already have. Its core idea is rules written in plain English - tell the assistant "label invoices and file the PDF to Drive" or "archive cold outreach unless they mention my company" - and it executes against every incoming message. Emails that need a response arrive with a pre-drafted reply written in your tone, learned from your email history and calendar context. Reply Zero tracks what you owe responses to and what you're waiting on; the Bulk Unsubscriber surfaces newsletters you never read (with read-rate analytics) for one-click unsubscribe-and-archive; the Cold Email Blocker auto-archives unsolicited pitches based on your own definition of "cold." Smart Filing routes attachments - receipts, contracts, PDFs - into the right Google Drive or OneDrive folder, and Slack/Telegram integration lets you read, draft, and triage without opening a mail client. Email analytics show top senders and volume trends. It is not a new email client: everything happens in your real mailbox using native filters. Self-hosting means your mail content and the LLM calls that process it run on infrastructure you control.
Radarr
The movie half of the *arr stack: Radarr is a .NET collection manager that automates acquiring films for Usenet and BitTorrent users the way Sonarr does for TV. Add a movie once and Radarr handles the rest: it monitors indexers and RSS feeds, grabs a matching release the moment one appears, sends it to SABnzbd, NZBGet, qBittorrent, Deluge, Transmission, rTorrent, or another connected download client, then imports, sorts, and renames the file into your library structure. Quality profiles are the control surface - define allowed resolutions and a cutoff, and Radarr keeps upgrading files automatically, replacing a DVD rip when a Blu-ray release lands. Custom formats go further, scoring releases by codec, HDR metadata, release group, streaming source, or arbitrary regex so the copy you want always wins the pick. Failed downloads retry with another release automatically; a manual search shows every candidate and explains why one was skipped. Release parsing recognizes director's cuts, special editions, AKA titles, and hardcoded subs. Plex and Kodi integration handles notifications, library refreshes, and metadata like posters, trailers, and subtitles, and a calendar view tracks upcoming releases. It pairs naturally with Jellyseerr for request management and shares its API conventions with the whole *arr ecosystem.
Jellyseerr
Browse trending titles, search anything, request it in two clicks: Jellyseerr gives Jellyfin, Emby, and Plex users a beautiful storefront for the media library. Born as the Overseerr fork that added Jellyfin and Emby support (the projects have since unified as Seerr), it handles the full request lifecycle - users authenticate with their existing media-server accounts, pick individual seasons or movies in a clean interface, and admins approve or decline from a simple queue, including on mobile. Approved requests flow straight to Sonarr and Radarr, which handle acquisition automatically, with support for separate 4K server instances. Regular library scans keep availability accurate, so users see instantly what already exists instead of requesting duplicates. A granular permission system controls who can request what - auto-approval for trusted users, quotas and limits elsewhere - and override rules adjust request routing by user, tag, or other conditions. Watchlist and blocklist functions curate discovery, notifications reach email, Discord, Telegram, Slack, Pushover, and Pushbullet, and both PostgreSQL and SQLite are supported. Localized into many languages, it turns "can you add this movie?" texts into a self-service system that runs itself.
Grav
No database anywhere in the stack: Grav, the leading flat-file CMS, builds every page from a folder of Markdown and YAML on PHP, Symfony components, Twig templating, and Doctrine caching. That architecture is the whole argument: content is Git-versionable, rsync-able, and lock-in-free; pages render in well under 100ms without database round-trips; and backup means copying a directory. Content authors write Markdown (or plain HTML), configure with readable YAML, and define custom page structures via blueprint files that generate editing forms automatically. The optional Admin panel adds a polished editing layer: dashboard with site activity, page management with a syntax-highlighted editor and live preview, drag-and-drop media uploads, one-click plugin/theme updates, and normal/expert modes for form-based or raw YAML editing. The ecosystem runs deep - hundreds of open-source plugins and themes installed through the GPM package manager, with an event-hook architecture that gives plugins full control over the request lifecycle, and downloadable skeletons providing entire pre-built sites. Grav 2.0 modernizes the stack (PHP 8.3+, Symfony 7, Twig 3) and adds a first-party REST API, an MCP server for AI agents, and a SvelteKit single-page admin with real-time collaborative editing. Ideal for docs, blogs, and marketing sites. MIT-licensed.
Paisa
A plain text journal is all Paisa needs to put your net worth, cash flow, expenses, and investment returns on one set of dashboards. Write entries in the built-in editor. It brings syntax highlighting, auto completion, error checking, and auto formatting to double-entry journals. Bank and credit card statements in CSV, Excel, or PDF import through reusable templates that categorize every transaction. Price providers track mutual funds, NPS holdings, and stocks. Manual prices revalue a house, a car, or a plot of land. Budgets set a limit for each category and track spending against it. Allocation targets show how far a debt and equity split has drifted. Goals compute a completion date from monthly savings. The retirement planner works from a safe withdrawal rate and yearly expenses. A calendar marks recurring bills as cleared, late, past due, or upcoming, and Liabilities pages cover credit cards, loan repayment, and interest. Live Sheets calculate taxes and EMIs from ledger data. Journals and settings stay in plain text files that can be version controlled or shared, and ledger, hledger, and beancount are all supported. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. AGPL-3.0-or-later licensed.
SQLPage
If you can write a SELECT statement, you can publish a working web app with SQLPage, where each query's results appear on the page as tables, charts, maps, or forms. A .sql file is a page. Name a component in the first row, and the rows after it become lists, cards, data grids, timelines, or step trackers. Tables offer searching, sorting, frozen headers, and per-row edit and delete buttons. Charts cover line, area, bar, pie, scatter, bubble, and heatmap views with a one-click CSV export. Forms feed INSERT and UPDATE statements directly, with validation and file uploads. A complete CRUD tool takes a handful of queries. The map component plots markers and GeoJSON shapes, and the JSON component lets the same data serve other systems as an API. Protect private pages with password logins or single sign-on through Google, Microsoft, or your own identity provider. Connect to SQLite, PostgreSQL, MySQL, SQL Server, or ODBC sources such as DuckDB, Oracle, Snowflake, and BigQuery. Tabs, modals, alerts, breadcrumbs, and carousels shape multi-page sites, and custom templates, CSS, and JavaScript fill any gap. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.
EasyAppointments
Service businesses get a booking page without per-booking commissions or monthly SaaS fees from Easy!Appointments, the self-hosted appointment scheduler. Customers pick a service, provider, and open time slot from a clean web form; the system enforces working plans, breaks, and booking rules you define per provider, then confirms by email to both sides. The structure fits real service organizations: multiple providers with individual schedules, multiple service types with their own durations and prices, and admin/secretary roles for front-desk management. Two-way Google Calendar synchronization keeps each provider's external calendar authoritative - book in Easy!Appointments and it appears in Google Calendar, block time in Google and the slot disappears from the booking form. Version 1.6 adds SMS notifications and payment support, and a REST API opens the scheduling data to custom integrations. Built on PHP (CodeIgniter) with MySQL, it installs in a single folder and can share a database with your existing site; a WordPress plugin embeds the booking form directly in pages or posts. The interface ships in dozens of languages with time-zone handling throughout. GPL-3.0 licensed and free for commercial use - a helpdesk, clinic, salon, or consultancy runs its whole booking workflow on its own server.
OpenCart
An online store you own end to end: OpenCart bundles the storefront, product catalog, checkout, and admin panel into one self-hosted install with no monthly software fee. Products take options and attributes, and master products can spawn variants that override price, SKU, and stock level. Unlimited categories, filters, reviews and ratings, coupons, specials, and reward points help shoppers find items and return for more. Guests and registered customers can check out by bank transfer, cheque or money order, or cash on delivery; subscription plans with trial periods handle recurring orders, and more gateways and carriers install from the extension marketplace. Shipping rules include flat-rate, free, per-item, pickup, and weight-based options. Tax classes, geo zones, and multiple currencies with automatic rate updates support selling abroad. One admin interface manages several stores, each with its own theme, layout, and language settings, and user groups control who may edit what. A built-in blog adds topics, articles, and comments with anti-spam rules, and language packs cover more than 40 languages, right-to-left scripts included. Sales, tax, shipping, product, and customer reports, campaign tracking, an affiliate program, bulk customer mail, GDPR export and removal tools, and downloadable digital goods round out the business side. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. GPL-3.0 licensed.
tirreno
tirreno watches what accounts actually do inside your product, then surfaces the ones that look like account takeover, credential stuffing, fake signups, or insider abuse. Your backend reports events such as logins, registrations, page views, searches, email changes, and field edits through an SDK or one HTTP call, and a scheduled job turns them into per-user context: devices, IP addresses, sessions, and connected identities. Preset rules cover account takeover, credential stuffing, content spam, bot detection, multi-accounting, promo abuse, dormant accounts, API protection, and high-risk regions, and you can add rules of your own. Each rule adds to a risk score, and thresholds decide whether a user is flagged for manual review or suspended automatically. The review queue lists who needs a look, and the single user view shows behaviour patterns, risk scores, connected identities, and an activity timeline. A field audit trail records what changed and when, which supports compliance reviews, while the logbook lists every API request the instance received. Your application can ask a blacklist endpoint whether a user or IP should be blocked before it responds. An optional IP enrichment pack adds geolocation, ISP, and VPN or proxy detection. All event data stays on your own server. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. AGPL-3.0 licensed.
MediKeep
Your medical history, fragmented across a dozen patient portals, in one place on your server: MediKeep (formerly Personal Medical Records Keeper) is a self-hosted health record system. Built with a React frontend and FastAPI backend over PostgreSQL, it organizes 14 categories of medical data - medications with dosages and schedules, conditions, procedures, allergies, immunizations, symptoms, injuries, doctor visits and encounters, treatments, lab results, and even medical equipment with service dates and supplier info. Treatment management is genuinely sophisticated: an advanced mode links treatments to their medications with per-medication overrides for prescriber, pharmacy, and effective dates, and reverse lookup shows which treatments use a given medication. A dashboard summarizes records and recent activity, file uploads attach documents to records, and tagging works across categories. When a new specialist asks for your history, the report builder assembles custom reports by category and exports to PDF, JSON, or CSV - a curated, portable summary instead of a folder of photocopies. Authentication supports Google and GitHub SSO with OIDC providers like Keycloak and Authelia expected to work, and the built-in backup system protects the archive. Health data is exactly what should never live in someone else's cloud.
Keeper
Work, personal, business, and school calendars at different providers double-book because no one system sees your real availability - Keeper solves that multi-calendar collision problem. Its pull-compare-push sync engine aggregates events from Google Calendar, Outlook/Office 365, iCloud, FastMail, any CalDAV server, or read-only iCal/ICS feeds, and pushes blocking events to one or many destination calendars so time slots align everywhere. The design is deliberately content-agnostic - it syncs timeslots, not titles or descriptions, so a personal appointment shows as busy time on your work calendar without leaking details. Sync logic is clean: events Keeper creates carry a traceable UID suffix, deletions propagate, and orphaned entries are purged automatically. A token-authenticated aggregated iCal feed combines selected calendars into one subscribable URL for Apple Calendar or Thunderbird. An optional MCP server gives AI agents read-only calendar access over OAuth 2.1 - list calendars and query events by date range, with no write capability. Built with Next.js and Bun under AGPL-3.0, the standalone Docker image bundles web, API, cron, worker, Redis, and PostgreSQL in one container, and self-hosting unlocks every Pro feature - unlimited calendars and one-minute sync intervals - for free.
Change Detection
Price drops, restocks, job postings, government announcements, competitor edits - changedetection.io watches web pages and alerts you the moment anything changes, down to PDF text and checksums. Point it at a URL, set a check interval, and precise filters decide what counts as a change: a Visual Selector targets page elements by pointing and clicking, CSS selectors and XPath narrow scope, trigger-text and ignore-text rules (with regex support) cut noise, and JSONPath or jq handles API responses. A dedicated re-stock and price detection mode extracts product metadata and fires on thresholds - alert only when the price drops below your target or the percentage change exceeds a limit. JavaScript-heavy sites render through a real Chrome browser via Playwright, with the ability to execute JS steps first (log in, click, scroll) before extracting text. Notifications reach 85+ services through Apprise - Discord, Slack, Telegram, email, webhooks - optionally with a screenshot of the changed page, and AI-powered summaries (any OpenAI-compatible endpoint, including local Ollama) describe what changed. Per-watch proxies, custom headers, and POST/GET control cover hostile targets. Apache-2.0 licensed with local file-based storage: the URLs you monitor and why stay entirely your business.