28 apps Personal
Odysseus screenshot thumbnail

Odysseus

Agents with tool use, deep research, a document editor, an IMAP/SMTP email client with AI triage, notes, tasks, and a CalDAV-synced calendar - Odysseus bundles all of it into one open-source, self-hosted AI workspace. It runs local models through Ollama, vLLM, or llama.cpp and cloud APIs like OpenAI and OpenRouter, with a hardware-aware Cookbook that scans your machine and recommends quantized models that fit. Persistent memory uses ChromaDB with hybrid vector-plus-keyword retrieval, web search runs through a bundled SearXNG instance, and agents can use MCP servers, files, and shell access with safety controls, plus custom skills and scheduled agent tasks. A blind Compare mode runs side-by-side model duels with identities hidden and accumulates Elo-style ratings from your votes, so model selection is based on your actual workloads rather than leaderboard claims. Deep research mode - adapted from the Tongyi DeepResearch approach - reads sources through SearXNG and produces cited reports, while the email client tags, summarizes, sets reminders, and drafts replies locally rather than through a third-party mail AI. The writing-first document editor adds AI edits, Markdown and HTML support, and version history. The stack is Python 3.11 with FastAPI, SQLite for state, and a vanilla JS frontend, licensed AGPL-3.0 with zero telemetry. Because agents can read email and execute commands, keep authentication enabled and never expose it as a public unauthenticated service.

Deploy
Khoj screenshot thumbnail

Khoj

A self-hosted "second brain": Khoj indexes your own files and answers questions from them, parsing Markdown (whole Obsidian vaults included), org-mode, PDF, Word, plain text, Notion pages, GitHub repositories, and images described by a vision model, then embedding everything with sentence-transformers into a vector index for semantic search and RAG with cited sources. Any LLM backend works: local models like Llama, Qwen, or Mistral via Ollama, or cloud models like GPT, Claude, and Gemini. You can build custom agents, each with its own persona, scoped knowledge base, chat model, and tools such as web search and code execution. Scheduled automations run recurring research and deliver newsletters or notifications to your inbox, and research mode performs multi-hop web searches with inline citations. Access it from a browser, the Obsidian plugin, Emacs, desktop, or WhatsApp - all clients connect to the same self-hosted instance, making Khoj one of the few AI assistants Emacs users can point at decades of org files. Semantic search means recall works without exact keywords: "that paper about forecasting with transformers" surfaces the right PDF even when you cannot remember its title. Switching LLM backends never requires re-indexing your documents, and with a local model via Ollama, even inference stays on hardware you control - journals, research, and private notes are never sent anywhere. Python/FastAPI stack, AGPL-licensed, with PostgreSQL storage.

Deploy
Maybe Finance screenshot thumbnail

Maybe Finance

Roughly $1M of development work, open-sourced: Maybe Finance began as a $249/year commercial personal finance product before the company released it all. It aggregates bank accounts, credit cards, loans, investments, crypto, and real estate into a single net worth dashboard with historical trend charts - replacing the spreadsheet that usually glues a whole portfolio together. Transactions are categorized and tagged with rules, with merchant tracking and search across imported or synced activity; budgets track spending by category against plan; and the investment view follows holdings, cost basis, and returns across brokerage accounts. Multi-currency support converts accounts held in different currencies into a single reporting currency, bank synchronization works through Plaid where supported, and manual CSV import covers any institution. An optional AI assistant answers questions grounded in your own financial data. Because the app was built as a paid product with professional design before being open-sourced, its interface quality exceeds most community finance tools - and self-hosting means your balances and transactions are not monetized by a free app or gated behind an annual subscription. The stack is Ruby on Rails with Hotwire on PostgreSQL, licensed AGPL-3.0 and deployed via Docker. The original repository is archived; development continues in the community fork Sure, compatible with the same self-hosted setup.

Deploy
Memos screenshot thumbnail

