212 apps Open Source
Ties screenshot thumbnail

Ties

A federated bookmark manager written in Rust: Ties (formerly linkblocks) is your own small corner of the web for saving, organizing, and sharing good pages, connected to the fediverse over ActivityPub. Instead of rigid folders, bookmarks live in arbitrarily nested lists that link together into a knowledge graph. Saved pages are fetched, converted to a readable archived version, and stored in the database, so full-text search covers titles, URLs, and the actual page text - and the content survives if the original disappears. The federation model is deliberately anti-viral: there is no global timeline and no algorithmic feed. You publish public lists for anyone, follow users whose taste you trust, and mark trusted users whose bookmarks become part of your search range - extendable to trusted-users-of-trusted-users for a wider net. Public bookmarks post to Mastodon timelines, and WebFinger lookup makes your handle discoverable across fediverse platforms. Operationally it is about as light as web software gets: a single binary with all assets baked in, integrated TLS so it can run without a reverse proxy, PostgreSQL as the only dependency, OIDC single sign-on, and a bookmarklet for one-click saves. Note the project is alpha: single-user instances only, and all data should be considered public. AGPL-3.0 licensed, built with Rust and htmx.

Deploy
Open-Meteo screenshot thumbnail

Open-Meteo

High-resolution weather forecasts became a free commodity because of Open-Meteo - and this deployment puts the whole open-source engine on your own infrastructure. The public open-meteo.com service aggregates national weather models (NOAA GFS, DWD ICON, ECMWF, Meteo-France, and others) into one consistent JSON interface; self-hosting gives you that same API without rate limits, third-party dependency, or usage metering. The architecture is two cooperating services: the API server exposes forecast endpoints fully compatible with Open-Meteo query parameters - latitude, longitude, hourly and daily variables like temperature, precipitation, wind, and radiation - while a background sync worker downloads fresh weather model data on a configurable interval into a shared persistent volume at /app/data, so forecasts stay current and survive restarts without re-downloading. You control which weather models to mirror, which variables to store, how much historical depth to keep, and how often to refresh - meaning a lean deployment can sync only the model and region you actually query. Responses are plain HTTP/JSON, so integration with dashboards, Home Assistant-style automations, agricultural monitoring, IoT fleets, or any application takes minutes. For anyone making thousands of forecast calls a day, replacing a metered weather API with your own instance turns a recurring bill into a flat infrastructure cost.

Deploy
Apprise-API screenshot thumbnail

Apprise-API

One REST call, 130+ notification services: Apprise API wraps the well-known Apprise library in a lightweight Django/Gunicorn microservice, so "send an alert" works the same whether it goes to Slack, Discord, Telegram, Teams, email, SMS, Pushover, or PagerDuty - each addressed by a simple URL scheme. It solves the credential-sprawl problem cleanly: instead of embedding provider tokens in every app, cron job, and CI pipeline, you centralize them here and everything else just POSTs a body and title. Two modes cover every workflow. Stateless calls to /notify carry target URLs in the payload (or fall back to a default set via APPRISE_STATELESS_URLS); stateful mode stores named configurations server-side under keys, so /notify/{KEY} fans out to everything registered - with tag-based routing (comma for OR, space for AND) selecting which endpoints fire per message. Messages take info, success, warning, or failure types in text, Markdown, or HTML, with attachments up to a configurable size. A built-in web UI manages and tests configurations, APPRISE_CONFIG_LOCK makes the store read-only, service allow/deny lists restrict which schemes work, webhook remapping adapts third-party payloads, and a Prometheus /metrics endpoint watches the gateway itself.

Deploy
Photofield screenshot thumbnail

Photofield

