Contributing to the Self Hosted Show Wiki¶
See the Beginners Contributing Guide for step by step instructions on how to add content.
Objectives of This Wiki¶
To contribute well, you need to understand what the objectives are behind this wiki.
What we are trying to create:
- A compilation of tools, tips and tricks for self-hosting specific applications.
- A place where beginners and experts can learn about how to quickly, efficiently and securely deploy applications on their own server(s).
- Snippets that people can quickly reference in deploying applications.
- A hub for quality documentation (to the extent possible).
What we are not trying to do:
- Be another large list of self-hosted tools. See awesome-selfhosted for a comprehensive list of self-hosted applications.
- Be a hub for script kitties. People should learn from documentation here not just come here to copy/paste. Snippets are important but should be documented properly.
- Promote or encourage insecure, sloppy or any undesirable systems administration practices such as:
- Executing remote code by
curl-ing an untrusted script and piping it to
curl https://example.com/awesomescript.sh | sudo bash
- Installing additional bloat within a container
- Executing remote code by
We want to encourage the usage of Devops tooling such as config management, containerisation and automation. This will improve the ease of use for all and increase code reuse amongst the community ultimately leading to an easier time for all.
docs folder in the root of the repository is where wiki content should be placed.
The following example directory layout should be adhered to when contributing:
Additional, more specific articles relating to that same topic should be named differently:
For example, if I wanted to add a brand new, generic article for Home Assistant, my layout would be this:
For an additional article that is more specific I could name it like so:
Any images embedded in an article should be placed within a folder called
images within the same directory:
Any other relevant resources (scripts, snippets, etc.) pertaining to the application should be placed within the same folder the relevant application is using.
Install Docker and Docker Compose:
Clone the repository and
cdinto the directory:
git clone https://github.com/selfhostedshow/wiki && cd wiki
- Start development server on http://localhost:8000:
- In your browser go to http://localhost:8000.
How to Contribute¶
Please at least try to understand the objectives of this wiki and the organizational layout of the repository before attempting to contribute.
This Wiki is intended to be for anyone -- regardless of expertise -- who is interested in self-hosting. We encourage anyone interested in contributing to follow these simple steps:
- Fork this repository in Github's web interface by pressing the fork icon.
- Clone your fork and
cdinto the new directory:
git clone https://github.com/username/wiki && cd wiki
- Check out a new branch:
git checkout -b <branch_name>
- Make changes as desired to the files in the repository on your machine.
- Add the changed files to your commit and commit the changes to your fork:
git add file1.md file2.md && git commit -m 'updated x,y,z'
- Push your commit to your fork:
git push origin master
- Build the wiki locally and check that your added content renders properly in your local build.
- On Github's web interface go to your fork and set the branch to
<branch_name>. Then submit a pull request by selecting "New Pull Request".
Not sure what to write about, take a look at our issues.