JSON API for listing events related details.
git clone https://github.com/d2s/events-api.git
cd events-api
npm install
npm run dev
-
Micro
- "Asynchronous HTTP microservices"
-
micro-dev
- "CLI provides tools for building microservices a breeze!"
-
xo
- "Opinionated but configurable ESLint wrapper with lots of goodies included. Enforces strict and readable code."
Multi-stage builds allow developers to build smaller app images, saving storage space and resources from the end users. Really good thing from the app security viewpoint, as there are less leftovers from the build process.
Dependencies: You need to have Docker CE installed on your development environment, if you want to build new Docker containers.
To build the Docker container, run the command:
npm run build-docker
TODO: Write full instructions on how to run the application with Docker. (Not yet tested.)
docker-compose up
.gitignore
is based on the Node.gitignore example ignore patterns.
git status
git add FILENAME
npm run git-commit
Alternative to that, you could use git commit
directly.
Commit message will be automatically validated by husky
.
Please write down the commit message to another text file/buffer
before creating the commit message (as husky will stop and tell error
if the commit message is not compliant to standards).
When you want to release a new version of the application, use the pre-configured scripts to automate much of the release process.
standard-version does automatic versioning and CHANGELOG generation, using conventional commit messages.
How it works:
- When you land commits on your
master
branch, select the "Squash and Merge" option. - Add a title and body to the commit message that follows the Conventional Commits Specification.
- When you're ready to release:
- run:
git checkout master; git pull origin master
- run:
npm run release
- run:
npm run git-push-tags
- run:
npm run release
(that is an alias for standard-version
) does the following:
- Bumps the version in package.json (based on your commit history)
- Uses conventional-changelog to update CHANGELOG.md
- Commits package.json (et al.) and CHANGELOG.md
- Tags a new release