Instead of paging through albums, Photofield lays a whole photo library out on one zoomable canvas, where thousands of thumbnails sharpen into full-resolution pictures as you zoom. Collections come straight from directories named in a configuration file. One setting turns every subfolder into its own collection. Pick a layout per collection: album grouped by date, timeline with month markers, wall, map, highlights with dates and place names, or flex. Sort oldest first, newest first, or shuffled hourly, daily, weekly, or monthly. Tiles load progressively, and an info drawer shows the date, file name, and dimensions. A right-click menu opens or copies an image, copies its link, or finds similar images. Originals are never modified, so a read-only mount is safe. Indexing runs at up to 10,000 files per second on a fast SSD with a warm cache. JPEG, PNG, AVIF, HEIC, DNG, GIF, MP4, and MOV files are recognized. Place names resolve from an embedded database, with no external lookups. The optional photofield-ai companion adds search by words like beach sunset or cat eyes, plus a Faces layout of detected faces. Alpha tagging lets you label photos. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
JupyterLab screenshot thumbnail

JupyterLab

Exploratory data work, teaching material, and research code all live in the same browser tab with JupyterLab, the web workspace of Project Jupyter. Notebooks combine runnable code cells, Markdown, and rich output such as images, JSON, and Vega charts, and they use the same notebook format as the classic Jupyter Notebook. Any Jupyter kernel can execute the code, so Python, R, and other languages share one interface, and code inside plain text files such as Markdown or LaTeX can be run interactively as well. Tabs and splitters arrange documents side by side, and a notebook's cell outputs can be mirrored into their own tab to build a simple dashboard with interactive controls. Code consoles serve as scratchpads linked to a notebook kernel, while full terminals run system shells such as bash on the server. A visual debugger offers breakpoints, a call stack, and a variable explorer for kernels that support the Jupyter debug protocol. Markdown, CSV, and Vega documents show a live preview as they are edited, and built-in viewers handle images, JSON, and PDF files. The Extension Manager installs themes, editors, and renderers from PyPI, and real-time collaboration becomes available by adding the jupyter-collaboration extension. Access is protected by a generated token unless a password is set. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. BSD-3-Clause licensed.

Deploy
GrandNode screenshot thumbnail

GrandNode

GrandNode lets you run one shop, a dozen regional storefronts, or a full marketplace from a single installation, with a back office for every role involved. Each store gets its own domain, theme, currencies, languages, and settings, and a store manager panel limits staff to the catalog, orders, and customers of their own store. Outside sellers join through a vendor panel where they manage their own products and orders. The catalog handles attributes and combinations, bundles, grouped items, downloads, date-based reservations, and auctions. B2B selling adds customer groups, tier prices, sales employees, and approvals. Checkout accepts payments through plugins such as Stripe Checkout, Braintree, and cash on delivery, with shipping by fixed rate, weight, or pickup point and tax rules by country, state, or zip code. Marketing tools include coupon codes, discount rules, loyalty points, gift vouchers, customer segments, newsletter campaigns, and push notifications. Clean URLs, sitemaps, and structured data with price and availability help search engines read your products. Pages, blog posts, news, and sliders cover content, and a REST API serves headless storefronts and ERP or CRM integrations. 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.

Deploy
Freshrss screenshot thumbnail

Freshrss

Where Miniflux strips reading down, FreshRSS gives you knobs - the feature-rich pole of self-hosted RSS, comfortable with thousands of feeds. It's a multi-user PHP aggregator (host family and friends on one instance, with an anonymous reading mode) with the reading workflow refined over a decade: favorites, custom tags, powerful filter and search queries, three reading views, and statistics that reveal each site's publishing frequency - useful for pruning subscriptions. Two properties make it the standard choice. First, the Google Reader-compatible API (plus a Fever API) syncs with virtually every serious RSS client - Reeder, NetNewsWire, ReadYou, FeedMe, Fluent Reader - so your phone reads from your server. Second, native WebSub support means compatible sources (WordPress, Blogger, Medium, Friendica) push new articles instantly instead of waiting for polling. A 50+ extension ecosystem adds what truncated feeds omit - full-text content fetching, reading-time estimates, trending views, auto-unsubscribe for dead feeds - alongside community themes and custom CSS. OPML import/export keeps subscriptions portable, a CLI handles administration, and article sharing posts to many services. AGPL-licensed, running on SQLite, MySQL, or PostgreSQL. Feedly Pro's feature set, minus Feedly's subscription and its algorithms.

