diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 09e48593..db53243a 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -3,10 +3,70 @@
**General Rules**
- As much as possible, try to follow the existing format of markdown and code.
-- Don't forget to run `npm run lint` and `npm test` before submitting pull requests.
+- Don't forget to run `npm run check`,`npm run lint` and `npm test` before submitting pull requests.
- Make sure that **100%** of your code is covered by tests.
-**Contributing new features **
+**Conventional Commits**
+
+
+ Identifier |
+ Purpose |
+
+
+ feat |
+ Introduce a new feature |
+
+
+ fix |
+ Fix an error or defect |
+
+
+ chore |
+ General maintenance tasks (e.g., build, configuration, dependencies) |
+
+
+ docs |
+ Documentation changes (additions, updates, fixes) |
+
+
+ style |
+ Changes in code style, formatting, whitespace, etc. (no impact on functionality) |
+
+
+ refactor |
+ Code refactoring (typically, no functional changes) |
+
+
+ perf |
+ Performance optimizations |
+
+
+ test |
+ Changes related to tests (additions, updates, fixes) |
+
+
+ build |
+ Changes to the build system or external dependencies |
+
+
+ ci |
+ Changes related to continuous integration and deployment (CI/CD) |
+
+
+ revert |
+ Revert a previous commit |
+
+
+ merge |
+ Merge branches or pull requests |
+
+
+ release |
+ Commits related to version releases |
+
+
+
+**Contributing new features**
- To ensure that there are no conflicts when merging the branch into the main branch,
- it is necessary to perform the following steps each time new development is going to be conducted on non-main branches:
@@ -15,8 +75,9 @@
- resolve conflicts before continuing the development.
- After new features developed
- `git add .`
-- `git commit -m [rbtree] features` (`rbtree` needs to be replaced by the module you have modified,
-- `features` must be replaced by the detailed description about the features you implemented)
+- `git commit -m "feat(rbtree): features`
+- `feat(rbtree):` needs to be replaced by the module you have modified
+- `features` must be replaced by the detailed description about the features you implemented
- `git push`
- click the `New pull request` on Github https://github.com/zrwusa/data-structure-typed/branches
@@ -26,6 +87,6 @@
contributing "several data structures" all at once contribute them all
one by one separately (i.e. one pull request for "RBTree", another one
for "AATree" and so on).
-- Provide **README.md** for each of the data structure **with explanations** of
+- Modify **README.md** for each of the data structure **with explanations** of
the algorithm and **with links** to further readings.
- Describe what you do in code using **comments**.