Name of Project • Installation • Initial Configuration • Features
Additional information or tagline
A brief description of your project, what it is used for and how does life get awesome when someone starts to use it.
A quick introduction of the minimal setup you need to get a hello world up & running.
packagemanager install awesome-project
awesome-project start
awesome-project "Do something!" # prints "Nah."
Here you should say what actually happens when you execute the code above.
📚 Show more code examples
In case your project has a lot of examples, you can use this toggle list to prevent your README for being too long. Here you can put all secondary examples that can help the users of your project.
your code here
Some projects require initial configuration (e.g. access tokens or keys, npm i
).
This is the section where you would document those requirements.
Here's a brief intro about what a developer must do in order to start developing the project further:
git clone https://github.com/your/awesome-project.git
cd awesome-project/
packagemanager install
And state what happens step-by-step.
If your project needs some additional steps for the developer to build the project after some code changes, state them here:
./configure
make
make install
Here again you should state what actually happens when the code above gets executed.
In case there's some step you have to take that publishes this project to a server, this is the right time to state it.
packagemanager deploy awesome-project -s server.com -u username -p password
And again you'd need to tell what the previous code actually does.
What's all the bells and whistles this project can perform?
- What's the main functionality
- You can also do another thing
- If you get really randy, you can even do this
In case you find useful for your project, you can also add a comparative table, as follow:
Project A | Project B | |
---|---|---|
Feature A | ✔️ | ❌ |
Feature B | ✔️ | ❌ |
When you publish something open source, one of the greatest motivations is that anyone can just jump in and start contributing to your project.
These paragraphs are meant to welcome those kind souls to feel that they are needed. You should state something like:
"If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome."
If there's anything else the developer needs to know (e.g. the code style
guide), you should link it here. If there's a lot of things to take into
consideration, it is common to separate this section to its own file called
CONTRIBUTING.md
(or similar). If so, you should say that it exists here.
Even though this information can be found inside the project on machine-readable format like in a .json file, it's good to include a summary of most useful links to humans using your project. You can include links like:
- Project homepage: https://your.github.com/awesome-project/
- Repository: https://github.com/your/awesome-project/
- Issue tracker: https://github.com/your/awesome-project/issues
- In case of sensitive bugs like security vulnerabilities, please contact [email protected] directly instead of using issue tracker. We value your effort to improve the security and privacy of this project!
- Related projects:
- Your other project: https://github.com/your/other-project/
- Someone else's project: https://github.com/someones/awesome-project/