Deploy
Upvote RSS screenshot thumbnail

Upvote RSS

The antidote to doomscrolling: Upvote RSS turns Reddit, Hacker News, Lemmy, Lobsters, PieFed, Mbin, and trending GitHub repositories into calm, filtered RSS feeds. The MIT-licensed PHP app's killer feature is intelligent filtering: beyond simple score thresholds, the "posts per day" filter analyzes a community's recent history and computes the score cutoff that yields your target volume - say, exactly three r/technology posts daily - while a percentage-based threshold mode stays consistent as communities grow. Feeds are rich, not bare links: parsed full-article content via Readability (with optional Readability.js, Mercury, or Browserless for JavaScript-heavy pages), embedded videos and image galleries, top-voted comments with pinned-moderator filtering, scores, reading-time estimates, and optional AI summaries through Ollama, OpenAI, Gemini, Anthropic, Mistral, DeepSeek, or any OpenAI-compatible endpoint - with automatic provider fallback. A web UI builds the feed URL interactively with live preview; paste the result into any RSS reader. Reddit support includes custom domains like old.reddit.com plus NSFW filtering and blurring. Caching via filesystem, Redis, or APCu keeps repeated fetches cheap and avoids re-running paid summarizations.

Deploy
Motor Admin screenshot thumbnail

Motor Admin

Stop building internal tools and ship your actual product - Motor Admin exists for exactly that. Point this Ruby/Vue application at a PostgreSQL, MySQL, MariaDB, or SQL Server database and it generates a complete CRUD admin panel from your schema in under a minute - search, filters, create, update, delete, all through a polished UI, with every customization done through in-app settings rather than a DSL or boilerplate code. What elevates it beyond CRUD generators is the business-intelligence half: write SQL queries (with variables) and render results as tables, numbers, line/bar/ pie charts, funnels, or markdown; organize reports into shared dashboards; and attach queries and dashboards directly to resource pages as tabs, so an order record shows its revenue history in place. Operations beyond CRUD are covered by custom actions and a WYSIWYG forms builder that posts to your existing REST or GraphQL APIs - send a refund, trigger an email, whatever your backend exposes. Email alerts deliver scheduled reports, Slack sends personalized report alerts, and intelligence search spans all resources. Governance is included: role-based permissions with row- and column-level control (CanCanCan), an audit log of admin activity, multiple database connections, and configuration sync between staging and production. Mobile-optimized, AGPL-licensed, also available as a Rails engine.

Deploy
Moocup screenshot thumbnail

Moocup

Drop your screenshot, a base style is applied, style it however you wish, and export - "that's basically it," says Moocup's own author, and the description holds. The workflow is genuinely seconds long. Drag an image in and it lands on an attractive backdrop immediately; from there you adjust backgrounds, gradients, padding, borders, shadows, and framing with live preview until it matches your taste, then export a high-quality image ready for a portfolio page, README, blog post, tweet, or slide deck. There are no accounts, no watermarks, and no upload to anyone's cloud - as a self-hosted static app, your screenshots never leave your infrastructure, which matters when the screenshot shows a proprietary dashboard or unreleased product. It runs entirely in the browser from a tiny nginx container, works on any device, and requires zero design skill: the smart defaults do the heavy lifting, and everything else is optional tinkering.

Deploy
Statping-ng screenshot thumbnail

Statping-ng

