diff --git a/README.md b/README.md index d6319d13c..be481df00 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ ![NPM](https://img.shields.io/badge/-npm-black?style=flat-square&logoColor=white&logo=npm&color=CE0201)[![Known Vulnerabilities](https://snyk.io/test/github/antoinezanardi/werewolves-assistant-api-next/badge.svg?targetFile=package.json&style=flat-square)](https://snyk.io/test/github/antoinezanardi/werewolves-assistant-api-next?targetFile=package.json) [![Tests count](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/tests-count)](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/tests-count) -[![Covered Statements](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/covered-statements)](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/covered-statements) +[![Scenarios](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/scenarios)](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/scenarios) [![Mutation testing badge](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fbadge-api.stryker-mutator.io%2Fgithub.com%2Fantoinezanardi%2Fwerewolves-assistant-api-next%2Fmain)](https://dashboard.stryker-mutator.io/reports/github.com/antoinezanardi/werewolves-assistant-api-next/main) [![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=antoinezanardi_werewolves-assistant-api-next&metric=sqale_index)](https://sonarcloud.io/summary/new_code?id=antoinezanardi_werewolves-assistant-api-next) @@ -27,7 +27,7 @@ ## ๐Ÿ“‹ Table of Contents 1. ๐Ÿบ [What is this API ?](#what-is-this-api) -2. ๐Ÿƒ [Roles available](#roles-available) +2. ๐Ÿƒ [Available roles](#available-roles) 3. ๐Ÿ”จ [Installation](#installation) 4. ๐Ÿ’ฏ [Tests](#tests) 5. โ˜‘๏ธ [Code analysis and consistency](#code-analysis-and-consistency) @@ -39,22 +39,23 @@ ## ๐Ÿบ What is this API ? Werewolves Assistant API provides over HTTP requests a way of manage Werewolves games to help the game master. -This is the **next** version of the current [Werewolves Assistant API](https://github.com/antoinezanardi/werewolves-assistant-api). It is still under development. +This is the **next** version of the current **[Werewolves Assistant API](https://github.com/antoinezanardi/werewolves-assistant-api)**. It is still under development. #### ๐Ÿค” Want to know more about this awesome project ? **Check out the dedicated about page**. -## ๐Ÿƒ Roles available +## ๐Ÿƒ Available roles **27 different official roles** are available to play : -|
Werewolf |
Big Bad Wolf |
Vile Father Of Wolves |
White Werewolf | -|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| -|
Villager |
Villager-Villager |
Seer |
Cupid | -|
Witch |
Hunter |
Little Girl |
Guard | -|
Ancient |
Scapegoat |
Idiot |
Two Sisters | -|
Three Brothers |
Fox |
Bear Tamer |
Stuttering Judge | -|
Rusty Sword Knight |
Wild Child |
Dog-Wolf |
Thief | -|
Angel |
Pied Piper |
Raven | | +|
**Werewolf** |
**Big Bad Wolf** |
**Vile Father Of Wolves** |
**White Werewolf** | +|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| +|
**Villager** |
**Villager-Villager** |
**Seer** |
**Cupid** | +|
**Witch** |
**Hunter** |
**Little Girl** |
**Guard** | +|
**Ancient** |
**Scapegoat** |
**Idiot** |
**Two Sisters** | +|
**Three Brothers** |
**Fox** |
**Bear Tamer** |
**Stuttering Judge** | +|
**Rusty Sword Knight** |
**Wild Child** |
**Dog-Wolf** |
**Thief** | +|
**Angel** |
**Pied Piper** |
**Raven** | + ## ๐Ÿ”จ Installation @@ -78,7 +79,7 @@ npm run docker:test:start ## ๐Ÿ’ฏ Tests -Unit and E2E tests are orchestrated with : +### ๐Ÿงช Unit and E2E tests ![Jest](https://img.shields.io/badge/-Jest-black?style=for-the-badge&logoColor=white&logo=jest&color=BF3B14) @@ -92,20 +93,23 @@ Unit and E2E tests are orchestrated with : [![Covered Lines](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/covered-lines)](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/covered-lines) -Acceptance tests are managed by : +### ๐Ÿฅ’ Acceptance tests ![Cucumber](https://img.shields.io/badge/-Cucumber-black?style=for-the-badge&logoColor=white&logo=cucumber&color=169652) [![Scenarios](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/scenarios)](https://byob.yarr.is/antoinezanardi/werewolves-assistant-api-next/scenarios) -Mutant testing is also available with : +### ๐Ÿ‘ฝ Mutant testing ![Stryker](https://img.shields.io/badge/-Stryker-black?style=for-the-badge&logoColor=white&logo=stripe&color=7F1B10) [![Mutation testing badge](https://img.shields.io/endpoint?style=flat&url=https%3A%2F%2Fbadge-api.stryker-mutator.io%2Fgithub.com%2Fantoinezanardi%2Fwerewolves-assistant-api-next%2Fmain)](https://dashboard.stryker-mutator.io/reports/github.com/antoinezanardi/werewolves-assistant-api-next/main) +You can also check the **[mutation testing report](https://dashboard.stryker-mutator.io/reports/github.com/antoinezanardi/werewolves-assistant-api-next/main#mutant)**. -Before testing, you must follow the [installation steps](#installation). +### โ–ถ๏ธ Commands + +Before testing, you must follow the **[installation steps](#installation)**. Then, run one of the following commands : @@ -137,14 +141,16 @@ npm run test:stryker:force ## โ˜‘๏ธ Code analysis and consistency -Code linting is managed by : +### ๐Ÿ” Code linting & formatting -![EsLint](https://img.shields.io/badge/-ESLint-black?style=for-the-badge&logoColor=white&logo=eslint&color=341BAB) +![ESLint](https://img.shields.io/badge/-ESLint-black?style=for-the-badge&logoColor=white&logo=eslint&color=341BAB) -In order to keep the code clean, consistent and free of bad TS practises, more than **300 rules are activated** ! +In order to keep the code clean, consistent and free of bad TS practices, more than **300 ESLint rules are activated** ! Complete list of all enabled rules is available in the **[.eslintrc.js file](https://github.com/antoinezanardi/werewolves-assistant-api-next/blob/master/.eslintrc.js)**. +### โ–ถ๏ธ Commands + Before linting, you must follow the [installation steps](#installation). Then, run one of the following commands : @@ -160,7 +166,7 @@ npm run lint:fix npm run lint:staged ``` -Project is scanned by : +### ๐Ÿฅ‡ Project quality scanner ![SonarCloud](https://img.shields.io/badge/-SonarCloud-black?style=for-the-badge&logoColor=white&logo=sonarcloud&color=F37A3A) @@ -191,9 +197,9 @@ Releases on **main** branch are generated and published automatically by : ![Semantic Release](https://img.shields.io/badge/-Semantic%20Release-black?style=for-the-badge&logoColor=white&logo=semantic-release&color=000000) -It uses the [conventional commit](https://www.conventionalcommits.org/en/v1.0.0/) strategy. +It uses the **[conventional commit](https://www.conventionalcommits.org/en/v1.0.0/)** strategy. -Each change when a new release comes up is listed in the CHANGELOG.md file. +Each change when a new release comes up is listed in the **CHANGELOG.md file**. Also, you can keep up with changes by watching releases via the **Watch GitHub button** at the top of this page. @@ -201,7 +207,7 @@ Also, you can keep up with changes by watching releases via the **Watch GitHub b ## โœจ Misc commands -### ๐ŸŒณ Animated tree visualisation of the project's evolution with [Gource](https://gource.io/) +### ๐ŸŒณ Animated tree visualisation of the project's evolution with **[Gource](https://gource.io/)** ```shell # Please ensure that `gource` is installed on your system. npm run gource