- Added generated index files and report directories to .gitignore to prevent unnecessary tracking of transient files. - Updated README links to reflect new documentation paths for better navigation. - Improved documentation organization by ensuring all links point to the correct locations, enhancing user experience and accessibility.
78 lines
2.1 KiB
Markdown
78 lines
2.1 KiB
Markdown
# Contributing to Sankofa
|
|
|
|
**Last Updated**: 2025-01-09
|
|
|
|
Thank you for your interest in contributing to Sankofa! This document provides guidelines and instructions for contributing to the Sankofa ecosystem and Sankofa Phoenix cloud platform.
|
|
|
|
## Code of Conduct
|
|
|
|
- Be respectful and inclusive
|
|
- Welcome newcomers and help them learn
|
|
- Focus on constructive feedback
|
|
- Respect different viewpoints and experiences
|
|
|
|
## Getting Started
|
|
|
|
1. Fork the repository
|
|
2. Clone your fork: `git clone https://github.com/yourusername/Sankofa.git`
|
|
3. Create a branch: `git checkout -b feature/your-feature-name`
|
|
4. Make your changes
|
|
5. Commit your changes: `git commit -m "Add your feature"`
|
|
6. Push to your fork: `git push origin feature/your-feature-name`
|
|
7. Open a Pull Request
|
|
|
|
## Development Setup
|
|
|
|
See [DEVELOPMENT.md](./DEVELOPMENT.md) for detailed setup instructions.
|
|
|
|
## Pull Request Process
|
|
|
|
1. Ensure your code follows the project's style guidelines
|
|
2. Add tests for new features
|
|
3. Ensure all tests pass: `pnpm test`
|
|
4. Update documentation as needed
|
|
5. Ensure your branch is up to date with the main branch
|
|
6. Submit your PR with a clear description
|
|
|
|
## Coding Standards
|
|
|
|
### TypeScript/JavaScript
|
|
|
|
- Use TypeScript for all new code
|
|
- Follow the existing code style
|
|
- Use meaningful variable and function names
|
|
- Add JSDoc comments for public APIs
|
|
- Avoid `any` types - use proper typing
|
|
|
|
### React Components
|
|
|
|
- Use functional components with hooks
|
|
- Keep components small and focused
|
|
- Extract reusable logic into custom hooks
|
|
- Use proper prop types or TypeScript interfaces
|
|
|
|
### Git Commits
|
|
|
|
- Use clear, descriptive commit messages
|
|
- Follow conventional commits format when possible
|
|
- Keep commits focused on a single change
|
|
|
|
## Testing
|
|
|
|
- Write tests for all new features
|
|
- Ensure existing tests still pass
|
|
- Aim for >80% code coverage
|
|
- Test both success and error cases
|
|
|
|
## Documentation
|
|
|
|
- Update README.md if needed
|
|
- Add JSDoc comments for new functions
|
|
- Update API documentation for backend changes
|
|
- Keep architecture docs up to date
|
|
|
|
## Questions?
|
|
|
|
Feel free to open an issue for questions or reach out to the maintainers.
|
|
|