# Guidelines ## For Development - help us putting your code into production by opening a meaningful issue - stay simple for the user by focusing on the mantra "convention over configuration" - at installation the site should work reasonable without (m)any configuration - stay close to the Hugo way - don't use npm or any preprocessing, our contributors may not be front-end developers - document new features in exampleSite - don't break existing features if you don't have to - remove reported issue from the browser's console - be compatible to IE11, at least for main functionality, for Javascript this means: - test in IE11 - check caniuse.com - don't use arrow functions - don't use template literals - don't use other fancy new ES5/6 stuff ## For Release - create releases following [semver policy](https://semver.org/) - we are using [gren](https://github.com/github-tools/github-release-notes) to generate the changelog and releases ### One Time Steps - Generate API Token as described in [gren's README.md](https://github.com/github-tools/github-release-notes) - On Windows do `setx GREN_GITHUB_TOKEN ` and restart your shell ### Steps per Release - close all issues of the milestone or push them back to an open milestone - close the milestone - Tag and push the repo ```shell git tag --message "" git push origin ``` - regenerate changelog with _gren_ ```shell npx github-release-notes@0.17.1 changelog --generate --override --tags=all ``` - add the changelog to git and update the tag ```shell git add exampleSite/content/basics/CHANGELOG.md git commit --message "Ship tag " git push origin main git tag --message "" --force git push --force origin ``` - generate release with _gren_ ```shell npx github-release-notes@0.17.1 release --tags ```