Immich Insights
Immich Insights turns the photo library you already keep in Immich into a year-in-review style dashboard of how you actually shoot. Connect it with your own Immich API key and it reads your asset metadata into a local snapshot, without copying your original photos, then builds the overview Immich itself never shows: total photos and videos, storage used, favorites, albums, and your newest additions. Pick any year or a custom date range and see that period's shooting volume, favorites, albums, and devices. Camera statistics break your library down by device and manufacturer, with leaderboards you can correct when the same camera appears under different names. Exposure analysis shows your ISO, focal length, and shutter speed distributions, the focal lengths you reach for most, and how your settings shift by hour of day. Rhythm charts map your shooting by month, weekday, and hour, with a calendar heatmap of your most active days. A zoomable timeline marks the moments that matter: first photo, a new device joining the library, your longest gap, your busiest day ever. People and location views count faces and mapped places by country and continent, and a photography profile scores your habits. Clicking any chart value opens the matching photo thumbnails, and reports export as PDF, CSV, or JPG. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.
Umami
No cookies, no fingerprinting, no cross-site tracking, no personal data collection - Umami's privacy contract is the foundation of the open-source web analytics platform. IP addresses are hashed rather than stored, which makes it GDPR, CCPA, and PECR compliant by default - the consent banner can come off the site entirely. The tracking script is under 2 KB, roughly 20x smaller than Google Analytics, so measurement stops being a page-weight tax. The dashboard covers the core metrics - pageviews, visitors, bounce rate, visit duration, referrers, browsers, devices, and countries - with any date range and filtering by country or device. Beyond pageviews, custom events track clicks, form submissions, and signups via a data attribute or one JavaScript call, and advanced reports add funnels, user journeys, retention and cohort analysis, goals, and automatic UTM campaign tracking. Anonymous session views show individual visitor activity without identifying anyone. Teams share websites with role-based access, one instance manages unlimited sites, and a full REST API exposes every metric programmatically. MIT-licensed and self-hosted on PostgreSQL or MySQL via Docker, your analytics data never leaves your infrastructure.
Jetlog
A personal flight logbook you host yourself, Jetlog draws every route you have flown on a pannable world map and turns the totals into charts. The home page opens with counts of flights, airports, hours, distance, and countries above that map, where dots mark visited airports and lines trace each trajectory. Settings let markers and lines grow with visit frequency and shade the countries where you have landed. Logging a flight takes only two airports and a date. Type a flight number and press Fetch to pre-fill the origin, destination, and airline, and a utility links connection flights automatically. Duration and distance are calculated for you and stay editable, with an option to use airport time zones. The All Flights table lists route, times, duration, distance, seat, class, and airline with filters and configurable columns, and each flight opens a detail page with airport data, a route map, tail number, and aircraft. A Statistics page charts flights per month, cumulative distance, most visited airports, most common airlines, ticket class, and seat for any time frame. History arrives through MyFlightRadar24 or custom CSV imports and leaves as CSV or iCal. Family members can share one install with separate logbooks, an admin manages the accounts, and the responsive layout works on a phone at the gate. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. GPL-2.0 licensed.
Maloja
Maloja's one job is to be your own scrobble database, charting what you listen to from a server you control. Players and media servers that speak the native JSON API or a ListenBrainz, GNU FM, or Audioscrobbler 1.2 compatible protocol can scrobble with their own API keys. Vinyl sessions and background music can be logged by hand on a manual scrobble page. Existing history moves in from a Last.fm export, a Spotify data export, a ListenBrainz export, or another Maloja instance, while a proxy option forwards new scrobbles to Last.fm or a second Maloja server. The start page ranks top artists, tracks, and albums for today, this week, this month, this year, or all time, alongside a pulse chart of listening volume and a feed of the latest scrobbles. Artist and album pages add performance charts that follow chart position over time. Collaborations credit every artist on a track, and subunits, solo projects, and main acts can be combined or separated in charts at any time. Gold, Platinum, and Diamond awards mark tracks and albums that pass scrobble thresholds you set. Artwork can come from Last.fm, Spotify, Deezer, TheAudioDB, or MusicBrainz lookups, or from images you upload yourself. Week start, timezone, theme, and tile layout are all settings, and an API explorer lists endpoints for scripts. 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.
Wakapi
Its author, a student and WakaTime fan, didn't want to pay $9/month for data about his own keystrokes - so Wakapi was born, a self-hosted, WakaTime-compatible backend for coding statistics. The compatibility is the killer design decision: the official WakaTime plugins for VS Code, JetBrains IDEs, Vim, and dozens of other editors work unmodified - just point the plugin's API URL at your Wakapi instance with your personal key, and heartbeats flow to your server instead of a third party's. Duration inference matches WakaTime's own algorithm, with a configurable timeout (10 minutes by default). From that stream Wakapi builds statistics and plots across projects, languages, editors, hosts, and operating systems, plus the fun extras: public leaderboards (optionally login-gated, with configurable aggregation windows), badges for GitHub readmes, and weekly email reports. A REST API serves your data programmatically, Prometheus export feeds your existing Grafana, and a WakaTime relay mode can mirror heartbeats to both services during migration - with one-click import of historical WakaTime data. Written in Go, it is lightning fast and light enough for the smallest instance, storing to SQLite, PostgreSQL, or MySQL, with configurable data retention for GDPR peace of mind. Deliberately smaller than WakaTime, deliberately yours.