Thank you for your interest in contributing to Helixque! This document provides guidelines for contributing to the project.
Important
- If an issue is assigned to you, please complete it before requesting another one.
- A person can be assigned a maximum of two issues at a time to ensure fair distribution among all participants.
-
Starring the repository is mandatory before contributing.
This helps the project grow and shows your support. -
Join our Discord server for discussions, questions, and faster PR approvals:
👉 Join the Discord Server⚠️ Please note: To quickly get your PRs reviewed and merged, you must be a member of our Discord server. -
Pull Request Policy on Discord
- Before raising a PR, check the
#pull-requestchannel to ensure there isn’t already an open PR for the same issue. - If no one is working on it, go ahead and raise your PR and mention it in the channel.
- Before raising a PR, check the
Please ensure your local branch is synced with the latest develop branch before making changes or opening a Pull Request (PR).
This helps avoid unnecessary merge conflicts and ensures a smooth review process.
- 🚀 Please raise PRs only to the
developbranch. - 📷 For faster reviews and merges, include a recording or screenshot (depending on the issue) that demonstrates the fix.
- 🏗️ Before opening a PR, run
npm run buildand ensure the project builds successfully without errors. - ✅ Only raise a PR once the build passes.
- 🔗 When raising the PR, please reference the issue number it addresses.
- Project maintainers are not responsible if your PR is blocked due to merge conflicts.
- It is your responsibility to update your branch and resolve conflicts before requesting a merge.
- Fork the repository
- Clone your fork locally
- Follow the setup instructions in the main README
- Create a new branch for your feature/fix
-
Install dependencies for both frontend and backend:
# Backend cd backend && npm install # Frontend cd ../frontend && npm install
-
Start development servers:
# Terminal 1 - Backend cd backend && npm run dev # Terminal 2 - Frontend cd frontend && npm run dev
- Follow existing TypeScript and React patterns
- Use meaningful variable and function names
- Add comments for complex logic
- Ensure code is properly formatted
- Test both frontend and backend functionality
- Verify WebRTC connections work properly
- Test edge cases like disconnections and reconnections
- Ensure responsive design works on different screen sizes
- Commit your changes with clear, descriptive messages
- Push to your fork
- Create a Pull Request with:
- Clear description of changes
- Screenshots/videos for UI changes
- Testing notes
- UI/UX improvements
- Performance optimizations
- Additional WebRTC features
- Mobile responsiveness
- Accessibility improvements
- Documentation updates
- Bug fixes
Feel free to open an issue for questions or discussion about potential contributions.