A status page and uptime monitor in one Go binary: Statping-ng - the actively maintained fork of Statping - replaces the UptimeRobot-plus-Statuspage combo with a ~20 MB Docker image using under 50 MB of RAM. It checks services over HTTP, TCP, UDP, ICMP ping, and gRPC health checks on configurable intervals, with per-service timeouts, expected status codes, POST requests with custom JSON bodies, SSL verification, and failure thresholds before alerting. The public status page is the differentiator against plain monitors: visitors see live status, uptime percentages, and latency charts grouped into service categories, with incident announcements and scheduled-maintenance messages you publish from the dashboard - and Sass-based custom styling matches the page to your brand rather than a vendor template. When something fails, notifiers fire immediately: Slack, Discord, Telegram, SMTP email, PagerDuty, Twilio SMS, Pushover, and custom webhooks, each testable before saving. Because notifiers are single Go files, the plugin system makes new channels straightforward. A RESTful API manages services and reads uptime data programmatically, and the free Statping mobile app connects to your server via QR code for on-the-go monitoring. Data persists to SQLite, MySQL, or PostgreSQL. Point it at internal services too - anything the container can reach is monitorable.

Deploy
Owncloud screenshot thumbnail

Owncloud

The project that proved organizations could have Dropbox-style convenience with complete data ownership: ownCloud is the original open-source file sync and share platform - the codebase Nextcloud later forked from. This deployment runs the classic ownCloud Server (PHP over PostgreSQL or MariaDB, with Redis caching), the battle-tested edition trusted across enterprises, universities, and public institutions worldwide. The core loop: store files on your server, sync them via desktop clients for Windows, macOS, and Linux plus iOS and Android apps, and access everything through the web interface or standard WebDAV. Sharing is granular - internal users and groups, external recipients via public links with passwords and expiration dates, and federated sharing that connects separate ownCloud instances into one network. Security controls include file firewall rules, multi-factor authentication, encryption, and detailed audit-friendly lifecycle management with versioning and trash-bin recovery. An app marketplace extends the platform, and Web Office integrations bring collaborative document editing through Collabora Online, OnlyOffice, or Microsoft Office Online directly into your files. LDAP and Active Directory integration slots it into existing identity infrastructure. For teams that need a proven, self-hosted alternative to Dropbox or Google Drive - where compliance demands knowing exactly which disk your data sits on - ownCloud remains a foundational choice.

Deploy
Chatpad screenshot thumbnail

Chatpad

Why should your chat history live on someone else's servers? Chatpad AI - a React/TypeScript front end for the OpenAI API, built on the Mantine component library - is designed around that question. Enter your own OpenAI API key and start chatting with GPT models; every conversation, prompt, and setting is stored locally in your browser via DexieJS over IndexedDB, with no tracking, no cookies, and no backend database at all. That architecture is the point - the Docker image is just Nginx serving static files, making it one of the lightest AI deployments in the catalog, and pay-per-token API pricing typically undercuts a ChatGPT Plus subscription for moderate use. The interface earns its "premium quality" tagline with the details: a persona selector that switches communication styles per conversation, a saved-prompts library for messages you reuse constantly, organized chat history, and full data export/import so conversations move between browsers or into backups as files you control. A JSON config file customizes defaults - models, API endpoints, UI options - without rebuilding the image. AGPL-licensed, with desktop builds available upstream. For teams that want ChatGPT's utility with a self-hosted, zero-telemetry footprint, Chatpad is the minimal, sane answer.

Deploy
Chevereto screenshot thumbnail

Chevereto

Build your own image and video sharing site, with public galleries, private albums, and embeddable links, on a server you control. Uploads arrive by drag and drop, clipboard paste, image URL, camera, ShareX, or API, in AVIF, JPEG, PNG, GIF, WebP, BMP, MOV, MP4, and WebM, and chunked transfers handle large files. Lossless JPEG handling fixes orientation and can strip EXIF data. Duplicate detection catches repeat uploads. Tags are created on the fly with autocomplete, camera models become tags automatically, and albums nest into sub-albums with covers, privacy levels, and passwords. Categories, search, and explore views help visitors find things; a bulk importer brings in folders of existing media. Each file gets viewer, direct, thumbnail, and medium links plus HTML, Markdown, and BBCode snippets with one-click copy, and oEmbed lets other sites preview a link. Roles split admin, manager, and user duties, profiles can be private, and two-factor authentication protects accounts. Files sit on local disk or S3-compatible storage, optionally served through a CDN URL. A dashboard tracks usage, color palettes and custom CSS and JavaScript restyle the site, and a single-profile mode suits a personal portfolio. 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.

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
Measure screenshot thumbnail

