🤝 Contributing to ChildSafeNet
Thank you for your interest in contributing to ChildSafeNet. The project welcomes improvements in backend, frontend, AI, browser extension, documentation, and DevOps.
Open SourceCollaborationSecurity First
1. How to Contribute
This project welcomes improvements in backend, frontend, AI, extension, documentation, and DevOps. Clear structure and safe collaboration are important.
1
Fork
Fork the Repository
- Click Fork on GitHub
- Clone your fork locally
2
Branch
Create a Branch
Use clear branch naming:
feature/<topic>fix/<topic>docs/<topic>refactor/<topic>chore/<topic>
Example: feature/url-whitelist-ui
3
Commit
Follow Conventional Commits
Use standard commit prefixes:
feat:new featurefix:bug fixdocs:documentation changerefactor:code restructuringchore:maintenance taskperf:performance improvementtest:add/update tests
Example:
feat: add dataset approval endpoint
fix: correct scan threshold logic
4
Code
Code Guidelines
- Keep functions small and readable
- Use meaningful variable names
- Add comments where logic is non-trivial
- Avoid breaking existing APIs
- Ensure role-based access is respected
- Do not expose sensitive data in logs
5
PR
Pull Request Process
When opening a PR:
- Provide a clear description
- Reference related issue (if any)
- Include screenshots (if UI change)
- Mention testing steps
- Ensure build passes
- Ensure no sensitive data committed
PR Checklist:
- Code compiles
- No obvious security issue
- Documentation updated (if needed)
- No debug logs left in production code
2. Issue & Labeling Guidelines
Suggested labels:
setupbackendfrontendextensionaidocssecuritydevopsbugenhancementperformance
Use labels consistently to keep backlog organized.
3. Security Reporting
If you discover a security vulnerability:
- Do NOT open a public issue
- Contact maintainers privately
- Provide steps to reproduce
- Allow time for patch before disclosure
4. AI & Training Contributions
If contributing to the AI pipeline:
- Do not modify training logic without evaluation
- Provide metric comparison before/after
- Ensure rollback safety
- Keep previous model version intact
5. Related Documents
See:
CONTRIBUTING.mdBRANCHING.md- Issue Templates
- Code of Conduct (if available)
6. Contribution Philosophy
ChildSafeNet prioritizes:
- Stability over rapid change
- Security over convenience
- Explainability over black-box logic
- Clean documentation over hidden behavior
Thank you for helping improve internet safety for children.