Memos

Open the page, write a Markdown note, move on - Memos is a lightweight, self-hosted service built for quick capture. Instead of folders, notebooks, and titles, it presents a timeline: open the page, write a Markdown note, and move on. Notes support headings, code blocks with syntax highlighting, task lists, tables, and file attachments, with tags auto-extracted from #hashtags in the text. Each memo carries a visibility level, private, protected (logged-in users), or public, so one instance works as a personal log, a small team wiki, or a lightweight microblog. The backend is a single Go binary with a React frontend, around 50 MB of memory at runtime and a ~20 MB Docker image, so it fits comfortably on the smallest instance size with near-zero maintenance. SQLite is the default store, with MySQL and PostgreSQL supported for multi-user deployments needing more concurrency, and full REST and gRPC APIs - Connect RPC for browsers, gRPC-Gateway for external tools - make capture scriptable from CLIs, bots, and automation platforms. Fast full-text search spans all memos, pinned notes keep references handy, and a masonry view suits visual browsing. MIT-licensed with zero telemetry; content is stored as plain Markdown in a database you control, so notes remain readable, exportable, and free of proprietary formats.

Deploy
Flame screenshot thumbnail

Flame

A server full of scattered services becomes one clean application hub under Flame - a self-hosted startpage where every bit of configuration happens in built-in GUI editors, never a config file. Applications and bookmarks are created, edited, and organized into categories directly in the browser, and favorites pin to the homescreen for one-click access. The integrated search bar filters your apps and bookmarks locally as you type, and prefix shortcuts (like /g for Google) route queries to any of 11 web search providers or custom ones you define, making Flame a genuine browser homepage rather than a static link wall. Docker integration is the standout for homelabs: mount the Docker socket, add flame.type, flame.name, and flame.url labels to containers, and new services appear on the dashboard automatically - Kubernetes Ingress annotations work the same way. A weather widget shows temperature, cloud coverage, and animated conditions for your coordinates, and password authentication protects settings and items. Appearance is deeply customizable with 15 built-in color themes, a custom theme builder, and full custom CSS support. The stack is Node.js with SQLite behind a React frontend - light, fast, and inspired by the minimalist SUI design.

Deploy
Usermemos screenshot thumbnail

Usermemos

Memos, the lightweight open-source note service from the usememos project, packaged as a containerized deployment for multi-architecture Docker hosts (x86-64 and arm64): that is Usermemos. The model is frictionless capture: no folders or titles, just a chronological stream of Markdown notes with code blocks, task lists, tables, and file attachments, organized by #hashtags pulled automatically from the text. Per-memo visibility - private, protected for logged-in users, or public - lets a single instance serve as a personal journal, a shared team log, or a public microblog simultaneously. Multi-user support with authentication makes it workable for small teams, and full REST and gRPC APIs open capture and retrieval to CLIs, bots, and automation tools. The runtime is a single Go binary with a React frontend that idles around 50 MB of memory and stores content as plain Markdown in SQLite by default, with MySQL and PostgreSQL available for heavier deployments. Configuration happens through environment variables, access works over HTTP or HTTPS behind a reverse proxy, and there is no telemetry - notes stay on your server in a portable format.

Deploy
Trilium Notes screenshot thumbnail

Trilium Notes

