Thank you for your interest in contributing to Fire Shield! 🚀
Fire Shield is a lightning-fast, zero-dependency RBAC (Role-Based Access Control) library for TypeScript/JavaScript, delivering about one hundred million permission checks per second. Created by Kent Phung, a software engineer with 10+ years of experience in Cloud solutions, Computer Vision, and high-performance libraries.
- Found a bug? Open an issue
- Have a feature request? Submit a feature request
- Fix bugs or implement features
- Improve documentation
- Add tests
- Optimize performance
- Improve existing docs
- Add examples or tutorials
- Translate documentation
- Fix typos or clarify explanations
- Write unit tests
- Integration testing
- Performance benchmarking
- Compatibility testing across frameworks
- Node.js 18+
- npm or yarn
- Git
# Clone the repository
git clone https://github.com/khapu2906/fire-shield.git
cd fire-shield
# Install dependencies
npm install
# Build all packages
npm run build
# Run tests
npm testpackages/
├── core/ # Main RBAC library
├── adaptor/ # Framework-specific adaptors
│ ├── express/ # Express.js middleware
│ ├── react/ # React hooks & components
│ ├── vue/ # Vue.js composables
│ └── ... # Other framework adaptors
└── docs/ # Documentation
- Check open issues for tasks
- Comment on the issue to indicate you're working on it
git checkout -b feature/your-feature-name
# or
git checkout -b fix/issue-number-description- Follow the existing code style
- Add tests for new features
- Update documentation if needed
- Ensure all tests pass:
npm test
git add .
git commit -m "feat: add new feature description"Follow conventional commit format:
feat:for new featuresfix:for bug fixesdocs:for documentationtest:for testsrefactor:for code refactoring
git push origin your-branch-nameThen create a Pull Request on GitHub.
- Use TypeScript for all new code
- Maintain 100% type safety
- Use strict type checking
- Write unit tests for all new features
- Maintain high test coverage
- Use descriptive test names
- Fire Shield prioritizes performance
- Profile changes that might impact speed
- Add benchmarks for performance-critical code
- Security is paramount for RBAC systems
- Review code for potential security issues
- Follow secure coding practices
- Title: Use clear, descriptive titles
- Description: Explain what changes and why
- Tests: Ensure all tests pass
- Documentation: Update docs if needed
- Review: Request review from maintainers
This project follows a code of conduct to ensure a welcoming environment for all contributors. By participating, you agree to:
- Be respectful and inclusive
- Focus on constructive feedback
- Accept responsibility for mistakes
- Show empathy towards other contributors
Contributors will be:
- Listed in the repository's contributor list
- Mentioned in release notes
- Recognized for their valuable contributions
Have questions about contributing? Reach out:
- GitHub Discussions
- Discord Community (if available)
- Email: kentphung@example.com
Thank you for contributing to Fire Shield! Your help makes the library better for everyone. 🙏 CONTRIBUTING.md