Mattermost
Teams that cannot send messages through someone else's cloud run Mattermost - the open-core, self-hosted alternative to Slack. It provides public and private channels, threaded discussions, unlimited search history, file sharing with previews, one-to-one audio calls, and screen sharing, with desktop clients for Windows, macOS, and Linux plus iOS and Android apps. Messages support full Markdown, which suits engineering conversations with code blocks and logs. Playbooks turn repeatable processes such as incident response and release management into checklist-driven workflows with automated triggers and retrospectives. Integration is a core strength: prebuilt connectors for GitHub, GitLab, Jira, ServiceNow, and PagerDuty, plus webhooks, slash commands, bots, a REST API, and a plugin marketplace with 700+ entries - together making it a working surface for ChatOps rather than just a chat room. Playbooks add keyword and event triggers, task assignment, status broadcasting, and post-incident retrospectives, so operational knowledge is not trapped in individuals' heads. The server is a single Go binary backed by PostgreSQL, with React clients, released monthly under MIT license and deployable fully air-gapped - which is why governments and defense organizations run it inside closed networks, and why the same control applies to any team with confidentiality requirements. The compiled Team Edition is free for unlimited users with no message history cutoff, so costs stay flat as the team grows.
NocoDB
Any existing relational database becomes a collaborative, Airtable-style smart spreadsheet under NocoDB. It connects to PostgreSQL, MySQL, MariaDB, SQL Server, or SQLite, introspects the schema - tables, relationships, indexes - and renders it as interactive Grid, Gallery, Kanban, Calendar, and Form views without migrating a single row. Your business data stays in your database; NocoDB keeps only its own metadata (view configs, permissions, webhooks) in a separate store. Every connected table automatically gets REST APIs with Swagger documentation, effectively turning legacy databases into modern backends. The spreadsheet layer adds 20+ field types including formulas, lookups, rollups, links, attachments, and currency, plus sorting, filtering, grouping, and multi-field editing. Views can be locked or shared publicly with password protection, role-based access control scopes permissions per user, and webhooks plus CSV, Excel, and Airtable import round out integration. An ERD view visualizes the schema. Built with Node.js and Vue, deployed via Docker, handling millions of rows.
Planka
Trello's board model on your own server: Planka is an open-source Kanban project management tool. Boards organize into projects with lists, cards, labels, due dates, checklists, file attachments, and per-card stopwatch time tracking, all managed through drag-and-drop. Updates propagate over WebSockets, so a teammate moving a card or adding a comment appears instantly for everyone without a refresh - a genuine differentiator among self-hosted boards. Card descriptions use a full Markdown editor, custom fields adapt cards to your workflow, and views switch between Kanban, grid, and list layouts. Authentication supports OpenID Connect single sign-on with Google, Azure AD, Okta, or any OIDC provider - a feature Trello reserves for enterprise plans - and notifications reach 100+ channels including Slack, Discord, Telegram, and SMTP via Apprise. A REST API with 50+ webhook events supports custom integrations, and one-click board import eases migration. Built with React and Node.js on PostgreSQL, translated into 35+ languages, deployed via Docker.
Rallly
What Doodle did before ads and paywalls took over: Rallly (three L's) lets you propose a few dates, share a link, and watch an availability grid fill in - no email threads, no forced accounts, no "$6.95/month to remove ads." The availability grid makes the winning slot obvious at a glance, comments on each poll keep the "I can do Tuesday if we start late" discussion attached to the decision instead of buried in chat, and email notifications fire as votes and comments arrive. When consensus lands, finalize the winning option and everyone gets notified. The stack is modern TypeScript - Next.js, tRPC, Prisma over PostgreSQL, Tailwind - with a clean, genuinely mobile-friendly UI, dark mode, and community translations in 10+ languages. Self-hosting means unlimited polls and unlimited participants with meeting data on your server rather than a scheduling SaaS. It pairs naturally with Cal.com: Rallly answers "which time works for everyone?", Cal.com handles "book a slot on my calendar." AGPL-licensed.
Vaultwarden
The Bitwarden server, reimplemented in Rust: Vaultwarden (formerly bitwarden_rs) is the unofficial lightweight edition. It speaks the same wire protocol as the official server, so every official Bitwarden client - browser extensions, iOS, Android, desktop, and the bw CLI - connects without modification, while the server itself runs as a single container against SQLite (or MySQL/MariaDB/PostgreSQL) instead of the official multi-container stack that wants gigabytes of RAM. Features Bitwarden gates behind paid tiers ship free: organizations with collections, groups, member roles, and policies; TOTP code storage; file attachments; Bitwarden Send; Emergency Access; event logs; and admin password reset. Two-factor options cover authenticator apps, email, FIDO2 WebAuthn, YubiKey, and Duo, and OIDC-based SSO landed natively in v1.35.0. Zero-knowledge encryption is unchanged - vault data is encrypted client-side and the master password never reaches the server. Attachments and Sends store on local disk or S3-compatible backends, an admin panel manages users and server settings, and backup is copying one data directory. Suited to individuals and teams up to roughly 50 users.
Weblate
Over 2,500 open-source projects and companies in more than 165 countries localize with Weblate - the libre continuous localization platform and the standard self-hosted answer to Crowdin and Lokalise. Its defining trait is that translations live in the same version control as your code: Weblate talks directly to Git and Mercurial, pulls new source strings automatically via webhooks, and pushes finished translations back either as direct commits or as pull/merge requests on GitHub, GitLab, Gitea, Bitbucket, Azure DevOps, Gerrit, or Pagure. Every translator is properly credited in the commit history. For translators, it is a full computer-aided translation tool: translation memory, glossaries, customizable quality checks that catch placeholder and formatting mistakes, propagation of identical strings across components, and automatic suggestions from machine translation services - DeepL, Amazon Translate, LibreTranslate, and others, with per-service priorities and support for custom Python engines. It handles the format zoo (gettext PO, JSON, YAML, Android XML, iOS strings, and dozens more) and supports crowdsourced workflows with granular access control, workspaces, two-factor authentication, and reviewer approval steps. A REST API, CLI client, and add-on system automate everything else. Built on Python/Django, GPL-licensed, with no per-string or per-seat pricing when self-hosted.