For people whose notes number in the tens of thousands, Trilium Notes is the hierarchical note-taking application built specifically for large personal knowledge bases - actively maintained as TriliumNext. Notes arrange into arbitrarily deep trees where every note is both content and container, and cloning lets a single note live in multiple places at once - bash notes belong under both Linux and Scripting, and Trilium refuses to make you choose. A WYSIWYG editor handles rich text, tables, math, and syntax-highlighted code blocks with Markdown-style shortcuts, while dedicated note types cover Excalidraw sketches, mind maps, geo maps with GPX tracks, relation maps that visualize connections between notes, and tables with typed columns. The attribute system is the power layer: labels attach queryable metadata (#year=1999, #author), relations create named links between notes, and both inherit down the tree - feeding full-text search, saved queries, and scripting. Scripting is Trilium's deepest differentiator: JavaScript code notes run on events like note changes or hourly schedules, build custom widgets, and add server-side logic, turning the knowledge base into a programmable platform. Protected notes encrypt sensitive content, note hoisting focuses on subtrees, and the self-hosted server syncs desktop clients across devices.

Deploy
Actual Budget screenshot thumbnail

Actual Budget

Every unit of income gets a job in Actual Budget - a local-first personal finance app built on envelope (zero-sum) budgeting, where you can only budget cash you actually have, which keeps the plan honest by construction. The data model is a SQLite file that lives on your device and works fully offline; the self-hosted Node.js sync server adds background multi-device synchronization using CRDT-based distributed-systems machinery, browser and mobile access as an installable web app, and automated backups. Optional end-to-end encryption makes the synced data unreadable even to the server hosting it. Transactions enter three ways: manual entry, file import (CSV, QIF, OFX, QFX, CAMT.053), or automatic bank syncing through GoCardless for EU/UK banks and SimpleFIN for US/Canada. Built-in YNAB4 and nYNAB importers migrate complete budget histories, and reports, schedules for recurring transactions, and rule-based transaction cleanup handle the day-to-day. A fully featured local API lets developers script custom importers and automation against their own data. 100% free, open source, and 26k stars strong.

Deploy
Monica screenshot thumbnail

Monica

Take the tool sales teams use to never forget a client detail and point it at the people who actually matter - friends, family, the colleague whose kid's name you keep blanking on: Monica is a personal CRM. It's a Laravel/PHP application over MySQL where each contact accumulates the texture of a real relationship: how you met, family members and pets, work changes, addresses, notes from conversations, activities done together, gift ideas and gifts given, even debts owed in multiple currencies. Two features set it apart from every contact app. Reminders with staying power: set per-contact intervals (weekly through yearly), get notified at 30 days, 7 days, and day-of, with automatic birthday reminders and CalDAV sync to your calendar. And a journal linked to contacts: write about dinner with friends, tag each person, and build a timeline that's part diary, part relationship log - plus a daily "how was your day" rating. Monica is deliberately manual and deliberately private: no social network features, no AI, no email scraping, no ads, no analytics - a quiet database of what you know about people you love, on your own server. Multiple vaults and users, labels, custom activity types, and document/photo uploads round it out. AGPL-licensed.

Deploy
Ghostfolio screenshot thumbnail

Ghostfolio

Stocks, ETFs, crypto, bonds, precious metals, and cash across every account and currency, in one privacy-first dashboard: Ghostfolio is open-source wealth management software. The deliberate design decision is no brokerage linking: positions enter by manual entry, CSV import, or the REST API, so your holdings never pass through a data aggregator. Performance is measured as return on average investment across Today, WTD, MTD, YTD, 1Y, 5Y, and Max timeframes, with benchmark comparison against indices like the S&P 500, dividend tracking, and allocation breakdowns by asset class, region, and sector. A static X-ray analysis flags concentration and other portfolio risks, and a FIRE calculator projects progress toward financial independence. Multi-currency support converts holdings using historical exchange rates, market data comes from Yahoo Finance and CoinGecko among other pluggable providers, and everything exports back out as CSV or JSON. Built with Angular and NestJS on PostgreSQL and Redis, shipped as Docker images for amd64 and ARM, with a mobile-first PWA interface, dark mode, and a distraction-free Zen mode. AGPL-licensed.

Deploy
Endurain screenshot thumbnail

Endurain

A personal Strava on your own server: Endurain is a self-hosted fitness platform that keeps your complete workout history, GPS routes, and health data out of a vendor's cloud. It ingests the standard device formats (.gpx, .tcx, and preferred .fit with full sensor data) via manual or bulk upload, and syncs directly with Strava and Garmin Connect so migrating years of history is straightforward - Garmin sync covers activities, gear, and body composition. The dashboard shows activity feeds with weekly and monthly statistics, routes on maps, and distance, speed, and training-volume trends over time, with definable goals that update automatically. Gear tracking is notably deep: log wetsuits, bicycles, shoes, racquets, skis, and snowboards, assign default gear per activity type, and track individual components like bike chains against replacement mileage. Multi-user support with admin and user roles, follower features, per-activity privacy settings, and configurable sign-up (email verification, admin approval) make it usable for clubs and coaches as well as individuals. Auth is serious for a fitness app: MFA TOTP, OIDC/SAML SSO, and email-based password resets via Apprise. The stack is Vue.js over a Python FastAPI backend with PostgreSQL, plus weight, steps, and sleep logging, imperial/metric units, multi-language support, and third-party app integration.

Deploy
linkding screenshot thumbnail

linkding

For people who found del.icio.us perfect and everything since bloated, linkding is the bookmark manager - a Django application whose entire design goal is saving and finding links with zero friction. Paste a URL and it fetches the title, description, favicon, and preview image automatically; organize with tags, search full-text across everything, mark bookmarks unread for read-it-later, attach Markdown notes, and bulk-edit whole selections at once. Its answer to link rot is archiving: bookmarked pages can be snapshotted automatically, either submitted to the Internet Archive or saved as local HTML files, and a documented SingleFile browser-extension integration uploads full self-contained page captures straight to your instance. Official Firefox and Chrome extensions (plus a bookmarklet) make saving a one-click habit, the UI installs as a Progressive Web App on mobile, and multi-user support with bookmark sharing - to users or logged-out guests - covers families and teams, with SSO via OIDC when needed. The REST API (create, search, filter by tag) has spawned a genuine ecosystem of community mobile apps and libraries. Operationally it is famously boring in the best way: one small container, SQLite by default, automated migrations, and a zero-breaking-changes policy. Import and export use standard Netscape HTML. MIT-licensed.

Deploy
LubeLogger screenshot thumbnail

LubeLogger

Vehicle maintenance records shouldn't live in a homemade spreadsheet and a shoebox of receipts - LubeLogger exists because of exactly that. It's a self-hosted .NET web application (from Hargata Softworks) that gives every vehicle in your garage a complete digital history: service, repair, and upgrade records categorized and searchable, with invoices and receipts attached as documents; fuel fill-ups that compute economy in MPG, UK MPG, L/100KM, or KM/L without spreadsheet tedium; taxes, odometer logs, inspections, equipment, and supplies inventory for tracking the parts and fluids on your shelf. The reminder system is what saves engines: recurring reminders trigger by date, odometer reading, or whichever comes first - exactly how real service intervals work - so oil changes and timing belts stop relying on memory. A dashboard summarizes expenses by year, month, and category, a planner tracks to-dos by type, priority, and progress, and professional vehicle reports print a full history - genuinely useful when selling a car. Collaboration is built in: invite household members as collaborators on shared vehicles, with single sign-on support. Custom fields adapt records to your needs, CSV import/export moves data freely, an API enables automation, and the mobile-tested UI installs as a PWA on iOS and Android. MIT-licensed.

Deploy
Monetr screenshot thumbnail

Monetr

After the bills are covered, how much is actually safe to spend? monetr organizes an entire budgeting application around that one question. Inspired by the defunct Simple bank, it budgets paycheck by paycheck rather than month by month. Funding schedules encode when you get paid - including multiple schedules per account and a weekend-exclusion option for deposits that land early - and every expense or savings goal is tied to one. monetr then calculates how much of each recurring obligation (rent, car payment, subscriptions, on any repeat interval) to set aside from each paycheck, so a large bill never has to come out of a single check. What remains after allocations is surfaced as Free-To-Use, and a forecasting timeline projects contributions, due dates, and leftover funds forward so low-balance periods are visible before they happen. Transactions arrive either as OFX uploads from your bank or automatically through a Plaid connection using your own API credentials, keeping balances and transactions synced without manual entry. The app is mobile-friendly and installable as a PWA on desktop or phone. Self-hosting via Docker Compose is completely free, with all source code public and your financial data on your own hardware.

Deploy
Radicale screenshot thumbnail

Radicale

Calendars, to-do lists, journal entries, and contacts, synced over the open CalDAV and CardDAV standards nearly every client already speaks: Radicale is a small pure-Python server that works with Thunderbird, DAVx5 on Android, Apple Calendar and Contacts, GNOME, and many more. Its defining design choice is radical simplicity: there is no database. Events live as plain .ics files and contacts as .vcf files in an ordinary folder structure, which makes backup a copy command, migration a move, and disaster recovery a matter of reading text files. The server works out of the box with no complicated setup, then grows as needed: flexible authentication (htpasswd files among other methods), per-collection authorization rules, TLS-secured connections, and a plugin system for extending storage, auth, and rights handling. Built-in limits on parallel connections, file sizes, and failed authentication attempts harden it for network exposure behind a reverse proxy. A bundled web interface handles creating and managing calendars and address books - useful since many clients cannot create collections themselves. Maintained since 2011 with 140+ contributors, GPLv3-licensed, and light enough to run on the smallest VPS or a Raspberry Pi.

Deploy
Flatnotes screenshot thumbnail

Flatnotes

A web interface for a folder of Markdown files - Flatnotes is exactly that, and the discipline of that design is why people love it. Every note is a plain .md file in a single flat directory: no database, no proprietary format, no hierarchy to maintain, no export step if you ever leave. Edit notes in the browser or open the same files in VS Code or Obsidian, sync them with Syncthing or rsync while the app is running - the Whoosh-powered search index synchronizes incrementally, so external edits just show up. The interface is a clean Vue.js app with both WYSIWYG and raw Markdown editing modes (TOAST UI Editor), instant full-text search behind the "/" shortcut with partial-match support, wikilinks for cross-note references, and automatic tag extraction from #hashtags in note bodies. Light and dark themes and a mobile-responsive layout make it pleasant everywhere. Authentication is flexible for a personal tool: none, read-only, username/password, or TOTP two-factor. A documented REST API covers create/read/update/delete for automation. The operational story is the quiet selling point - the only state is the notes folder and a rebuildable index, so backup is copying a directory. For a personal notepad that respects your data, Flatnotes nails minimal.

Deploy
Tiddlywiki screenshot thumbnail

Tiddlywiki

The entire wiki - content, code, and interface - is built from "tiddlers," small addressable units of information that link, transclude, tag, and filter into each other: TiddlyWiki is a non-linear personal notebook with a design philosophy unlike anything else in this catalog. Instead of pages in a hierarchy, you compose views by pulling tiddlers together on demand, which is why researchers, zettelkasten practitioners, and GTD devotees have sworn by it for two decades. The whole application is JavaScript, and the UI itself is written in hackable WikiText - customization goes as deep as rewriting the interface from inside the wiki. Self-hosting runs the Node.js version, which upgrades the classic single-HTML-file architecture in the ways that matter for a server: every tiddler is stored as an individual text file (Git-friendly, organizable), edits save through the HTTP API from any modern browser including phones, and one installation can serve multiple wikis blending shared and unique content. The plugin ecosystem covers graph visualizations, themes, languages, and hundreds of community extensions, declared per-wiki in a simple tiddlywiki.info file; the newer MultiWikiServer plugin adds multi-user accounts and tiddler sharing. Your notes stay usable for decades, independent of any corporation - the project's founding promise. BSD-licensed.

Deploy
Shiori screenshot thumbnail

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.

Deploy