Skip to content

Commit bf44de7

Browse files
authored
docs: add How to Contribute section to README (#215)
1 parent abe0f1b commit bf44de7

1 file changed

Lines changed: 56 additions & 0 deletions

File tree

README.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,62 @@ View detailed experimental data: [memU-experiment](https://github.com/NevaMind-A
368368

369369
---
370370

371+
## 🤝 How to Contribute
372+
373+
We welcome contributions from the community! Whether you're fixing bugs, adding features, or improving documentation, your help is appreciated.
374+
375+
### Getting Started
376+
377+
To start contributing to MemU, you'll need to set up your development environment:
378+
379+
#### Prerequisites
380+
- Python 3.13+
381+
- [uv](https://github.com/astral-sh/uv) (Python package manager)
382+
- Git
383+
384+
#### Setup Development Environment
385+
386+
```bash
387+
# 1. Fork and clone the repository
388+
git clone https://github.com/YOUR_USERNAME/memU.git
389+
cd memU
390+
391+
# 2. Install development dependencies
392+
make install
393+
```
394+
395+
The `make install` command will:
396+
- Create a virtual environment using `uv`
397+
- Install all project dependencies
398+
- Set up pre-commit hooks for code quality checks
399+
400+
#### Running Quality Checks
401+
402+
Before submitting your contribution, ensure your code passes all quality checks:
403+
404+
```bash
405+
make check
406+
```
407+
408+
The `make check` command runs:
409+
- **Lock file verification**: Ensures `pyproject.toml` consistency
410+
- **Pre-commit hooks**: Lints code with Ruff, formats with Black
411+
- **Type checking**: Runs `mypy` for static type analysis
412+
- **Dependency analysis**: Uses `deptry` to find obsolete dependencies
413+
414+
### Contributing Guidelines
415+
416+
For detailed contribution guidelines, code standards, and development practices, please see [CONTRIBUTING.md](CONTRIBUTING.md).
417+
418+
**Quick tips:**
419+
- Create a new branch for each feature or bug fix
420+
- Write clear commit messages
421+
- Add tests for new functionality
422+
- Update documentation as needed
423+
- Run `make check` before pushing
424+
425+
---
426+
371427
## 📄 License
372428

373429
[Apache License 2.0](LICENSE.txt)

0 commit comments

Comments
 (0)