625d38645c
gates / gates (push) Successful in 5m54s
HEADER. logo.png carries its OWN "felhom.eu" lettering under the mark, so
putting it next to a typed <span class="logo-text"> said the name twice and
squeezed the mark down to 40px to make room. Now:
- the mark alone, bigger: assets/logo_notext.svg at 54px (44px under 600px).
Vector, so it stays crisp. Its two <text> elements are EMPTY, so R-916's
missing-font problem does not apply to this file -- checked, not assumed.
- the name beside it is the brand's OWN lettering, cropped from logo.png to
the new assets/logo-wordmark.png (632x108, tight bbox).
Why an image and not text: the wordmark's face is "M+ 2c"/"Vremena Grotesk"
(R-916). Nothing here has it, and the site deliberately loads NO external
font -- the privacy notice published this morning states exactly that, so
pulling in Google Fonts to match a logo would have made a published claim
false. Using the artwork is also what the Facebook covers already do. The
white/blue split the operator asked for is in the artwork itself.
Accessibility kept: the mark is alt="" aria-hidden (decorative), the wordmark
carries alt="felhom.eu", so the link still has its accessible name.
FOOTER. The legal links were unstyled, so the browser painted them default
blue and PURPLE once visited. They now follow the site's own convention
(.page-kapcsolat .sidebar-card a): --blue-bright, no underline, underline on
hover. :visited is pinned to the same colour deliberately -- a legal link
that changes colour after one read looks like it stopped working. The same
fix applied to .legal a on the two new legal pages, which had --blue instead
of --blue-bright.
18 of 18 pages carry the new lockup; the English pages keep their /en/ logo
href. site.css cache-bust v6 -> v7 on all 18, per the website rules. Verified
rendered in a browser on both a Hungarian and an English page: both images
load, no .logo-text left anywhere, footer links computed rgb(46,168,245).
site_gates OK (nav/footer per language, BOM, cache-busting, twins).
1304 lines
123 KiB
HTML
1304 lines
123 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>Apps to install — 56 apps for a home server | Felhom.eu</title>
|
||
<meta name="description" content="Nextcloud, Immich, Jellyfin, Vaultwarden — 56 apps for your home server in Hungary, almost all of them open source. Alternatives to Google Drive, iCloud Photos and Spotify.">
|
||
|
||
<meta name="keywords" content="Nextcloud, Immich, Jellyfin, Plex, Sonarr, Radarr, Vaultwarden, open-source apps, self-hosted apps, home server apps, Google Photos alternative, Dropbox alternative">
|
||
<meta name="robots" content="index, follow">
|
||
<link rel="canonical" href="https://felhom.eu/en/apps">
|
||
<link rel="alternate" hreflang="hu" href="https://felhom.eu/alkalmazasok">
|
||
<link rel="alternate" hreflang="en" href="https://felhom.eu/en/apps">
|
||
<link rel="alternate" hreflang="x-default" href="https://felhom.eu/alkalmazasok">
|
||
|
||
<meta property="og:type" content="website">
|
||
<meta property="og:url" content="https://felhom.eu/en/apps">
|
||
<meta property="og:title" content="56 apps for a home server">
|
||
<meta property="og:description" content="Nextcloud, Immich, Jellyfin, Vaultwarden and many more. Files, photos, media, documents — all from your own server.">
|
||
<meta property="og:image" content="https://felhom.eu/assets/og-image.png">
|
||
<meta property="og:locale" content="en_GB">
|
||
<meta property="og:site_name" content="Felhom.eu">
|
||
|
||
<meta name="twitter:card" content="summary_large_image">
|
||
<meta name="twitter:title" content="56 apps for a home server">
|
||
<meta name="twitter:description" content="Nextcloud, Immich, Jellyfin and many more — from your own server.">
|
||
<meta name="twitter:image" content="https://felhom.eu/assets/og-image.png">
|
||
|
||
<script type="application/ld+json">
|
||
{
|
||
"@context": "https://schema.org",
|
||
"@type": "ItemList",
|
||
"name": "Felhom.eu — Apps to install",
|
||
"description": "Self-hosted apps for a home server, almost all of them open source",
|
||
"numberOfItems": 56,
|
||
"itemListElement": [
|
||
{"@type": "ListItem", "position": 1, "name": "Nextcloud", "description": "Files and office suite"},
|
||
{"@type": "ListItem", "position": 2, "name": "Immich", "description": "Photos and videos (a Google Photos alternative)"},
|
||
{"@type": "ListItem", "position": 3, "name": "Jellyfin", "description": "Media player and server"},
|
||
{"@type": "ListItem", "position": 4, "name": "Vaultwarden", "description": "Password manager (Bitwarden compatible)"},
|
||
{"@type": "ListItem", "position": 5, "name": "Paperless-ngx", "description": "Document management"}
|
||
]
|
||
}
|
||
</script>
|
||
<!-- shared assets: bump ?v= together on any site.css/icons.svg change -->
|
||
<link rel="stylesheet" href="/assets/site.css?v=7">
|
||
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
|
||
<script defer src="/assets/gallery.js?v=2"></script>
|
||
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
|
||
</head>
|
||
<body class="page-alkalmazasok">
|
||
<nav>
|
||
<div class="container">
|
||
<a href="/en/" class="logo">
|
||
<img class="logo-mark" src="/assets/logo_notext.svg" alt="" aria-hidden="true">
|
||
<img class="logo-word" src="/assets/logo-wordmark.png" alt="felhom.eu">
|
||
</a>
|
||
<ul class="nav-links">
|
||
<li><a href="/en/#services">Services</a></li>
|
||
<li><a href="/en/apps" class="active">Apps</a></li>
|
||
<li><a href="/en/technology">Technology</a></li>
|
||
<li><a href="/en/backups">Backups</a></li>
|
||
<li><a href="/en/faq">FAQ</a></li>
|
||
<li><a href="/en/contact">Contact</a></li>
|
||
<li class="lang-globe-li"><details class="lang-globe"><summary class="lang-globe-btn" aria-label="Language" title="Language"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-globe"/></svg></summary><ul class="lang-globe-menu"><li><a href="/alkalmazasok" lang="hu" hreflang="hu" class="lang-globe-item">Magyar</a></li><li><a href="/en/apps" lang="en" hreflang="en" class="lang-globe-item current" aria-current="true">English</a></li></ul></details></li>
|
||
</ul>
|
||
<button class="hamburger" id="hamburger" aria-label="Open menu" aria-expanded="false">
|
||
<span class="hamburger-box">
|
||
<span class="hamburger-line"></span>
|
||
<span class="hamburger-line"></span>
|
||
<span class="hamburger-line"></span>
|
||
</span>
|
||
</button>
|
||
</div>
|
||
</nav>
|
||
<div class="mobile-overlay" id="mobileOverlay"></div>
|
||
<main>
|
||
<section class="page-header">
|
||
<div class="container">
|
||
<h1>Apps to <span>install</span></h1>
|
||
<p>Choose from 56 apps. Almost all of them are free, open-source software, and every one runs on your own server.</p>
|
||
<div class="disclaimer-banner">
|
||
<h3><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-info"/></svg> Good to know</h3>
|
||
<ul>
|
||
<li>Almost all of the apps are <strong>open source</strong> – anyone can check how they work. The exceptions are marked on the card: <em>Closed source</em> (Plex, Emby), <em>Restricted licence</em> (the source can be read, but the licence limits its use), <em>Felhom's own</em> (built by us)</li>
|
||
<li>Our service covers <strong>installing</strong> the apps, not developing or selling them</li>
|
||
<li>The original developers are responsible for how the apps work and for their updates</li>
|
||
<li>If an app is missing, we look at whether it can join the catalog – <a href="/en/contact">just ask!</a></li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
<section class="apps-section">
|
||
<div class="container">
|
||
|
||
<!-- ==================== -->
|
||
<!-- 1. FILES & OFFICE -->
|
||
<!-- ==================== -->
|
||
<div class="category-section" id="files">
|
||
<div class="category-header">
|
||
<span class="category-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-folder"/></svg></span>
|
||
<h2>Files & Office</h2>
|
||
<span class="app-count">6 apps + 1 built in</span>
|
||
</div>
|
||
<div class="app-grid">
|
||
<!-- Nextcloud -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/nextcloud-logo.svg" alt="Nextcloud" class="app-logo">
|
||
<div class="app-title-area"><h3>Nextcloud</h3><span class="app-tagline">Your own Google Drive</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A full cloud service on your own server. File sync, calendar, contacts, document editing and a great many add-ons.</p>
|
||
<div class="app-features"><span class="app-feature">File sync</span><span class="app-feature">Calendar</span><span class="app-feature">Documents</span><span class="app-feature">Mobile app</span></div>
|
||
<a href="/assets/nextcloud-screenshot-1.webp" data-gallery="nextcloud" class="app-shot-link"><img src="/assets/nextcloud-screenshot-1.webp" alt="Nextcloud screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/nextcloud-screenshot-2.webp" data-gallery="nextcloud" data-alt="Nextcloud screenshot 2" hidden></a>
|
||
<a href="/assets/nextcloud-screenshot-3.webp" data-gallery="nextcloud" data-alt="Nextcloud screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/nextcloud/server" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- FileBrowser -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/filebrowser-logo.svg" alt="FileBrowser" class="app-logo">
|
||
<div class="app-title-area"><h3>FileBrowser</h3><span class="app-tagline">Simple web file manager</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A light, fast web file manager, built into every Felhom box. Browse, upload and share your files from anywhere, in a modern interface.</p>
|
||
<div class="app-features"><span class="app-feature">Drag & drop</span><span class="app-feature">Sharing</span><span class="app-feature">Preview</span><span class="app-feature">Search</span></div>
|
||
<a href="/assets/filebrowser-screenshot-1.webp" data-gallery="filebrowser" class="app-shot-link"><img src="/assets/filebrowser-screenshot-1.webp" alt="FileBrowser screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/filebrowser-screenshot-2.webp" data-gallery="filebrowser" data-alt="FileBrowser screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/filebrowser/filebrowser" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source · Built in</span>
|
||
</div>
|
||
</div>
|
||
<!-- Gokapi -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/gokapi-logo.png" alt="Gokapi" class="app-logo">
|
||
<div class="app-title-area"><h3>Gokapi</h3><span class="app-tagline">Temporary file sharing</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A lightweight file-sharing server with expiry dates and download limits. Good for sharing large files quickly and safely.</p>
|
||
<div class="app-features"><span class="app-feature">Expiry date</span><span class="app-feature">Download limit</span><span class="app-feature">Password protection</span></div>
|
||
<a href="/assets/gokapi-screenshot-1.webp" data-gallery="gokapi" class="app-shot-link"><img src="/assets/gokapi-screenshot-1.webp" alt="Gokapi screenshot" class="app-screenshot"></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Forceu/Gokapi" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Zipline -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/zipline-logo.png" alt="Zipline" class="app-logo">
|
||
<div class="app-title-area"><h3>Zipline</h3><span class="app-tagline">ShareX/Flameshot server</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A modern file and image sharing server with many features. Good for sharing screenshots, shortening links and keeping text snippets.</p>
|
||
<div class="app-features"><span class="app-feature">Screenshots</span><span class="app-feature">Link shortener</span><span class="app-feature">Gallery</span><span class="app-feature">API</span></div>
|
||
<a href="/assets/zipline-screenshot-1.webp" data-gallery="zipline" class="app-shot-link"><img src="/assets/zipline-screenshot-1.webp" alt="Zipline screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/zipline-screenshot-2.webp" data-gallery="zipline" data-alt="Zipline screenshot 2" hidden></a>
|
||
<a href="/assets/zipline-screenshot-3.webp" data-gallery="zipline" data-alt="Zipline screenshot 3" hidden></a>
|
||
<a href="/assets/zipline-screenshot-4.webp" data-gallery="zipline" data-alt="Zipline screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/diced/zipline" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- OnlyOffice -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/onlyoffice-logo.svg" alt="OnlyOffice" class="app-logo">
|
||
<div class="app-title-area"><h3>OnlyOffice</h3><span class="app-tagline">An office suite in the browser</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A full office suite in your browser. Edit documents, spreadsheets and presentations, with very good Microsoft Office compatibility.</p>
|
||
<div class="app-features"><span class="app-feature">Documents</span><span class="app-feature">Spreadsheets</span><span class="app-feature">Presentations</span><span class="app-feature">Collaboration</span></div>
|
||
<a href="/assets/onlyoffice-screenshot-1.webp" data-gallery="onlyoffice" class="app-shot-link"><img src="/assets/onlyoffice-screenshot-1.webp" alt="OnlyOffice screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/onlyoffice-screenshot-2.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 2" hidden></a>
|
||
<a href="/assets/onlyoffice-screenshot-3.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 3" hidden></a>
|
||
<a href="/assets/onlyoffice-screenshot-4.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 4" hidden></a>
|
||
<a href="/assets/onlyoffice-screenshot-5.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 5" hidden></a>
|
||
<a href="/assets/onlyoffice-screenshot-6.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 6" hidden></a>
|
||
<a href="/assets/onlyoffice-screenshot-7.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 7" hidden></a>
|
||
<a href="/assets/onlyoffice-screenshot-8.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 8" hidden></a>
|
||
<a href="/assets/onlyoffice-screenshot-9.webp" data-gallery="onlyoffice" data-alt="OnlyOffice screenshot 9" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/ONLYOFFICE/DocumentServer" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- BentoPDF -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/bentopdf-logo.svg" alt="BentoPDF" class="app-logo">
|
||
<div class="app-title-area"><h3>BentoPDF</h3><span class="app-tagline">PDF toolkit (privacy first)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A privacy-first PDF toolkit with more than 70 tools. Merge, split, convert, compress, OCR, encrypt and sign, all in the browser, with nothing sent to a server.</p>
|
||
<div class="app-features"><span class="app-feature">70+ tools</span><span class="app-feature">Client-side</span><span class="app-feature">OCR</span><span class="app-feature">Convert</span></div>
|
||
<a href="/assets/bentopdf-screenshot-1.webp" data-gallery="bentopdf" class="app-shot-link"><img src="/assets/bentopdf-screenshot-1.webp" alt="BentoPDF screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/bentopdf-screenshot-2.webp" data-gallery="bentopdf" data-alt="BentoPDF screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/alam00000/bentopdf" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Papra -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/papra-logo.svg" alt="Papra" class="app-logo">
|
||
<div class="app-title-area"><h3>Papra</h3><span class="app-tagline">A minimal document archive</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A clean, modern document archive. Automatic tags, e-mail import and OCR text recognition: a digital filing cabinet, simple and tidy.</p>
|
||
<div class="app-features"><span class="app-feature">Auto tags</span><span class="app-feature">E-mail import</span><span class="app-feature">OCR</span><span class="app-feature">Modern UI</span></div>
|
||
<a href="/assets/papra-screenshot-1.webp" data-gallery="papra" class="app-shot-link"><img src="/assets/papra-screenshot-1.webp" alt="Papra screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/papra-screenshot-2.webp" data-gallery="papra" data-alt="Papra screenshot 2" hidden></a>
|
||
<a href="/assets/papra-screenshot-3.webp" data-gallery="papra" data-alt="Papra screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/papra-hq/papra" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ==================== -->
|
||
<!-- 2. MEDIA & ENTERTAINMENT -->
|
||
<!-- ==================== -->
|
||
<div class="category-section" id="media">
|
||
<div class="category-header">
|
||
<span class="category-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-tv"/></svg></span>
|
||
<h2>Media & Entertainment</h2>
|
||
<span class="app-count">15 apps</span>
|
||
</div>
|
||
<div class="app-grid">
|
||
<!-- Immich -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/immich-logo.svg" alt="Immich" class="app-logo">
|
||
<div class="app-title-area"><h3>Immich</h3><span class="app-tagline">A Google Photos alternative</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A fast, modern photo and video backup. Automatic upload from your phone, face and object recognition, sharing and memories.</p>
|
||
<div class="app-features"><span class="app-feature">Auto backup</span><span class="app-feature">Face recognition</span><span class="app-feature">Map</span><span class="app-feature">Mobile app</span></div>
|
||
<a href="/assets/immich-screenshot-1.webp" data-gallery="immich" class="app-shot-link"><img src="/assets/immich-screenshot-1.webp" alt="Immich screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/immich-screenshot-2.webp" data-gallery="immich" data-alt="Immich screenshot 2" hidden></a>
|
||
<a href="/assets/immich-screenshot-3.webp" data-gallery="immich" data-alt="Immich screenshot 3" hidden></a>
|
||
<a href="/assets/immich-screenshot-4.webp" data-gallery="immich" data-alt="Immich screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/immich-app/immich" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Jellyfin -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/jellyfin-logo.svg" alt="Jellyfin" class="app-logo">
|
||
<div class="app-title-area"><h3>Jellyfin</h3><span class="app-tagline">Media server (Netflix)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A free, open-source media server. Stream films, series and music from anywhere, to any device.</p>
|
||
<div class="app-features"><span class="app-feature">Streaming</span><span class="app-feature">Transcoding</span><span class="app-feature">Mobile app</span><span class="app-feature">TV app</span></div>
|
||
<a href="/assets/jellyfin-screenshot-1.webp" data-gallery="jellyfin" class="app-shot-link"><img src="/assets/jellyfin-screenshot-1.webp" alt="Jellyfin screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/jellyfin-screenshot-2.webp" data-gallery="jellyfin" data-alt="Jellyfin screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/jellyfin/jellyfin" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Plex -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/plex-logo.svg" alt="Plex" class="app-logo">
|
||
<div class="app-title-area"><h3>Plex</h3><span class="app-tagline">Media server (premium)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A popular media server with a polished interface. Films, series, music and photos in one place, with very good app support.</p>
|
||
<div class="app-features"><span class="app-feature">Streaming</span><span class="app-feature">Plex Pass</span><span class="app-feature">Intro skip</span><span class="app-feature">Watch Together</span></div>
|
||
<a href="/assets/plex-screenshot-1.webp" data-gallery="plex" class="app-shot-link"><img src="/assets/plex-screenshot-1.webp" alt="Plex screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/plex-screenshot-2.webp" data-gallery="plex" data-alt="Plex screenshot 2" hidden></a>
|
||
<a href="/assets/plex-screenshot-3.webp" data-gallery="plex" data-alt="Plex screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://www.plex.tv" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Website</a>
|
||
<span class="open-source-badge" style="color: var(--warn);"><img src="/assets/checkmark-yellow.svg" alt="">Closed source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Emby -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/emby-logo.svg" alt="Emby" class="app-logo">
|
||
<div class="app-title-area"><h3>Emby</h3><span class="app-tagline">Media server</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A personal media server with live TV and DVR support. An organised library, remote access, and sync for offline playback.</p>
|
||
<div class="app-features"><span class="app-feature">Streaming</span><span class="app-feature">Live TV</span><span class="app-feature">DVR</span><span class="app-feature">Sync</span></div>
|
||
<a href="/assets/emby-screenshot-1.webp" data-gallery="emby" class="app-shot-link"><img src="/assets/emby-screenshot-1.webp" alt="Emby screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/emby-screenshot-2.webp" data-gallery="emby" data-alt="Emby screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://emby.media" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Website</a>
|
||
<span class="open-source-badge" style="color: var(--warn);"><img src="/assets/checkmark-yellow.svg" alt="">Closed source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Navidrome -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/navidrome-logo.svg" alt="Navidrome" class="app-logo">
|
||
<div class="app-title-area"><h3>Navidrome</h3><span class="app-tagline">Music server (Spotify)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A light, modern music server. Stream your own music collection from anywhere; Subsonic-compatible, with many mobile apps.</p>
|
||
<div class="app-features"><span class="app-feature">Streaming</span><span class="app-feature">Subsonic API</span><span class="app-feature">Mobile apps</span><span class="app-feature">Playlists</span></div>
|
||
<a href="/assets/navidrome-screenshot-1.webp" data-gallery="navidrome" class="app-shot-link"><img src="/assets/navidrome-screenshot-1.webp" alt="Navidrome screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/navidrome-screenshot-2.webp" data-gallery="navidrome" data-alt="Navidrome screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/navidrome/navidrome" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Audiobookshelf -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/audiobookshelf-logo.svg" alt="Audiobookshelf" class="app-logo">
|
||
<div class="app-title-area"><h3>Audiobookshelf</h3><span class="app-tagline">Audiobooks & podcasts</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">An audiobook and podcast server. Details fetched for you, carry on where you stopped, and its own mobile apps.</p>
|
||
<div class="app-features"><span class="app-feature">Audiobooks</span><span class="app-feature">Podcasts</span><span class="app-feature">Sync</span><span class="app-feature">Mobile app</span></div>
|
||
<a href="/assets/audiobookshelf-screenshot-1.webp" data-gallery="audiobookshelf" class="app-shot-link"><img src="/assets/audiobookshelf-screenshot-1.webp" alt="Audiobookshelf screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/audiobookshelf-screenshot-2.webp" data-gallery="audiobookshelf" data-alt="Audiobookshelf screenshot 2" hidden></a>
|
||
<a href="/assets/audiobookshelf-screenshot-3.webp" data-gallery="audiobookshelf" data-alt="Audiobookshelf screenshot 3" hidden></a>
|
||
<a href="/assets/audiobookshelf-screenshot-4.webp" data-gallery="audiobookshelf" data-alt="Audiobookshelf screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/advplyr/audiobookshelf" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- MeTube -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/metube-logo.svg" alt="MeTube" class="app-logo">
|
||
<div class="app-title-area"><h3>MeTube</h3><span class="app-tagline">Download videos from a link</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Download a video or a playlist from its link, as video or audio only. The downloads go to your drive; you see them in the file browser and your media player. Only your family members reach it.</p>
|
||
<div class="app-features"><span class="app-feature">Video and audio</span><span class="app-feature">Playlists</span><span class="app-feature">To your drive</span><span class="app-feature">Family only</span></div>
|
||
<a href="/assets/metube-screenshot-1.webp" data-gallery="metube" class="app-shot-link"><img src="/assets/metube-screenshot-1.webp" alt="MeTube screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/metube-screenshot-2.webp" data-gallery="metube" data-alt="MeTube screenshot 2" hidden></a>
|
||
<a href="/assets/metube-screenshot-3.webp" data-gallery="metube" data-alt="MeTube screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/alexta69/metube" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Calibre-web -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/calibre-web-logo.svg" alt="Calibre-Web Automated" class="app-logo">
|
||
<div class="app-title-area"><h3>Calibre-Web Automated</h3><span class="app-tagline">E-book library</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A web interface for your Calibre library. Browse, read and download your e-books from anywhere, with Kindle support.</p>
|
||
<div class="app-features"><span class="app-feature">E-books</span><span class="app-feature">Send to Kindle</span><span class="app-feature">OPDS</span><span class="app-feature">Reader</span></div>
|
||
<a href="/assets/calibre-web-screenshot-1.webp" data-gallery="calibre-web" class="app-shot-link"><img src="/assets/calibre-web-screenshot-1.webp" alt="Calibre-Web Automated screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/calibre-web-screenshot-2.webp" data-gallery="calibre-web" data-alt="Calibre-Web Automated screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/crocodilestick/Calibre-Web-Automated" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Komga -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/komga-logo.svg" alt="Komga" class="app-logo">
|
||
<div class="app-title-area"><h3>Komga</h3><span class="app-tagline">Comics & manga server</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Manage and read comics, manga and magazines. A modern web reader, OPDS support and popular mobile apps.</p>
|
||
<div class="app-features"><span class="app-feature">Web reader</span><span class="app-feature">OPDS</span><span class="app-feature">Metadata</span><span class="app-feature">Tachiyomi</span></div>
|
||
<a href="/assets/komga-screenshot-1.webp" data-gallery="komga" class="app-shot-link"><img src="/assets/komga-screenshot-1.webp" alt="Komga screenshot" class="app-screenshot"></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/gotson/komga" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Grimmory -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/grimmory-logo.svg" alt="Grimmory" class="app-logo">
|
||
<div class="app-title-area"><h3>Grimmory</h3><span class="app-tagline">E-book library in the browser</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">E-books and comics in a tidy library, with covers and details. Read in the browser with your progress saved; Kobo and KOReader sync, and an OPDS catalog for reader apps. Only your family members reach it, each with their own sign-in.</p>
|
||
<div class="app-features"><span class="app-feature">Browser reader</span><span class="app-feature">Kobo sync</span><span class="app-feature">KOReader</span><span class="app-feature">OPDS</span></div>
|
||
<a href="/assets/grimmory-screenshot-1.webp" data-gallery="grimmory" class="app-shot-link"><img src="/assets/grimmory-screenshot-1.webp" alt="Grimmory screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/grimmory-screenshot-2.webp" data-gallery="grimmory" data-alt="Grimmory screenshot 2" hidden></a>
|
||
<a href="/assets/grimmory-screenshot-3.webp" data-gallery="grimmory" data-alt="Grimmory screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/grimmory-tools/grimmory" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Sonarr -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/sonarr-logo.svg" alt="Sonarr" class="app-logo">
|
||
<div class="app-title-area"><h3>Sonarr</h3><span class="app-tagline">Series manager</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Downloads and organises series for you. Follow your favourite series and new episodes are downloaded automatically.</p>
|
||
<div class="app-features"><span class="app-feature">Auto download</span><span class="app-feature">Calendar</span><span class="app-feature">Quality profiles</span><span class="app-feature">Integrations</span></div>
|
||
<a href="/assets/sonarr-screenshot-1.webp" data-gallery="sonarr" class="app-shot-link"><img src="/assets/sonarr-screenshot-1.webp" alt="Sonarr screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/sonarr-screenshot-2.webp" data-gallery="sonarr" data-alt="Sonarr screenshot 2" hidden></a>
|
||
<a href="/assets/sonarr-screenshot-3.webp" data-gallery="sonarr" data-alt="Sonarr screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Sonarr/Sonarr" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Radarr -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/radarr-logo.png" alt="Radarr" class="app-logo">
|
||
<div class="app-title-area"><h3>Radarr</h3><span class="app-tagline">Film manager</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Downloads and organises films for you. Make a wish list and the films arrive in your library on their own.</p>
|
||
<div class="app-features"><span class="app-feature">Wish list</span><span class="app-feature">Auto download</span><span class="app-feature">Quality profiles</span><span class="app-feature">Integrations</span></div>
|
||
<a href="/assets/radarr-screenshot-1.webp" data-gallery="radarr" class="app-shot-link"><img src="/assets/radarr-screenshot-1.webp" alt="Radarr screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/radarr-screenshot-2.webp" data-gallery="radarr" data-alt="Radarr screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Radarr/Radarr" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Seerr -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/seerr-logo.png" alt="Seerr" class="app-logo">
|
||
<div class="app-title-area"><h3>Seerr</h3><span class="app-tagline">Media request manager</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Ask for films and series the easy way. Family and friends can request titles, and the system downloads them for you.</p>
|
||
<div class="app-features"><span class="app-feature">Requests</span><span class="app-feature">Users</span><span class="app-feature">Notifications</span><span class="app-feature">Integrations</span></div>
|
||
<a href="/assets/seerr-screenshot-1.webp" data-gallery="seerr" class="app-shot-link"><img src="/assets/seerr-screenshot-1.webp" alt="Seerr screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/seerr-screenshot-2.webp" data-gallery="seerr" data-alt="Seerr screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Fallenbagel/jellyseerr" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- RoMM -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/romm-logo.svg" alt="RoMM" class="app-logo">
|
||
<div class="app-title-area"><h3>RoMM</h3><span class="app-tagline">ROM collection manager</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A good-looking web interface for your retro game ROM collection. Details and cover art fetched for you, sorted by platform, and playable in the browser.</p>
|
||
<div class="app-features"><span class="app-feature">ROM library</span><span class="app-feature">Metadata</span><span class="app-feature">EmulatorJS</span><span class="app-feature">IGDB</span></div>
|
||
<a href="/assets/romm-screenshot-1.webp" data-gallery="romm" class="app-shot-link"><img src="/assets/romm-screenshot-1.webp" alt="RoMM screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/romm-screenshot-2.webp" data-gallery="romm" data-alt="RoMM screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/rommapp/romm" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Crafty Controller -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/crafty-controller-logo.png" alt="Crafty Controller" class="app-logo">
|
||
<div class="app-title-area"><h3>Crafty Controller</h3><span class="app-tagline">Minecraft server manager</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A modern web manager for Minecraft servers. Run several servers from one interface, with automatic backups, player statistics and full remote access.</p>
|
||
<div class="app-features"><span class="app-feature">Multi-server</span><span class="app-feature">Backups</span><span class="app-feature">Console</span><span class="app-feature">Statistics</span></div>
|
||
<a href="/assets/crafty-controller-screenshot-1.webp" data-gallery="crafty-controller" class="app-shot-link"><img src="/assets/crafty-controller-screenshot-1.webp" alt="Crafty Controller screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/crafty-controller-screenshot-2.webp" data-gallery="crafty-controller" data-alt="Crafty Controller screenshot 2" hidden></a>
|
||
<a href="/assets/crafty-controller-screenshot-3.webp" data-gallery="crafty-controller" data-alt="Crafty Controller screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://gitlab.com/crafty-controller/crafty-4" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ==================== -->
|
||
<!-- 3. HOME & LIFESTYLE -->
|
||
<!-- ==================== -->
|
||
<div class="category-section" id="home">
|
||
<div class="category-header">
|
||
<span class="category-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-home"/></svg></span>
|
||
<h2>Home & Lifestyle</h2>
|
||
<span class="app-count">14 apps</span>
|
||
</div>
|
||
<div class="app-grid">
|
||
<!-- Home Assistant -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/home-assistant-logo.svg" alt="Home Assistant" class="app-logo">
|
||
<div class="app-title-area"><h3>Home Assistant</h3><span class="app-tagline">Smart home hub</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">The world's most popular open-source smart home platform. More than 3000 integrations, local control and automations, with no cloud and full privacy.</p>
|
||
<div class="app-features"><span class="app-feature">3000+ integrations</span><span class="app-feature">Automations</span><span class="app-feature">Local control</span><span class="app-feature">Mobile app</span></div>
|
||
<a href="/assets/home-assistant-screenshot-1.webp" data-gallery="home-assistant" class="app-shot-link"><img src="/assets/home-assistant-screenshot-1.webp" alt="Home Assistant screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/home-assistant-screenshot-2.webp" data-gallery="home-assistant" data-alt="Home Assistant screenshot 2" hidden></a>
|
||
<a href="/assets/home-assistant-screenshot-3.webp" data-gallery="home-assistant" data-alt="Home Assistant screenshot 3" hidden></a>
|
||
<a href="/assets/home-assistant-screenshot-4.webp" data-gallery="home-assistant" data-alt="Home Assistant screenshot 4" hidden></a>
|
||
<a href="/assets/home-assistant-screenshot-5.webp" data-gallery="home-assistant" data-alt="Home Assistant screenshot 5" hidden></a>
|
||
<a href="/assets/home-assistant-screenshot-6.webp" data-gallery="home-assistant" data-alt="Home Assistant screenshot 6" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/home-assistant/core" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- n8n -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/n8n-logo.svg" alt="n8n" class="app-logo">
|
||
<div class="app-title-area"><h3>n8n</h3><span class="app-tagline">Workflow automation</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Visual workflow automation in the style of Zapier or Make. Connect any service and build automations without code, on your own server.</p>
|
||
<div class="app-features"><span class="app-feature">400+ integrations</span><span class="app-feature">Visual editor</span><span class="app-feature">AI features</span><span class="app-feature">Webhooks</span></div>
|
||
<a href="/assets/n8n-screenshot-1.webp" data-gallery="n8n" class="app-shot-link"><img src="/assets/n8n-screenshot-1.webp" alt="n8n screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/n8n-screenshot-2.webp" data-gallery="n8n" data-alt="n8n screenshot 2" hidden></a>
|
||
<a href="/assets/n8n-screenshot-3.webp" data-gallery="n8n" data-alt="n8n screenshot 3" hidden></a>
|
||
<a href="/assets/n8n-screenshot-4.webp" data-gallery="n8n" data-alt="n8n screenshot 4" hidden></a>
|
||
<a href="/assets/n8n-screenshot-5.webp" data-gallery="n8n" data-alt="n8n screenshot 5" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/n8n-io/n8n" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge" style="color: var(--warn);"><img src="/assets/checkmark-yellow.svg" alt="">Restricted licence</span>
|
||
</div>
|
||
</div>
|
||
<!-- Tandoor Recipes -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/tandoor-logo.png" alt="Tandoor Recipes" class="app-logo">
|
||
<div class="app-title-area"><h3>Tandoor Recipes</h3><span class="app-tagline">Recipe manager</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Keep your recipes, plan meals and make a shopping list. Import recipes from the web and share them with your family.</p>
|
||
<div class="app-features"><span class="app-feature">Recipe import</span><span class="app-feature">Meal planning</span><span class="app-feature">Shopping list</span><span class="app-feature">Sharing</span></div>
|
||
<a href="/assets/tandoor-screenshot-1.webp" data-gallery="tandoor" class="app-shot-link"><img src="/assets/tandoor-screenshot-1.webp" alt="Tandoor Recipes screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/tandoor-screenshot-2.webp" data-gallery="tandoor" data-alt="Tandoor Recipes screenshot 2" hidden></a>
|
||
<a href="/assets/tandoor-screenshot-3.webp" data-gallery="tandoor" data-alt="Tandoor Recipes screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/TandoorRecipes/recipes" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge" style="color: var(--warn);"><img src="/assets/checkmark-yellow.svg" alt="">Restricted licence</span>
|
||
</div>
|
||
</div>
|
||
<!-- Mealie -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/mealie-logo.svg" alt="Mealie" class="app-logo">
|
||
<div class="app-title-area"><h3>Mealie</h3><span class="app-tagline">Recipes and meal plans</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A recipe manager and meal planner for the household. Import a recipe from a web page, plan the week's meals and get a shopping list, and share recipes with the family; the interface speaks English and Hungarian among others.</p>
|
||
<div class="app-features"><span class="app-feature">Recipe import</span><span class="app-feature">Weekly menu</span><span class="app-feature">Shopping list</span><span class="app-feature">Multilingual</span></div>
|
||
<a href="/assets/mealie-screenshot-1.webp" data-gallery="mealie" class="app-shot-link"><img src="/assets/mealie-screenshot-1.webp" alt="Mealie screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/mealie-screenshot-2.webp" data-gallery="mealie" data-alt="Mealie screenshot 2" hidden></a>
|
||
<a href="/assets/mealie-screenshot-3.webp" data-gallery="mealie" data-alt="Mealie screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/mealie-recipes/mealie" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Recipe Importer -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/recipe-importer-logo.svg" alt="Recipe Importer" class="app-logo">
|
||
<div class="app-title-area"><h3>Recipe Importer</h3><span class="app-tagline">From Hungarian recipe sites</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Import recipes from six Hungarian sites (mindmegette.hu, streetkitchen.hu, nosalty.hu, sobors.hu, kiskegyed.hu, gastrohobbi.hu) into Mealie and Tandoor, one at a time or in bulk, and edit them before they are saved.</p>
|
||
<div class="app-features"><span class="app-feature">6 Hungarian sites</span><span class="app-feature">Bulk import</span><span class="app-feature">Mealie</span><span class="app-feature">Tandoor</span></div>
|
||
<a href="/assets/recipe-importer-screenshot-1.webp" data-gallery="recipe-importer" class="app-shot-link"><img src="/assets/recipe-importer-screenshot-1.webp" alt="Recipe Importer screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/recipe-importer-screenshot-2.webp" data-gallery="recipe-importer" data-alt="Recipe Importer screenshot 2" hidden></a>
|
||
<a href="/assets/recipe-importer-screenshot-3.webp" data-gallery="recipe-importer" data-alt="Recipe Importer screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<span class="open-source-badge" style="color: var(--warn);"><img src="/assets/checkmark-yellow.svg" alt="">Felhom's own</span>
|
||
</div>
|
||
</div>
|
||
<!-- Wishlist -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/wishlist-logo.svg" alt="Wishlist" class="app-logo">
|
||
<div class="app-title-area"><h3>Wishlist</h3><span class="app-tagline">Family wish list</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A wish list you can share, for Christmas, birthdays and other occasions. The family can reserve gifts, so nobody buys the same present twice.</p>
|
||
<div class="app-features"><span class="app-feature">Groups</span><span class="app-feature">Reservations</span><span class="app-feature">Link import</span><span class="app-feature">PWA</span></div>
|
||
<a href="/assets/wishlist-screenshot-1.webp" data-gallery="wishlist" class="app-shot-link"><img src="/assets/wishlist-screenshot-1.webp" alt="Wishlist screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/wishlist-screenshot-2.webp" data-gallery="wishlist" data-alt="Wishlist screenshot 2" hidden></a>
|
||
<a href="/assets/wishlist-screenshot-3.webp" data-gallery="wishlist" data-alt="Wishlist screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/cmintey/wishlist" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Homebox -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/homebox-logo.svg" alt="Homebox" class="app-logo">
|
||
<div class="app-title-area"><h3>Homebox</h3><span class="app-tagline">Home inventory</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Keep track of what you own: sorted by location, tag and category, with warranties and what you paid. Scan a barcode to add something quickly, and have the list ready for an insurance claim.</p>
|
||
<div class="app-features"><span class="app-feature">Inventory</span><span class="app-feature">Warranties</span><span class="app-feature">Barcode</span><span class="app-feature">Tags</span></div>
|
||
<a href="/assets/homebox-screenshot-1.webp" data-gallery="homebox" class="app-shot-link"><img src="/assets/homebox-screenshot-1.webp" alt="Homebox screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/homebox-screenshot-2.webp" data-gallery="homebox" data-alt="Homebox screenshot 2" hidden></a>
|
||
<a href="/assets/homebox-screenshot-3.webp" data-gallery="homebox" data-alt="Homebox screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/sysadminsmedia/homebox" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Gramps Web -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/gramps-web-logo.png" alt="Gramps Web" class="app-logo">
|
||
<div class="app-title-area"><h3>Gramps Web</h3><span class="app-tagline">Family tree builder</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A web platform for family trees and genealogy. Build your family tree, add photos and documents, and share it with your family safely.</p>
|
||
<div class="app-features"><span class="app-feature">Family tree</span><span class="app-feature">GEDCOM</span><span class="app-feature">Collaboration</span><span class="app-feature">Sync</span></div>
|
||
<a href="/assets/gramps-web-screenshot-1.webp" data-gallery="gramps-web" class="app-shot-link"><img src="/assets/gramps-web-screenshot-1.webp" alt="Gramps Web screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/gramps-web-screenshot-2.webp" data-gallery="gramps-web" data-alt="Gramps Web screenshot 2" hidden></a>
|
||
<a href="/assets/gramps-web-screenshot-3.webp" data-gallery="gramps-web" data-alt="Gramps Web screenshot 3" hidden></a>
|
||
<a href="/assets/gramps-web-screenshot-4.webp" data-gallery="gramps-web" data-alt="Gramps Web screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/gramps-project/gramps-web" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- SparkyFitness -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/sparkyfitness-logo.png" alt="SparkyFitness" class="app-logo">
|
||
<div class="app-title-area"><h3>SparkyFitness</h3><span class="app-tagline">Food diary</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Log what you eat and how many calories it comes to, track your weight and measurements on a graph, and record workouts. Set nutrition targets (protein, carbohydrate, fat) and follow them.</p>
|
||
<div class="app-features"><span class="app-feature">Calorie counter</span><span class="app-feature">Weight</span><span class="app-feature">Workouts</span><span class="app-feature">Nutrition targets</span></div>
|
||
<a href="/assets/sparkyfitness-screenshot-1.webp" data-gallery="sparkyfitness" class="app-shot-link"><img src="/assets/sparkyfitness-screenshot-1.webp" alt="SparkyFitness screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/sparkyfitness-screenshot-2.webp" data-gallery="sparkyfitness" data-alt="SparkyFitness screenshot 2" hidden></a>
|
||
<a href="/assets/sparkyfitness-screenshot-3.webp" data-gallery="sparkyfitness" data-alt="SparkyFitness screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/CodeWithCJ/SparkyFitness" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge" style="color: var(--warn);"><img src="/assets/checkmark-yellow.svg" alt="">Restricted licence</span>
|
||
</div>
|
||
</div>
|
||
<!-- Actual Budget -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/actualbudget-logo.svg" alt="Actual Budget" class="app-logo">
|
||
<div class="app-title-area"><h3>Actual Budget</h3><span class="app-tagline">Budget planner</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Local-first personal finance. Plan a budget, track transactions and set money goals.</p>
|
||
<div class="app-features"><span class="app-feature">Budget</span><span class="app-feature">Sync</span><span class="app-feature">Bank import</span><span class="app-feature">Reports</span></div>
|
||
<a href="/assets/actualbudget-screenshot-1.webp" data-gallery="actualbudget" class="app-shot-link"><img src="/assets/actualbudget-screenshot-1.webp" alt="Actual Budget screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/actualbudget-screenshot-2.webp" data-gallery="actualbudget" data-alt="Actual Budget screenshot 2" hidden></a>
|
||
<a href="/assets/actualbudget-screenshot-3.webp" data-gallery="actualbudget" data-alt="Actual Budget screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/actualbudget/actual" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- AdventureLog -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/adventurelog-logo.png" alt="AdventureLog" class="app-logo">
|
||
<div class="app-title-area"><h3>AdventureLog</h3><span class="app-tagline">Travel log</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Record your trips and adventures. A map view, photos and statistics about the places you have been.</p>
|
||
<div class="app-features"><span class="app-feature">Map</span><span class="app-feature">Photos</span><span class="app-feature">Statistics</span><span class="app-feature">Sharing</span></div>
|
||
<a href="/assets/adventurelog-screenshot-1.webp" data-gallery="adventurelog" class="app-shot-link"><img src="/assets/adventurelog-screenshot-1.webp" alt="AdventureLog screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/adventurelog-screenshot-2.webp" data-gallery="adventurelog" data-alt="AdventureLog screenshot 2" hidden></a>
|
||
<a href="/assets/adventurelog-screenshot-3.webp" data-gallery="adventurelog" data-alt="AdventureLog screenshot 3" hidden></a>
|
||
<a href="/assets/adventurelog-screenshot-4.webp" data-gallery="adventurelog" data-alt="AdventureLog screenshot 4" hidden></a>
|
||
<a href="/assets/adventurelog-screenshot-5.webp" data-gallery="adventurelog" data-alt="AdventureLog screenshot 5" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/seanmorley15/AdventureLog" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Wanderer -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/wanderer-logo.svg" alt="Wanderer" class="app-logo">
|
||
<div class="app-title-area"><h3>Wanderer</h3><span class="app-tagline">Hike planner</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Plan hikes and routes and keep your GPX files. A map with contour lines, and route statistics.</p>
|
||
<div class="app-features"><span class="app-feature">GPX import</span><span class="app-feature">Maps</span><span class="app-feature">Elevation</span><span class="app-feature">Routes</span></div>
|
||
<a href="/assets/wanderer-screenshot-1.webp" data-gallery="wanderer" class="app-shot-link"><img src="/assets/wanderer-screenshot-1.webp" alt="Wanderer screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/wanderer-screenshot-2.webp" data-gallery="wanderer" data-alt="Wanderer screenshot 2" hidden></a>
|
||
<a href="/assets/wanderer-screenshot-3.webp" data-gallery="wanderer" data-alt="Wanderer screenshot 3" hidden></a>
|
||
<a href="/assets/wanderer-screenshot-4.webp" data-gallery="wanderer" data-alt="Wanderer screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Flomp/wanderer" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Dawarich -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/dawarich-logo.svg" alt="Dawarich" class="app-logo">
|
||
<div class="app-title-area"><h3>Dawarich</h3><span class="app-tagline">Instead of Google Timeline</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Your own location history on a map: your phone sends where you have been to your own server. A map, statistics and trips; bring your old data from a Google Takeout, GPX or GeoJSON file.</p>
|
||
<div class="app-features"><span class="app-feature">Map</span><span class="app-feature">Statistics</span><span class="app-feature">Takeout import</span><span class="app-feature">Mobile app</span></div>
|
||
<a href="/assets/dawarich-screenshot-1.webp" data-gallery="dawarich" class="app-shot-link"><img src="/assets/dawarich-screenshot-1.webp" alt="Dawarich screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/dawarich-screenshot-2.webp" data-gallery="dawarich" data-alt="Dawarich screenshot 2" hidden></a>
|
||
<a href="/assets/dawarich-screenshot-3.webp" data-gallery="dawarich" data-alt="Dawarich screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Freika/dawarich" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Cal.com -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/calcom-logo.svg" alt="Cal.com" class="app-logo">
|
||
<div class="app-title-area"><h3>Cal.com</h3><span class="app-tagline">Appointment booking</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">An open-source Calendly alternative. Easy appointment booking with clients, calendar integrations and automatic reminders.</p>
|
||
<div class="app-features"><span class="app-feature">Booking page</span><span class="app-feature">Calendar sync</span><span class="app-feature">Teams</span><span class="app-feature">Reminders</span></div>
|
||
<a href="/assets/calcom-screenshot-1.webp" data-gallery="calcom" class="app-shot-link"><img src="/assets/calcom-screenshot-1.webp" alt="Cal.com screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/calcom-screenshot-2.webp" data-gallery="calcom" data-alt="Cal.com screenshot 2" hidden></a>
|
||
<a href="/assets/calcom-screenshot-3.webp" data-gallery="calcom" data-alt="Cal.com screenshot 3" hidden></a>
|
||
<a href="/assets/calcom-screenshot-4.webp" data-gallery="calcom" data-alt="Cal.com screenshot 4" hidden></a>
|
||
<a href="/assets/calcom-screenshot-5.webp" data-gallery="calcom" data-alt="Cal.com screenshot 5" hidden></a>
|
||
<a href="/assets/calcom-screenshot-6.webp" data-gallery="calcom" data-alt="Cal.com screenshot 6" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/calcom/cal.com" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ==================== -->
|
||
<!-- 4. PRODUCTIVITY & KNOWLEDGE -->
|
||
<!-- ==================== -->
|
||
<div class="category-section" id="productivity">
|
||
<div class="category-header">
|
||
<span class="category-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-chart-column"/></svg></span>
|
||
<h2>Productivity & Knowledge</h2>
|
||
<span class="app-count">12 apps</span>
|
||
</div>
|
||
<div class="app-grid">
|
||
<!-- Vikunja -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/vikunja-logo.svg" alt="Vikunja" class="app-logo">
|
||
<div class="app-title-area"><h3>Vikunja</h3><span class="app-tagline">Task manager (Todoist)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">An open-source Todoist alternative. Tasks, projects and deadlines, in Kanban, Gantt and list views. Reminders and team work.</p>
|
||
<div class="app-features"><span class="app-feature">Kanban</span><span class="app-feature">Gantt</span><span class="app-feature">Reminders</span><span class="app-feature">Teams</span></div>
|
||
<a href="/assets/vikunja-screenshot-1.webp" data-gallery="vikunja" class="app-shot-link"><img src="/assets/vikunja-screenshot-1.webp" alt="Vikunja screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/vikunja-screenshot-2.webp" data-gallery="vikunja" data-alt="Vikunja screenshot 2" hidden></a>
|
||
<a href="/assets/vikunja-screenshot-3.webp" data-gallery="vikunja" data-alt="Vikunja screenshot 3" hidden></a>
|
||
<a href="/assets/vikunja-screenshot-4.webp" data-gallery="vikunja" data-alt="Vikunja screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/go-vikunja/vikunja" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Radicale -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/radicale-logo.svg" alt="Radicale" class="app-logo">
|
||
<div class="app-title-area"><h3>Radicale</h3><span class="app-tagline">Calendar and contacts</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Your phone calendar and contacts on your own server, not with Google or Apple. A shared family calendar; on Android DAVx5, on iPhone and Mac the built-in calendar syncs with it.</p>
|
||
<div class="app-features"><span class="app-feature">CalDAV</span><span class="app-feature">CardDAV</span><span class="app-feature">Family calendar</span><span class="app-feature">Thunderbird</span></div>
|
||
<a href="/assets/radicale-screenshot-1.webp" data-gallery="radicale" class="app-shot-link"><img src="/assets/radicale-screenshot-1.webp" alt="Radicale screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/radicale-screenshot-2.webp" data-gallery="radicale" data-alt="Radicale screenshot 2" hidden></a>
|
||
<a href="/assets/radicale-screenshot-3.webp" data-gallery="radicale" data-alt="Radicale screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Kozea/Radicale" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Kimai -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/kimai-logo.png" alt="Kimai" class="app-logo">
|
||
<div class="app-title-area"><h3>Kimai</h3><span class="app-tagline">Time tracking</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Professional time tracking for freelancers and teams. Projects, clients, reports and invoice export in one system.</p>
|
||
<div class="app-features"><span class="app-feature">Projects</span><span class="app-feature">Reports</span><span class="app-feature">Export</span><span class="app-feature">Invoicing</span></div>
|
||
<a href="/assets/kimai-screenshot-1.webp" data-gallery="kimai" class="app-shot-link"><img src="/assets/kimai-screenshot-1.webp" alt="Kimai screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/kimai-screenshot-2.webp" data-gallery="kimai" data-alt="Kimai screenshot 2" hidden></a>
|
||
<a href="/assets/kimai-screenshot-3.webp" data-gallery="kimai" data-alt="Kimai screenshot 3" hidden></a>
|
||
<a href="/assets/kimai-screenshot-4.webp" data-gallery="kimai" data-alt="Kimai screenshot 4" hidden></a>
|
||
<a href="/assets/kimai-screenshot-5.webp" data-gallery="kimai" data-alt="Kimai screenshot 5" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/kimai/kimai" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Rallly -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/rallly-logo.svg" alt="Rallly" class="app-logo">
|
||
<div class="app-title-area"><h3>Rallly</h3><span class="app-tagline">Meeting poll (Doodle)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Find a time for a meeting or an event, the easy way. A Doodle alternative: people vote without an account, and time zones are handled.</p>
|
||
<div class="app-features"><span class="app-feature">Polls</span><span class="app-feature">No sign-up</span><span class="app-feature">Time zones</span><span class="app-feature">Notifications</span></div>
|
||
<a href="/assets/rallly-screenshot-1.webp" data-gallery="rallly" class="app-shot-link"><img src="/assets/rallly-screenshot-1.webp" alt="Rallly screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/rallly-screenshot-2.webp" data-gallery="rallly" data-alt="Rallly screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/lukevella/rallly" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Claper -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/claper-logo.svg" alt="Claper" class="app-logo">
|
||
<div class="app-title-area"><h3>Claper</h3><span class="app-tagline">Interactive presentations</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Live polls, questions and word clouds for presentations. A Mentimeter and AhaSlides alternative that makes your talks interactive.</p>
|
||
<div class="app-features"><span class="app-feature">Live polls</span><span class="app-feature">Questions</span><span class="app-feature">Word cloud</span><span class="app-feature">Reactions</span></div>
|
||
<a href="/assets/claper-screenshot-1.webp" data-gallery="claper" class="app-shot-link"><img src="/assets/claper-screenshot-1.webp" alt="Claper screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/claper-screenshot-2.webp" data-gallery="claper" data-alt="Claper screenshot 2" hidden></a>
|
||
<a href="/assets/claper-screenshot-3.webp" data-gallery="claper" data-alt="Claper screenshot 3" hidden></a>
|
||
<a href="/assets/claper-screenshot-4.webp" data-gallery="claper" data-alt="Claper screenshot 4" hidden></a>
|
||
<a href="/assets/claper-screenshot-5.webp" data-gallery="claper" data-alt="Claper screenshot 5" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/ClaperCo/Claper" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Ghost -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/ghost-logo.svg" alt="Ghost" class="app-logo">
|
||
<div class="app-title-area"><h3>Ghost</h3><span class="app-tagline">Blog & newsletter platform</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A modern publishing platform for bloggers and creators. Good-looking themes, a built-in newsletter, and members and subscriptions.</p>
|
||
<div class="app-features"><span class="app-feature">Blog</span><span class="app-feature">Newsletter</span><span class="app-feature">Members</span><span class="app-feature">SEO</span></div>
|
||
<a href="/assets/ghost-screenshot-1.webp" data-gallery="ghost" class="app-shot-link"><img src="/assets/ghost-screenshot-1.webp" alt="Ghost screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/ghost-screenshot-2.webp" data-gallery="ghost" data-alt="Ghost screenshot 2" hidden></a>
|
||
<a href="/assets/ghost-screenshot-3.webp" data-gallery="ghost" data-alt="Ghost screenshot 3" hidden></a>
|
||
<a href="/assets/ghost-screenshot-4.webp" data-gallery="ghost" data-alt="Ghost screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/TryGhost/Ghost" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Paperless-ngx -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/paperless-ngx-logo.svg" alt="Paperless-ngx" class="app-logo">
|
||
<div class="app-title-area"><h3>Paperless-ngx</h3><span class="app-tagline">A digital filing cabinet</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Scan your paper documents and stop worrying about them. OCR, automatic sorting and full-text search.</p>
|
||
<div class="app-features"><span class="app-feature">OCR</span><span class="app-feature">Auto sorting</span><span class="app-feature">Search</span><span class="app-feature">Tags</span></div>
|
||
<a href="/assets/paperless-ngx-screenshot-1.webp" data-gallery="paperless-ngx" class="app-shot-link"><img src="/assets/paperless-ngx-screenshot-1.webp" alt="Paperless-ngx screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/paperless-ngx-screenshot-2.webp" data-gallery="paperless-ngx" data-alt="Paperless-ngx screenshot 2" hidden></a>
|
||
<a href="/assets/paperless-ngx-screenshot-3.webp" data-gallery="paperless-ngx" data-alt="Paperless-ngx screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/paperless-ngx/paperless-ngx" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- BookStack -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/bookstack-logo.svg" alt="BookStack" class="app-logo">
|
||
<div class="app-title-area"><h3>BookStack</h3><span class="app-tagline">Book-style documentation</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A simple self-hosted wiki. Arrange what you know into books, chapters and pages that are easy to search.</p>
|
||
<div class="app-features"><span class="app-feature">WYSIWYG</span><span class="app-feature">Books</span><span class="app-feature">Search</span><span class="app-feature">Permissions</span></div>
|
||
<a href="/assets/bookstack-screenshot-1.webp" data-gallery="bookstack" class="app-shot-link"><img src="/assets/bookstack-screenshot-1.webp" alt="BookStack screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/bookstack-screenshot-2.webp" data-gallery="bookstack" data-alt="BookStack screenshot 2" hidden></a>
|
||
<a href="/assets/bookstack-screenshot-3.webp" data-gallery="bookstack" data-alt="BookStack screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/BookStackApp/BookStack" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Outline -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/outline-logo.svg" alt="Outline" class="app-logo">
|
||
<div class="app-title-area"><h3>Outline</h3><span class="app-tagline">Team knowledge base</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A good-looking wiki and knowledge base for teams. Markdown, real-time collaboration and structured documentation.</p>
|
||
<div class="app-features"><span class="app-feature">Markdown</span><span class="app-feature">Collaboration</span><span class="app-feature">Search</span><span class="app-feature">Integrations</span></div>
|
||
<a href="/assets/outline-screenshot-1.webp" data-gallery="outline" class="app-shot-link"><img src="/assets/outline-screenshot-1.webp" alt="Outline screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/outline-screenshot-2.webp" data-gallery="outline" data-alt="Outline screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/outline/outline" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge" style="color: var(--warn);"><img src="/assets/checkmark-yellow.svg" alt="">Restricted licence</span>
|
||
</div>
|
||
</div>
|
||
<!-- Docmost -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/docmost-logo.png" alt="Docmost" class="app-logo">
|
||
<div class="app-title-area"><h3>Docmost</h3><span class="app-tagline">A Notion-like wiki</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A modern wiki and documentation platform with a Notion-like block editor. Spaces and pages in a tree, several people editing at once, and search across all of it.</p>
|
||
<div class="app-features"><span class="app-feature">Block editor</span><span class="app-feature">Co-editing</span><span class="app-feature">Search</span><span class="app-feature">Tables</span></div>
|
||
<a href="/assets/docmost-screenshot-1.webp" data-gallery="docmost" class="app-shot-link"><img src="/assets/docmost-screenshot-1.webp" alt="Docmost screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/docmost-screenshot-2.webp" data-gallery="docmost" data-alt="Docmost screenshot 2" hidden></a>
|
||
<a href="/assets/docmost-screenshot-3.webp" data-gallery="docmost" data-alt="Docmost screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/docmost/docmost" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Karakeep -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/karakeep-logo.svg" alt="Karakeep" class="app-logo">
|
||
<div class="app-title-area"><h3>Karakeep</h3><span class="app-tagline">Your own searchable archive</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Bookmarks, articles, notes and images in one place. Karakeep downloads and keeps the content of the pages you save, even if a page disappears later. Full-text search, a browser extension and a phone app.</p>
|
||
<div class="app-features"><span class="app-feature">Page saving</span><span class="app-feature">Search</span><span class="app-feature">Browser extension</span><span class="app-feature">Mobile app</span></div>
|
||
<a href="/assets/karakeep-screenshot-1.webp" data-gallery="karakeep" class="app-shot-link"><img src="/assets/karakeep-screenshot-1.webp" alt="Karakeep screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/karakeep-screenshot-2.webp" data-gallery="karakeep" data-alt="Karakeep screenshot 2" hidden></a>
|
||
<a href="/assets/karakeep-screenshot-3.webp" data-gallery="karakeep" data-alt="Karakeep screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/karakeep-app/karakeep" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- PrivateBin -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/privatebin-logo.png" alt="PrivateBin" class="app-logo">
|
||
<div class="app-title-area"><h3>PrivateBin</h3><span class="app-tagline">Encrypted note sharing</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A minimal, encrypted pastebin. The server cannot see what you share, which makes it right for sending sensitive text safely.</p>
|
||
<div class="app-features"><span class="app-feature">E2E encryption</span><span class="app-feature">Expiry</span><span class="app-feature">Burn after reading</span><span class="app-feature">Password protection</span></div>
|
||
<a href="/assets/privatebin-screenshot-1.webp" data-gallery="privatebin" class="app-shot-link"><img src="/assets/privatebin-screenshot-1.webp" alt="PrivateBin screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/privatebin-screenshot-2.webp" data-gallery="privatebin" data-alt="PrivateBin screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/PrivateBin/PrivateBin" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- ==================== -->
|
||
<!-- 5. SYSTEM & DEVELOPMENT -->
|
||
<!-- ==================== -->
|
||
<div class="category-section" id="system">
|
||
<div class="category-header">
|
||
<span class="category-icon"><svg class="ico-lg" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-wrench"/></svg></span>
|
||
<h2>System & Development</h2>
|
||
<span class="app-count">9 apps</span>
|
||
</div>
|
||
<div class="app-grid">
|
||
<!-- Vaultwarden -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/vaultwarden-logo.svg" alt="Vaultwarden" class="app-logo">
|
||
<div class="app-title-area"><h3>Vaultwarden</h3><span class="app-tagline">Password manager (Bitwarden)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A light Bitwarden server. Keep your passwords safe and in sync on every device.</p>
|
||
<div class="app-features"><span class="app-feature">E2E encryption</span><span class="app-feature">Mobile app</span><span class="app-feature">Browser extension</span><span class="app-feature">2FA</span></div>
|
||
<a href="/assets/vaultwarden-screenshot-1.webp" data-gallery="vaultwarden" class="app-shot-link"><img src="/assets/vaultwarden-screenshot-1.webp" alt="Vaultwarden screenshot" class="app-screenshot"></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/dani-garcia/vaultwarden" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Homepage -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/homepage-logo.svg" alt="Homepage" class="app-logo">
|
||
<div class="app-title-area"><h3>Homepage</h3><span class="app-tagline">Personal start page</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A good-looking, feature-rich start page for your server. Service status, widgets and bookmarks in one place.</p>
|
||
<div class="app-features"><span class="app-feature">Widgets</span><span class="app-feature">Integrations</span><span class="app-feature">Themes</span><span class="app-feature">Status</span></div>
|
||
<a href="/assets/homepage-screenshot-1.webp" data-gallery="homepage" class="app-shot-link"><img src="/assets/homepage-screenshot-1.webp" alt="Homepage screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/homepage-screenshot-2.webp" data-gallery="homepage" data-alt="Homepage screenshot 2" hidden></a>
|
||
<a href="/assets/homepage-screenshot-3.webp" data-gallery="homepage" data-alt="Homepage screenshot 3" hidden></a>
|
||
<a href="/assets/homepage-screenshot-4.webp" data-gallery="homepage" data-alt="Homepage screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/gethomepage/homepage" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Glance -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/glance-logo.svg" alt="Glance" class="app-logo">
|
||
<div class="app-title-area"><h3>Glance</h3><span class="app-tagline">Information dashboard</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A minimal, fast dashboard for all kinds of information. RSS, weather, bookmarks, Reddit, YouTube and more on one page.</p>
|
||
<div class="app-features"><span class="app-feature">RSS</span><span class="app-feature">Weather</span><span class="app-feature">YouTube</span><span class="app-feature">Fast</span></div>
|
||
<a href="/assets/glance-screenshot-1.webp" data-gallery="glance" class="app-shot-link"><img src="/assets/glance-screenshot-1.webp" alt="Glance screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/glance-screenshot-2.webp" data-gallery="glance" data-alt="Glance screenshot 2" hidden></a>
|
||
<a href="/assets/glance-screenshot-3.webp" data-gallery="glance" data-alt="Glance screenshot 3" hidden></a>
|
||
<a href="/assets/glance-screenshot-4.webp" data-gallery="glance" data-alt="Glance screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/glanceapp/glance" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Uptime Kuma -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/uptime-kuma-logo.svg" alt="Uptime Kuma" class="app-logo">
|
||
<div class="app-title-area"><h3>Uptime Kuma</h3><span class="app-tagline">Service monitoring</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A neat service monitor. Watch your websites and APIs and get told when something stops working.</p>
|
||
<div class="app-features"><span class="app-feature">HTTP/TCP/DNS</span><span class="app-feature">Notifications</span><span class="app-feature">Status page</span><span class="app-feature">Charts</span></div>
|
||
<a href="/assets/uptime-kuma-screenshot-1.webp" data-gallery="uptime-kuma" class="app-shot-link"><img src="/assets/uptime-kuma-screenshot-1.webp" alt="Uptime Kuma screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/uptime-kuma-screenshot-2.webp" data-gallery="uptime-kuma" data-alt="Uptime Kuma screenshot 2" hidden></a>
|
||
<a href="/assets/uptime-kuma-screenshot-3.webp" data-gallery="uptime-kuma" data-alt="Uptime Kuma screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/louislam/uptime-kuma" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Grafana -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/grafana-logo.svg" alt="Grafana" class="app-logo">
|
||
<div class="app-title-area"><h3>Grafana</h3><span class="app-tagline">Data visualisation</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A professional monitoring and visualisation platform. Good-looking dashboards, alerts and analysis, from any data source.</p>
|
||
<div class="app-features"><span class="app-feature">Dashboards</span><span class="app-feature">Alerts</span><span class="app-feature">Data sources</span><span class="app-feature">Queries</span></div>
|
||
<a href="/assets/grafana-screenshot-1.webp" data-gallery="grafana" class="app-shot-link"><img src="/assets/grafana-screenshot-1.webp" alt="Grafana screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/grafana-screenshot-2.webp" data-gallery="grafana" data-alt="Grafana screenshot 2" hidden></a>
|
||
<a href="/assets/grafana-screenshot-3.webp" data-gallery="grafana" data-alt="Grafana screenshot 3" hidden></a>
|
||
<a href="/assets/grafana-screenshot-4.webp" data-gallery="grafana" data-alt="Grafana screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/grafana/grafana" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Termix -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/termix-logo.svg" alt="Termix" class="app-logo">
|
||
<div class="app-title-area"><h3>Termix</h3><span class="app-tagline">Server manager (SSH)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">A web SSH terminal and server management platform. Connect to your servers from a browser anywhere, manage SSH tunnels and edit files remotely.</p>
|
||
<div class="app-features"><span class="app-feature">SSH terminal</span><span class="app-feature">Tunnels</span><span class="app-feature">File manager</span><span class="app-feature">2FA</span></div>
|
||
<a href="/assets/termix-screenshot-1.webp" data-gallery="termix" class="app-shot-link"><img src="/assets/termix-screenshot-1.webp" alt="Termix screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/termix-screenshot-2.webp" data-gallery="termix" data-alt="Termix screenshot 2" hidden></a>
|
||
<a href="/assets/termix-screenshot-3.webp" data-gallery="termix" data-alt="Termix screenshot 3" hidden></a>
|
||
<a href="/assets/termix-screenshot-4.webp" data-gallery="termix" data-alt="Termix screenshot 4" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/Termix-SSH/Termix" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Gitea -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/gitea-logo.svg" alt="Gitea" class="app-logo">
|
||
<div class="app-title-area"><h3>Gitea</h3><span class="app-tagline">Git server (GitHub)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Light, fast Git hosting. Your own GitHub or GitLab, with issue tracking, CI/CD and a package registry.</p>
|
||
<div class="app-features"><span class="app-feature">Git hosting</span><span class="app-feature">Issues</span><span class="app-feature">CI/CD</span><span class="app-feature">Wiki</span></div>
|
||
<a href="/assets/gitea-screenshot-1.webp" data-gallery="gitea" class="app-shot-link"><img src="/assets/gitea-screenshot-1.webp" alt="Gitea screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/gitea-screenshot-2.webp" data-gallery="gitea" data-alt="Gitea screenshot 2" hidden></a>
|
||
<a href="/assets/gitea-screenshot-3.webp" data-gallery="gitea" data-alt="Gitea screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/go-gitea/gitea" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- Code-Server -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/code-server-logo.svg" alt="Code-Server" class="app-logo">
|
||
<div class="app-title-area"><h3>Code-Server</h3><span class="app-tagline">VS Code in the browser</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Visual Studio Code in the browser. Work from anywhere, on any device, with the same familiar interface.</p>
|
||
<div class="app-features"><span class="app-feature">VS Code</span><span class="app-feature">Extensions</span><span class="app-feature">Terminal</span><span class="app-feature">Git</span></div>
|
||
<a href="/assets/code-server-screenshot-1.webp" data-gallery="code-server" class="app-shot-link"><img src="/assets/code-server-screenshot-1.webp" alt="Code-Server screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/code-server-screenshot-2.webp" data-gallery="code-server" data-alt="Code-Server screenshot 2" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/coder/code-server" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
<!-- OpenGist -->
|
||
<div class="app-card">
|
||
<div class="app-card-header">
|
||
<img src="/assets/opengist-logo.png" alt="OpenGist" class="app-logo">
|
||
<div class="app-title-area"><h3>OpenGist</h3><span class="app-tagline">Code snippets (Gist)</span></div>
|
||
</div>
|
||
<div class="app-card-body">
|
||
<p class="app-description">Your own GitHub Gist server. Share code snippets with syntax highlighting and Git-based version history.</p>
|
||
<div class="app-features"><span class="app-feature">Snippets</span><span class="app-feature">Syntax</span><span class="app-feature">Git</span><span class="app-feature">Embed</span></div>
|
||
<a href="/assets/opengist-screenshot-1.webp" data-gallery="opengist" class="app-shot-link"><img src="/assets/opengist-screenshot-1.webp" alt="OpenGist screenshot" class="app-screenshot"></a>
|
||
<a href="/assets/opengist-screenshot-2.webp" data-gallery="opengist" data-alt="OpenGist screenshot 2" hidden></a>
|
||
<a href="/assets/opengist-screenshot-3.webp" data-gallery="opengist" data-alt="OpenGist screenshot 3" hidden></a>
|
||
</div>
|
||
<div class="app-card-footer">
|
||
<a href="https://github.com/thomiceli/opengist" target="_blank" rel="noopener" class="github-link"><img src="/assets/github.svg" alt="GitHub">Source code</a>
|
||
<span class="open-source-badge"><svg class="ico ico-yes" aria-hidden="true"><use href="/assets/icons.svg?v=1#i-check"/></svg>Open Source</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Stats Section -->
|
||
<section class="stats-section">
|
||
<div class="container">
|
||
<div class="stats-grid">
|
||
<div class="stat-item">
|
||
<h3>56</h3>
|
||
<p>Apps available</p>
|
||
</div>
|
||
<div class="stat-item">
|
||
<h3>5</h3>
|
||
<p>Categories</p>
|
||
</div>
|
||
<div class="stat-item">
|
||
<h3>49</h3>
|
||
<p>Open source</p>
|
||
</div>
|
||
<div class="stat-item">
|
||
<h3>0 Ft</h3>
|
||
<p>Licence cost</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- CTA Section -->
|
||
<section class="cta-section">
|
||
<div class="container">
|
||
<h2>Can't find what you are looking for?</h2>
|
||
<p>This is the whole catalog. If you need something specific, get in touch — we will look at whether the right app can join it.</p>
|
||
<a href="/en/contact" class="cta-button">Get in touch →</a>
|
||
</div>
|
||
</section>
|
||
</main>
|
||
|
||
<footer>
|
||
<div class="container">
|
||
<p>© 2026 felhom.eu — Your own cloud, your own rules. Felhom serves households in Hungary.</p>
|
||
<p class="footer-legal">Operated by Nagyfenyvesi Viktor · <a href="mailto:info@felhom.eu">info@felhom.eu</a> · <a href="/adatkezeles">Privacy notice (Hungarian)</a> · <a href="/feltetelek">Terms (Hungarian)</a></p>
|
||
</div>
|
||
</footer>
|
||
|
||
<script>
|
||
(function() {
|
||
var hamburger = document.getElementById('hamburger');
|
||
var navLinks = document.querySelector('.nav-links');
|
||
var overlay = document.getElementById('mobileOverlay');
|
||
var body = document.body;
|
||
|
||
if (!hamburger || !navLinks || !overlay) {
|
||
console.warn('[mobile-menu] Missing elements:', {
|
||
hamburger: !!hamburger,
|
||
navLinks: !!navLinks,
|
||
overlay: !!overlay
|
||
});
|
||
return;
|
||
}
|
||
|
||
function openMenu() {
|
||
hamburger.classList.add('is-active');
|
||
navLinks.classList.add('is-open');
|
||
overlay.classList.add('is-visible');
|
||
body.classList.add('menu-open');
|
||
hamburger.setAttribute('aria-expanded', 'true');
|
||
hamburger.setAttribute('aria-label', 'Close menu');
|
||
}
|
||
|
||
function closeMenu() {
|
||
hamburger.classList.remove('is-active');
|
||
navLinks.classList.remove('is-open');
|
||
overlay.classList.remove('is-visible');
|
||
body.classList.remove('menu-open');
|
||
hamburger.setAttribute('aria-expanded', 'false');
|
||
hamburger.setAttribute('aria-label', 'Open menu');
|
||
}
|
||
|
||
hamburger.addEventListener('click', function() {
|
||
if (navLinks.classList.contains('is-open')) {
|
||
closeMenu();
|
||
} else {
|
||
openMenu();
|
||
}
|
||
});
|
||
|
||
overlay.addEventListener('click', closeMenu);
|
||
|
||
navLinks.querySelectorAll('a').forEach(function(link) {
|
||
link.addEventListener('click', closeMenu);
|
||
});
|
||
|
||
document.addEventListener('keydown', function(e) {
|
||
if (e.key === 'Escape' && navLinks.classList.contains('is-open')) {
|
||
closeMenu();
|
||
}
|
||
});
|
||
|
||
window.addEventListener('resize', function() {
|
||
if (window.innerWidth > 900 && navLinks.classList.contains('is-open')) {
|
||
closeMenu();
|
||
}
|
||
});
|
||
})();
|
||
</script>
|
||
</body>
|
||
</html> |