Any fool can write code that a computer can understand. Good programmers write code that humans can understand. โ Martin Fowler
generic is a template, extendable for any project type that comes into your mind.
It is composed of
- A Makefile with targets for configuring, building, testing, installing and uninstalling an application or module.
- A release script capable of git tagging your releases (compatible with both bash and powershell)
- A README template to best describe your project
- And a set of templates used by the most powerful and popular git repository managers on the market.
generic is implemented so far by templ/go and templ/python
- Please install git-scm tool.
- Please install a form of make
- Install Make for Windows
- Install make from ezwinports
- Install chocolatey, run
choco install make
- Please install
git
andmake
# i.e debian
sudo apt-get install git make -y
# i.e mac OS
brew install make git
- Clone the project
- Remove .git folder
- Re-initialize your git repository
git clone https://github.com/templ-project/generic your_project
cd your_project
rm -rf .git
git init
git add remote origin https://url/to/your/project/repository
git add .
git commit -am "init"
git push origin master
Adapt your Makefile
to fit your needs.
Adapt test
directive in your Makefile to fit your needs.
Adapt release
directive in your Makefile to fit your needs.
make release
will know how to increment version and create tags on its own.
- Dragos Cirjan - Initial work
Add a set of links to the issues page/website, so people can know where to add issues/bugs or ask for support.
(If the package is public, add licence) This project is licensed under the MIT License - see the LICENSE.md file for details
Remove Everything above this line
One Paragraph of project description goes here
What things you need to install the software and how to install them (based on each OS type).
# Give Examples
npm install -g node-gyp windows-build-tools
# Warning: Please note windows-build-tools will install MSVS which takes a
# LONG amount of time.
# Give Examples
apt-get install build-essential mono
npm install -y node-gyp
Describe a list of known issues, and how to bypass them.
A step by step series of examples that tell you how to get a development env running
Give the example
until finished
End with an example of getting some data out of the system or using it for a little demo
Explain any development process for the project, if necesary
give examples
Explain how to run the automated tests for this system
Explain what these tests test and why
Give an example
Explain what these tests test and why
Give an example
Explain what these tests test and why
Give an example
Add additional notes about how to deploy this on a live system
- Dragos Cirjan - Initial work - PurpleBooth
See also the list of contributors who participated in this project.
Add a set of links to the issues page/website, so people can know where to add issues/bugs or ask for support.
(If the package is public, add licence) This project is licensed under the MIT License - see the LICENSE.md file for details
Small changelog history. The rest should be added to CHANGELOG.md.
See here a template for changelogs: https://keepachangelog.com/en/1.0.0/
Also see this tool for automatically generating them: https://www.npmjs.com/package/changelog