From f40a2e7603125be21953656efc9314e8029af4f6 Mon Sep 17 00:00:00 2001 From: Anusha Yella <136127167+techcontributor@users.noreply.github.com> Date: Wed, 11 Sep 2024 22:41:14 +0530 Subject: [PATCH] Add CONTRIBUTING.md (#1836) Co-authored-by: Anu --- CONTRIBUTING.md | 51 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..84a569b5 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,51 @@ +# Contributing to mem0 + +Let us make contribution easy, collaborative and fun. + +## Submit your Contribution through PR + +To make a contribution, follow these steps: + +1. Fork and clone this repository +2. Do the changes on your fork with dedicated feature branch `feature/f1` +3. If you modified the code (new feature or bug-fix), please add tests for it +4. Include proper documentation / docstring and examples to run the feature +5. Ensure that all tests pass +6. Submit a pull request + +For more details about pull requests, please read [GitHub's guides](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request). + + +### ๐Ÿ“ฆ Package manager + +We use `poetry` as our package manager. You can install poetry by following the instructions [here](https://python-poetry.org/docs/#installation). + +Please DO NOT use pip or conda to install the dependencies. Instead, use poetry: + +```bash +make install_all + +#activate + +poetry shell +``` + +### ๐Ÿ“Œ Pre-commit + +To ensure our standards, make sure to install pre-commit before starting to contribute. + +```bash +pre-commit install +``` + +### ๐Ÿงช Testing + +We use `pytest` to test our code. You can run the tests by running the following command: + +```bash +poetry run pytest +``` + +Several packages have been removed from Poetry to make the package lighter. Therefore, it is recommended to run `make install_all` to install the remaining packages and ensure all tests pass. Make sure that all tests pass before submitting a pull request. + +We look forward to your pull requests and can't wait to see your contributions! \ No newline at end of file