Measure

Measure is an open-source mobile monitoring platform that shows mobile teams what broke, how often, and what the user did right before it happened. Crashes, ANRs, and app hangs are grouped into single issues, and each fatal error arrives with a session replay: an ordered timeline of screens opened, taps, network calls, logs, and lifecycle events, with CPU and memory charts alongside screenshots and wireframe layout snapshots. Bug reports can be filed with a device shake or an SDK call and carry the same history of user actions. Performance traces and spans break slow startups and screens into steps, and network monitoring ranks the slowest and most error-prone endpoints. Funnels built from custom events show conversion and drop-off at each step, with a Friction view that ties every step to the crashes, errors, slow traces, and network requests users hit there. User journeys chart how people move between screens, and Adaptive Capture changes sampling, replay length, and screenshot masking remotely, with no new app build. SDKs cover Android, iOS, Flutter, React Native, and Kotlin Multiplatform. Teams sign in with Google or GitHub, invite colleagues by email, and send alerts to Slack, and an optional Measure Agent lets a coding agent or Slack help debug production issues. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. Apache-2.0 licensed.

Deploy
PsiTransfer screenshot thumbnail

PsiTransfer

Upload files, get a share link, let it expire: PsiTransfer is a self-hosted WeTransfer with no accounts, no logins, and no third-party cloud with size caps and metadata harvesting. The engineering focus is large files over imperfect networks. Uploads use the tus.io resumable protocol, so a dropped connection on a multi-gigabyte video resumes exactly where it stopped once you're back online; downloads support HTTP range headers for the same resilience, and everything streams, so file size is bounded by your disk rather than memory. Files organize into upload buckets with retention you control: expire after a set time (up to weeks) or after a one-time download, with automatic cleanup when links lapse. Recipients need nothing installed - they open the link, preview files in modal views, and grab everything as a zip or tar.gz archive with one click. Buckets can be password-protected (AES-encrypted download lists), and security-through-obscurity is done properly: bucket URLs use hashed UUID tokens and stored filenames are replaced with UUIDs. An optional admin page (enabled by setting an admin password) lists bucket information and storage. The Vue.js frontend ships under 100 KB gzipped and is fully responsive. Honest caveat from the author: no end-to-end payload encryption yet. BSD-licensed, Docker-ready.

Deploy
TimeTagger screenshot thumbnail

TimeTagger

Freelancers, consultants, and solo workers get an accurate record of their hours from TimeTagger, a time tracker that logs tagged tasks on an interactive timeline and summarizes them as billable reports. Press S, type a description, and hit Enter to start the clock without the mouse, or drag across the timeline to log finished work. Hashtags in a description become autocompleting tags, with no projects to set up. Renaming a tag updates every record that uses it. Drag a record's edges to fix its times, then zoom the timeline out to a week or month with mouse, touch, or arrow keys. An overview panel totals time per tag combination for the selected range, and the Report button saves it as a client-ready PDF or a CSV with decimal hours. Daily, weekly, and monthly targets track progress toward your goals, and an optional Pomodoro timer alternates work and break periods with an alarm and a notification. Settings add a dark theme, local date notations, a Monday-to-Friday week, and a day offset for night shifts. The interface adapts from desktop to phone, installs as a progressive web app, works offline, and syncs records across devices once the connection returns. A web API and a command-line client let you query, create, and update records from scripts or the terminal. 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.

Deploy