Skip to content

Commit 805fe01

Browse files
committed
update: readme
1 parent 77ff0cc commit 805fe01

3 files changed

Lines changed: 258 additions & 43 deletions

File tree

β€ŽCONTRIBUTING.mdβ€Ž

Lines changed: 244 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,244 @@
1+
# Contributing to MemU
2+
3+
Thank you for your interest in contributing to MemU! This document provides guidelines and information for contributors.
4+
5+
## 🌟 Ways to Contribute
6+
7+
We welcome all types of contributions:
8+
9+
- πŸ› **Bug Reports** - Help us identify and fix issues
10+
- πŸ’‘ **Feature Requests** - Suggest new capabilities and improvements
11+
- πŸ“ **Documentation** - Improve guides, examples, and API docs
12+
- πŸ”§ **Code Contributions** - Add features, fix bugs, optimize performance
13+
- πŸ§ͺ **Testing** - Write tests, improve coverage, test edge cases
14+
- 🎨 **UI/UX** - Enhance user experience and interface design
15+
- 🌐 **Translations** - Help make MemU accessible globally
16+
- πŸ“’ **Community** - Help others in discussions and support channels
17+
18+
## πŸš€ Quick Start for Contributors
19+
20+
### Prerequisites
21+
- Python 3.8+
22+
- Git
23+
- A code editor (VS Code recommended)
24+
25+
### Development Setup
26+
27+
```bash
28+
# 1. Fork the repository on GitHub
29+
# 2. Clone your fork locally
30+
git clone https://github.com/YOUR_USERNAME/MemU.git
31+
cd MemU
32+
33+
# 3. Create a virtual environment
34+
python -m venv venv
35+
source venv/bin/activate # On Windows: venv\Scripts\activate
36+
37+
# 4. Install development dependencies
38+
pip install -e ".[dev]"
39+
40+
# 5. Install pre-commit hooks
41+
make pre-commit-install
42+
43+
# 6. Verify setup by running tests
44+
make test
45+
```
46+
47+
### Available Commands
48+
49+
```bash
50+
make help # Show all available commands
51+
make test # Run tests
52+
make coverage # Run tests with coverage report
53+
make lint # Run linting (flake8, mypy)
54+
make format # Format code (black, isort)
55+
make pre-commit-run # Run all pre-commit checks
56+
make clean # Clean build artifacts
57+
```
58+
59+
## πŸ”§ Development Guidelines
60+
61+
### Code Style
62+
- Follow **PEP 8** Python style guidelines
63+
- Use **Black** for code formatting (line length: 88)
64+
- Use **isort** for import sorting
65+
- Use **type hints** for all functions and methods
66+
- Write **docstrings** for public APIs
67+
68+
### Code Quality Standards
69+
- Maintain **test coverage > 80%**
70+
- All code must pass **linting** (flake8, mypy)
71+
- Use **meaningful variable and function names**
72+
- Keep functions **focused and small**
73+
- Follow **SOLID principles**
74+
75+
### Testing
76+
```bash
77+
# Run all tests
78+
pytest
79+
80+
# Run with coverage
81+
pytest --cov=memu --cov-report=html
82+
83+
# Run specific test file
84+
pytest tests/test_memory_agent.py
85+
86+
# Run tests with specific marker
87+
pytest -m "not slow"
88+
```
89+
90+
## πŸ“ Submitting Changes
91+
92+
### Before You Start
93+
1. **Search existing issues** to avoid duplicates
94+
2. **Create an issue** for new features or major changes
95+
3. **Discuss your approach** in the issue before implementing
96+
97+
### Creating Issues
98+
99+
When reporting bugs, please include:
100+
- **Environment details** (Python version, OS, MemU version)
101+
- **Reproduction steps** with minimal code example
102+
- **Expected vs actual behavior**
103+
- **Error messages** or stack traces
104+
105+
For feature requests, please describe:
106+
- **The problem** you're trying to solve
107+
- **Proposed solution** or approach
108+
- **Alternative solutions** you've considered
109+
- **Use cases** and examples
110+
111+
### Pull Request Process
112+
113+
1. **Create a feature branch**
114+
```bash
115+
git checkout -b feature/amazing-feature
116+
# or for bug fixes
117+
git checkout -b bugfix/fix-memory-leak
118+
```
119+
120+
2. **Make your changes**
121+
- Write clear, descriptive commit messages
122+
- Keep commits focused and atomic
123+
- Add tests for new functionality
124+
- Update documentation as needed
125+
126+
3. **Test your changes**
127+
```bash
128+
make test
129+
make lint
130+
make coverage
131+
```
132+
133+
4. **Submit pull request**
134+
- Use descriptive title and description
135+
- Reference related issues (e.g., "Fixes #123")
136+
- Include testing instructions
137+
- Add screenshots for UI changes
138+
139+
### Commit Message Format
140+
141+
Use conventional commit format:
142+
143+
```
144+
type(scope): description
145+
146+
Examples:
147+
feat(memory): add semantic search functionality
148+
fix(llm): resolve OpenAI timeout issues
149+
docs(readme): update installation instructions
150+
test(agent): add unit tests for memory retrieval
151+
refactor(core): restructure memory storage logic
152+
```
153+
154+
**Types:**
155+
- `feat`: New feature
156+
- `fix`: Bug fix
157+
- `docs`: Documentation changes
158+
- `test`: Adding or fixing tests
159+
- `refactor`: Code restructuring without feature changes
160+
- `perf`: Performance improvements
161+
- `chore`: Maintenance tasks
162+
163+
## 🎯 Current Priorities
164+
165+
We're currently focusing on:
166+
167+
| Priority | Area | Description |
168+
|----------|------|-------------|
169+
| πŸ”₯ **High** | Multi-modal Support | Images, audio, video memory processing |
170+
| πŸ”₯ **High** | Performance | Memory retrieval optimization, caching |
171+
| πŸ”₯ **High** | LLM Providers | Additional provider integrations |
172+
| 🟑 **Medium** | Enterprise Features | SSO, RBAC, audit logging |
173+
| 🟑 **Medium** | Mobile SDKs | React Native, Flutter support |
174+
| 🟒 **Low** | UI Improvements | Dashboard, memory visualization |
175+
176+
## 🏷️ Issue Labels
177+
178+
| Label | Description |
179+
|-------|-------------|
180+
| `good first issue` | Perfect for newcomers |
181+
| `help wanted` | Extra attention needed |
182+
| `bug` | Something isn't working |
183+
| `enhancement` | New feature request |
184+
| `documentation` | Improvements to docs |
185+
| `performance` | Performance optimization |
186+
| `breaking change` | Requires version bump |
187+
| `priority:high` | Urgent issues |
188+
| `priority:medium` | Important issues |
189+
| `priority:low` | Nice to have |
190+
191+
## πŸ“‹ Code Review Process
192+
193+
### For Contributors
194+
- Be open to feedback and constructive criticism
195+
- Respond promptly to review comments
196+
- Make requested changes in new commits (don't force push)
197+
- Ask questions if feedback is unclear
198+
199+
### For Reviewers
200+
- Be constructive and respectful in feedback
201+
- Focus on code quality, maintainability, and project goals
202+
- Suggest improvements with explanations
203+
- Approve when ready, request changes when needed
204+
205+
## πŸ”’ Security
206+
207+
**Reporting Security Issues:**
208+
- **DO NOT** create public issues for security vulnerabilities
209+
- Email security issues privately to [security@nevamind.ai](mailto:security@nevamind.ai)
210+
- Include detailed reproduction steps and impact assessment
211+
- We'll acknowledge receipt within 24 hours
212+
213+
## πŸ“„ License and Attribution
214+
215+
By contributing to MemU, you agree that:
216+
- Your contributions will be licensed under the **Apache License 2.0**
217+
- You have the right to contribute the code/content
218+
- Your contribution doesn't violate any third-party rights
219+
220+
## 🌍 Community Guidelines
221+
222+
- Be respectful and inclusive
223+
- Follow our [Code of Conduct](CODE_OF_CONDUCT.md)
224+
- Help others learn and grow
225+
- Share knowledge and best practices
226+
- Celebrate diverse perspectives and experiences
227+
228+
## πŸ“ž Getting Help
229+
230+
| Channel | Best For |
231+
|---------|----------|
232+
| πŸ’¬ [Discord](https://discord.gg/hQZntfGsbJ) | Real-time chat, quick questions |
233+
| πŸ—£οΈ [GitHub Discussions](https://github.com/NevaMind-AI/MemU/discussions) | Feature discussions, Q&A |
234+
| πŸ› [GitHub Issues](https://github.com/NevaMind-AI/MemU/issues) | Bug reports, feature requests |
235+
| πŸ“§ [Email](mailto:contact@nevamind.ai) | Private inquiries |
236+
237+
## πŸŽ‰ Recognition
238+
239+
Contributors are recognized in:
240+
- README.md contributors section
241+
- Release notes for significant contributions
242+
- Our [Contributors](https://github.com/NevaMind-AI/MemU/graphs/contributors) page
243+
244+
Thank you for helping make MemU better! πŸš€

β€ŽMakefileβ€Ž

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,15 @@ test: ## Run tests
2626
pytest
2727

2828
coverage: ## Run tests with coverage
29-
pytest --cov=personalab --cov-report=html --cov-report=term
29+
pytest --cov=memu --cov-report=html --cov-report=term
3030

3131
lint: ## Run linting
32-
flake8 personalab tests
33-
mypy personalab
32+
flake8 memu tests
33+
mypy memu
3434

3535
format: ## Format code
36-
black personalab tests
37-
isort personalab tests
36+
black memu tests
37+
isort memu tests
3838

3939
build: clean ## Build package
4040
python -m build

β€ŽREADME.mdβ€Ž

Lines changed: 9 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@
1818
With **memU**, you can build AI companions that truly remember you. They learn who you are, what you care about, and grow alongside you through every interaction.
1919

2020
### πŸ₯‡ 92.9% Accuracy - πŸ’° 90% Cost Reduction - πŸ€– AI Companion Specialized
21+
- βœ… **AI Companion Specialization** - Adapt to AI companions application
2122
- βœ… **92.9% Accuracy** - State-of-the-art score in Locomo benchmark
2223
- βœ… **Up to 70% Cost Reduction** - Through optimized infrastructure
2324
- βœ… **Advanced Retrieval Strategies** - Multiple methods including semantic search, hybrid search, contextual retrieval
24-
- βœ… **AI Companion Specialization** - Adapt to AI companions application
2525
- βœ… **24/7 Support** - For enterprise customers
2626

2727
---
@@ -53,6 +53,7 @@ The fastest way to integrate your application with memU. Perfect for teams and i
5353
#### Step-by-step
5454

5555
**Step 1:** Create account & get your API key
56+
5657
**Step 2:** Add three lines to your code
5758
```python
5859
pip install memu-py
@@ -70,22 +71,18 @@ memory_agent = MemoryAgent()
7071
For organizations requiring maximum security, customization, control and best quality:
7172

7273
- **Commercial License** - Full proprietary features, commercial usage rights, white-labeling options
73-
7474
- **Custom Development** - SSO/RBAC integration, dedicated algorithm team for scenario-specific framework optimization
75-
7675
- **Intelligence & Analytics** - User behavior analysis, real-time production monitoring, automated agent optimization
77-
7876
- **Premium Support** - 24/7 dedicated support, custom SLAs, professional implementation services
79-
8077
πŸ“§ **Enterprise Inquiries:** [contact@nevamind.ai](mailto:contact@nevamind.ai)
8178

8279

8380
### 🏠 Self-Hosting (Community Edition)
8481
For users and developers who prefer local control, data privacy, or customization:
8582

86-
* βœ… **Data Privacy** - Keep sensitive data within your infrastructure
87-
* βœ… **Customization** - Modify and extend the platform to fit your needs
88-
* βœ… **Cost Control** - Avoid recurring cloud fees for large-scale deployments
83+
* **Data Privacy** - Keep sensitive data within your infrastructure
84+
* **Customization** - Modify and extend the platform to fit your needs
85+
* **Cost Control** - Avoid recurring cloud fees for large-scale deployments
8986

9087
πŸš€ **Coming Soon!**
9188

@@ -275,40 +272,14 @@ Try MemU instantly in your browser: [**πŸ”— Interactive Demo**](https://demo.nev
275272

276273
## 🀝 Contributing
277274

278-
![Contributing Flow](assets/contributing-flow.png)
275+
We build trust through open-source collaboration. Your creative contributions drive memU's innovation forward. Explore our GitHub issues and projects to get started and make your mark on the future of memU.
279276

280-
### **Join Our Mission**
277+
πŸ“‹ **[Read our detailed Contributing Guide β†’](CONTRIBUTING.md)**
281278

282-
Help us build the future of AI memory! We welcome contributions of all kinds.
283279

284-
**🌟 Ways to Contribute:**
285-
- πŸ› Report bugs and suggest features
286-
- πŸ“ Improve documentation and examples
287-
- πŸ”§ Add new LLM providers and integrations
288-
- πŸ§ͺ Write tests and improve code quality
289-
290-
### **Quick Contribution Guide**
291-
292-
```bash
293-
# 1. Fork and clone
294-
git clone https://github.com/YOUR_USERNAME/MemU.git
295-
296-
# 2. Create feature branch
297-
git checkout -b feature/amazing-feature
298-
299-
# 3. Make changes and test
300-
pip install -e .
301-
python -m pytest
302-
303-
# 4. Submit PR
304-
git push origin feature/amazing-feature
305-
```
280+
### **πŸ“„ License**
306281

307-
**🎯 Current Priorities:**
308-
- Multi-modal memory support (images, audio)
309-
- Performance optimizations
310-
- Additional embedding providers
311-
- Enterprise security features
282+
By contributing to MemU, you agree that your contributions will be licensed under the **Apache License 2.0**.
312283

313284
---
314285

0 commit comments

Comments
Β (0)