Documentation Index
Fetch the complete documentation index at: https://mintlify.com/awesome-selfhosted/awesome-selfhosted/llms.txt
Use this file to discover all available pages before exploring further.
How to Use This Catalog
This guide will help you effectively navigate the Awesome-Selfhosted catalog, evaluate applications, and deploy them successfully.Understanding the Catalog Structure
The catalog organizes thousands of self-hosted applications into logical categories to help you find what you need.Browse by Category
Applications are organized into categories based on their primary function:Communication
Email, chat, forums, video conferencing, and social networks
Media
Streaming, galleries, photo management, and music servers
Productivity
Calendars, task management, note-taking, and collaboration
File Management
Cloud storage, file sync, and document management
Development
Version control, CI/CD, project management, and testing
Analytics
Web analytics, monitoring, and data visualization
Category Examples
The catalog includes categories such as:- Analytics: Privacy-focused tools like Matomo, Plausible, and Umami
- Automation: Workflow engines like Apache Airflow, Huginn, and n8n
- Backup: Data protection solutions
- Blogging Platforms: Ghost, WriteFreely, and more
- Bookmarks and Link Sharing: Linkding, Shaarli, and LinkAce
- Communication Systems: Matrix, Rocket.Chat, and Zulip
- Content Management Systems: WordPress alternatives and wiki platforms
- Database Management: Admin interfaces and query tools
- E-commerce: Online store platforms
- Games: Game servers and control panels
- Password Managers: Vaultwarden and KeeWeb
- Search Engines: Self-hosted search solutions
- And 80+ more categories
Each category includes a brief description and links to related categories to help you discover similar or complementary applications.
Reading Application Entries
Each application listing provides essential information to help you make informed decisions.Entry Format
A typical entry looks like this:What Each Component Means
Application Name and Website
Application Name and Website
The clickable application name links to the official website or documentation where you can learn more about the project, its features, and how to get started.
Description
Description
A concise explanation of what the application does and its primary use case. Some entries also mention alternatives (e.g., “alternative to Google Analytics”).
Demo Link
Demo Link
Try before you deploy! Demo links let you explore the application’s interface and features without installing anything. This is invaluable for evaluating if the software meets your needs.
Source Code Link
Source Code Link
Direct link to the source code repository (usually GitHub, GitLab, or Codeberg). Use this to:
- Review code quality and security
- Check development activity and community health
- Read installation documentation
- Report issues or contribute
Client Links
Client Links
For applications with mobile apps, desktop clients, or browser extensions, this link points to available client software.
License
License
The software license (e.g., MIT, GPL-3.0, Apache-2.0). All applications in the main list are Free Software. See the List of Licenses section for explanations of each license type.
Technology/Platform
Technology/Platform
Indicates the programming language and deployment method (e.g.,
Python/Docker, Nodejs, PHP/deb). This helps you:- Understand technical requirements
- Assess if you have the skills to maintain it
- Determine deployment complexity
Technology Tags Explained
Common technology indicators:- Docker: Available as a Docker container (easiest deployment)
- K8S: Kubernetes-ready for orchestrated deployments
- deb: Debian/Ubuntu package available
- Language names (Python, Nodejs, Go, PHP, etc.): Primary programming language
Docker deployments are generally the easiest for beginners. Look for
Docker in the technology tag when starting out.Understanding the Anti-Features Marker
The ⚠ Symbol
Some applications are marked with a warning symbol: ⚠ What it means: The application depends on a proprietary service outside the user’s control.Why This Matters
The philosophy of self-hosting emphasizes independence and control. Applications marked with ⚠ may:- Require API keys from third-party services
- Depend on external cloud platforms for core functionality
- Send data to proprietary services
- Require accounts with commercial providers
Example Applications with Anti-Features
- Daily Stars Explorer ⚠: Depends on GitHub’s API
- DavMail ⚠: Interfaces with proprietary Exchange servers
- Ganymede ⚠: Relies on Twitch’s platform
- LazyLibrarian ⚠: Depends on proprietary book databases
Making Informed Choices
When you see ⚠:- Read the documentation: Understand what external services are required
- Assess the dependency: Is the external service critical or optional?
- Consider alternatives: Are there unmarked alternatives in the same category?
- Evaluate your needs: Does the functionality justify the external dependency?
Evaluating Applications
Before You Deploy
Use these criteria to evaluate applications:Try the Demo
If available, test the demo to see if the interface and features meet your needs. This saves time compared to installing and then discovering it’s not right for you.
Review the Source Code
Visit the repository to check:
- Recent commits: Is the project actively maintained?
- Issue count: Are there many unresolved bugs?
- Community activity: Are maintainers responsive?
- Documentation quality: Is setup well-documented?
- Stars/forks: Is there community interest?
Check Technical Requirements
Ensure you can meet the requirements:
- Do you have the necessary hardware resources?
- Can you work with the deployment method (Docker, manual install)?
- Do you have experience with the technology stack?
Read the License
Understand the license terms, especially if you plan to modify or redistribute the software.
Assess Dependencies
Check for the ⚠ marker and evaluate external dependencies against your self-hosting goals.
Comparing Alternatives
Many categories have multiple applications serving similar purposes. When comparing:- Features: List must-have features and compare coverage
- Ease of use: Consider both user interface and deployment complexity
- Resource usage: Check memory and CPU requirements
- Maintenance burden: How often does it need updates?
- Community size: Larger communities often mean better support
- Documentation: Good docs make deployment and troubleshooting easier
Deployment Guide
Docker Deployments (Recommended for Beginners)
Most modern self-hosted applications offer Docker containers:- Consistent environment across different systems
- Easy updates and rollbacks
- Isolation from other applications
- Simplified dependency management
Docker Compose
For applications with multiple services:Manual Installation
Some applications require traditional installation:- Follow the official documentation carefully
- Install required dependencies
- Configure databases and environment variables
- Set up reverse proxies if needed
- Configure SSL/TLS certificates
Finding Help
Application-Specific Help
- Official documentation: Start with the project’s docs
- GitHub Issues: Search existing issues or open a new one
- Project forums/chat: Many projects have Discord, Matrix, or Slack channels
General Self-Hosting Help
Join the self-hosting community:- /c/selfhosted on lemmy.world
- /r/selfhosted on Reddit
- Self-hosted Matrix Channel
- /r/homelab on Reddit
Additional Resources
Contributing Guidelines
Help improve the catalog by adding new applications or updating existing entries
Awesome Sysadmin
Complementary list of system administration resources
Privacy Resources
Tools and knowledge to protect your privacy
Alternative Internet
Decentralized alternatives to mainstream services
Quick Tips
Explore Applications
Browse the complete catalog of self-hosted applications
What is Self-Hosting?
Learn more about the philosophy and benefits of self-hosting