Thank you for your interest in contributing to Memobase! This document provides guidelines and instructions for contributing to the project.
- Development Setup
- Development Workflow
- Pull Request Process
- Coding Standards
- PR or Issue?
- Communication
- Python (>= 3.11)
- Docker
- Git
-
Fork the repository
-
Clone your fork:
git clone https://github.com/your-username/memobase.git cd memobase -
Set up the virtual environment:
cd src/server/api python3 -m venv .venv source .venv/bin/activate pip3 install -r requirements.txt
-
Run the server:
For more detailed information, refer to the server documentation.
-
Create a branch for your feature or bugfix:
git checkout -b feature/your-feature-name
-
Make your changes with frequent commits:
git commit -m "feat: add your feature" -
Write tests for your changes
-
Update documentation as needed
-
Rebase your branch onto the latest
devbranch:git checkout dev git pull upstream dev git checkout your-branch git rebase dev
-
Fix up commits to maintain clean history:
git rebase -i dev
-
Before submitting, ensure:
- All tests pass
- Code is properly formatted
- Documentation is updated
-
Submit your PR with:
- A clear title following the commit message format
- A comprehensive description of your changes
- References to any related issues
- We will not accept document typo fix PR, just make an issue if you find any typo.
If you have questions or need help, please:
- Check existing issues and documentation
- Create a new issue for discussion
- Join our Discord
Thank you for contributing to Memobase!