Skip to main content

Contributing Guidelines

Thank you for your interest in contributing to Awesome-Selfhosted! This project thrives on community contributions, and we welcome submissions of new self-hosted software, improvements to existing entries, and other enhancements.
Before submitting, please review the full contributing guidelines in the CONTRIBUTING.md file.

How to Add New Software

When adding new self-hosted software to the list, please ensure your submission meets the following criteria:

Requirements

  1. Free and Open Source Software (FOSS): The software must be Free Software. Non-free software should be submitted to the Non-Free list.
  2. Self-Hostable: The software must be able to be hosted and managed on your own server(s), not dependent on proprietary SaaS providers.
  3. Network Services or Web Applications: The software should be a network service or web application.
  4. Active Maintenance: Projects should be actively maintained. Unmaintained projects may be flagged or removed.

Submission Standards

Each entry in the list follows a specific format:
- [Software Name](https://software-website.com/) - Brief description of what the software does. ([Demo](https://demo.url), [Source Code](https://github.com/user/repo)) `License` `Language/Platform`
  • Name and Website: Link to the official website or project homepage
  • Description: A clear, concise description of the software’s purpose and features
  • Demo Link (optional): Link to a live demo instance
  • Source Code: Link to the source code repository (required)
  • License: SPDX license identifier (see License Guide)
  • Platform: Technology stack (e.g., Docker, Nodejs, Python, PHP, Go)

Anti-Features

Software that depends on proprietary services outside the user’s control should be marked with the warning symbol:
- [Software Name](https://example.com) `⚠` - Description here. `License` `Platform`

Submission Process

1

Fork the Repository

Fork the awesome-selfhosted-data repository on GitHub.
2

Make Your Changes

Add your entry in the appropriate category following the format above. Ensure entries are in alphabetical order within their category.
3

Test Your Changes

Verify that all links work correctly and follow the proper format.
4

Submit a Pull Request

Submit a pull request with a clear description of what you’re adding or changing.

Quality Guidelines

  • No Duplicates: Search the list first to ensure the software isn’t already included
  • Appropriate Category: Place entries in the most relevant category
  • Accurate Information: Ensure all links, licenses, and descriptions are correct
  • Clear Descriptions: Write concise, informative descriptions that explain what the software does
  • Working Links: All URLs must be functional and point to the correct resources

Categories and Organization

The list is organized into various categories such as:
  • Analytics
  • Automation
  • Backup
  • Blogging Platforms
  • Communication Systems
  • Content Management Systems (CMS)
  • Document Management
  • E-commerce
  • File Transfer & Synchronization
  • Media Streaming
  • Monitoring
  • And many more…
If you’re unsure which category is appropriate, choose the most specific category that matches the software’s primary function.

GitHub Repository

View the main repository on GitHub

Contributing Guidelines

Read the full contributing guidelines

HTML Version

Browse the recommended HTML version

Report Issues

Report bugs or suggest improvements

Community

Join the community to discuss self-hosted software and get help:
For questions about contributing, feel free to open an issue on GitHub or reach out through the community channels.

Build docs developers (and LLMs) love