⭐ First off, thank you for considering contributing to this project! ⭐
We welcome contributions from everyone. By participating in this project, you agree to abide by our Code of Conduct.
All project communication MUST happen on Discord. We do not pay attention to GitHub notifications.
- Join our Discord server before starting any work
- Post your PR/issue updates in the relevant Discord channel (MANDATORY)
- All discussions, questions, and updates should be on Discord
- GitHub is for code only - Discord is for communication
PRs without Discord updates will not be reviewed or may face delays.
- How Can I Contribute?
- Getting Started
- Development Workflow
- Pull Request Guidelines
- Code Style Guidelines
- Community Guidelines
Before creating bug reports, please check existing issues to avoid duplicates. When creating a bug report, include:
- Clear and descriptive title
- Steps to reproduce the issue
- Expected behavior vs actual behavior
- Screenshots/Video (if applicable)
- Environment details (OS, browser, versions, etc.)
Feature suggestions are welcome! Please:
- Check if the feature has already been suggested
- Provide a clear description of the feature
- Explain why this feature would be useful
- Include examples of how it would work
- Submit an Issue First: For features, bugs, or enhancements, create an issue first
- Get Assigned: Wait to be assigned before starting work(preferable)
- Submit Your PR: Once assigned, create a PR addressing the issue
- Unrelated PRs: Pull requests unrelated to issues may be closed or take longer to review
TODO: List prerequisites specific to your project
-
Fork the Repository
# Click the 'Fork' button at the top right of this page -
Clone Your Fork
git clone https://github.com/YOUR_USERNAME/TODO.git cd TODO -
Add Upstream Remote
git remote add upstream https://github.com/AOSSIE-Org/TODO.git
-
Install Dependencies
npm install # or yarn install # or pnpm install
-
Run the Project
npm run dev
Always work on a new branch, never on main or dev:
git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fix- Write clean, readable code
- Follow the project's code style
- Add comments where necessary
- Update documentation if needed
TODO: Add project-specific testing instructions
npm test
# or
npm run lintWrite clear, concise commit messages:
git add .
git commit -m "feat: add user authentication"
# or
git commit -m "fix: resolve navigation bug"Commit Message Format:
feat:for new featuresfix:for bug fixesdocs:for documentation changesstyle:for formatting changesrefactor:for code refactoringtest:for adding testschore:for maintenance tasks
git fetch upstream
git rebase upstream/main
# or upstream/dev depending on the projectgit push origin feature/your-feature-name- Your code follows the project's style guidelines
- You've tested your changes thoroughly
- You've updated relevant documentation
- Your commits are clean and well-organized
- You've rebased with the latest upstream changes
- Go to the original repository on GitHub
- Click "New Pull Request"
- Select your fork and branch
- Fill out the PR template with:
- Clear description of changes
- Link to related issue(s)
- Screenshots (if UI changes)
- Testing steps
## Description
Brief description of what this PR does
## Related Issue
Closes #issue_number
## Screenshots/Video (if applicable)
Add screenshots here
## Testing(if applicable)
Steps to test the changes
## Checklist
- [ ] Code follows style guidelines
- [ ] Self-review completed
- [ ] Documentation updated
- [ ] Tests added/updated- Post your PR in the project's Discord channel for visibility(IMPORTANT)
- Respond to review comments promptly
- Make requested changes in new commits
- Be patient - maintainers will review when available
TODO: Add project-specific code style guidelines
- Use meaningful variable and function names
- Keep functions small and focused
- Add comments for complex logic
- Remove console.logs before committing
- Avoid code duplication
- Use ES6+ syntax
- Prefer
constoverlet, avoidvar - Use arrow functions where appropriate
- Follow ESLint rules
- Follow PEP 8 style guide
- Use type hints where applicable
- Write docstrings for functions/classes
- Be respectful and inclusive
- Provide constructive feedback
- Help others when you can
- Ask questions - no question is too small!
- If your work is taking longer than expected, comment on the discord with updates
- Issues should be completed within 5-30 days depending on complexity
- If you can no longer work on an issue, let maintainers know on discord
- Check existing documentation first
- Search closed issues for similar problems
- Ask in Discord
- Tag maintainers if your PR is unattended for 1-2 weeks on discord
- One contributor per issue (unless specified otherwise)
- Wait for assignment before starting work
- Issues will be reassigned if inactive for extended periods
- Check for existing PRs before starting to avoid duplication
Thank you for contributing to TODO! Your efforts help make this project better for everyone. 🚀