Thanks for your interest in contributing to LibrarEase!
By contributing to this project, you agree to the following terms:
You confirm that:
- You created the contribution and have the right to submit it under the project's license
- Your contribution is your original work or you have permission to submit it
- You understand your contribution will be publicly available under the PolyForm Noncommercial License
You grant the LibrarEase project:
- A perpetual, worldwide, non-exclusive, royalty-free license to use, modify, and distribute your contributions
- The right to relicense your contributions under different terms, including commercial licenses
- Permission to use your contributions in both noncommercial and commercial versions of LibrarEase
- Your contributions remain subject to the PolyForm Noncommercial License for public use
- You retain copyright to your contributions
- The project maintainer may sublicense contributions to commercial customers
- You may use your own contributions however you wish
- You won't receive royalties from commercial licenses (unless separately agreed)
Contributors will be acknowledged in the project unless they request otherwise.
- Check existing issues before creating a new one
- Provide clear reproduction steps
- Include relevant logs, error messages, and system information
- Use issue templates when available
- Search existing feature requests first
- Clearly describe the problem you're trying to solve
- Explain why this feature would benefit other users
- Consider providing implementation ideas
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Implement changes following our coding standards
- Verify locally:
yarn lint,yarn typecheck, and runyarn dev - Commit with clear, descriptive messages
- Push to your fork
- Open a Pull Request
- One feature/fix per PR
- Update documentation as needed
- Follow existing code style and conventions
- Ensure
yarn lintandyarn typecheckpass - Keep commits clean and atomic
- Reference related issues
- Use Yarn (the repository is configured with Yarn)
- Run
yarn lintto check ESLint rules - Run
yarn formatto apply Prettier formatting - Keep functions focused and testable
- Prefer TypeScript types and clear naming
This repo does not include a test runner by default. Please ensure:
- TypeScript checks pass:
yarn typecheck - App runs locally:
yarn dev - Any added tests (if you introduce a runner) include script entries in
package.json
See README.md for development environment setup (Redis and Firebase).
- Open an issue for questions about contributing
- Email: solidifyarmor@gmail.com
- Be respectful and inclusive
- Welcome newcomers
- Accept constructive criticism gracefully
- Focus on what's best for the project
- Show empathy toward others
- Harassment or discriminatory language
- Personal attacks
- Trolling or insulting comments
- Publishing others' private information
- Any conduct inappropriate in a professional setting
Violations may result in removal from the project.
By submitting a contribution, you acknowledge that you have read and agree to these terms.