Contributing to Equilink
Thank you for your interest in contributing to Equilink! This document provides guidelines and best practices for contributing to the project.
Getting Started
Fork the repository
Clone your fork:
Create a new branch:
Development Environment Setup
Install development dependencies:
Install pre-commit hooks:
Coding Standards
We follow these coding standards:
Python
Follow PEP 8 style guide
Use type hints for function arguments and return values
Maximum line length of 88 characters (Black formatter)
Docstrings for all public methods and classes (Google style)
Example:
JavaScript/TypeScript
Use ESLint with Airbnb configuration
Use Prettier for formatting
Use TypeScript for type safety
Testing
Writing Tests
Write unit tests for all new features
Maintain test coverage above 85%
Use pytest for Python tests
Use Jest for JavaScript tests
Example test:
Pull Request Process
Update documentation if needed
Add tests for new features
Run the test suite:
Push to your fork:
Open a Pull Request with:
Clear title and description
Link to any related issues
Screenshots/videos for UI changes
List of testing steps
Commit Messages
Follow conventional commits specification:
Types:
feat: New feature
fix: Bug fix
docs: Documentation changes
style: Code style changes
refactor: Code refactoring
test: Adding tests
chore: Maintenance tasks
Example:
Updating Documentation
Update relevant .md files in the /docs directory
Generate API documentation:
Test documentation locally:
Documentation Style
Use clear, concise language
Include code examples
Provide step-by-step instructions
Add diagrams when helpful
Code Review Requirements:
Two approvals required
All CI checks must pass
Documentation updated
Test coverage maintained
Review Checklist:
Code follows style guide
Tests are comprehensive
Documentation is clear
Performance impact considered
Security implications reviewed
Version Bump:
Update CHANGELOG.md
Create release PR
After merge, create GitHub release
Join our Discord channel
Check existing issues
Tag maintainers in comments
Attend community calls
Contributors are recognized in:
Release notes
Community announcements
Thank you for contributing to Equilink!
Last updated