Thank you for your interest in contributing! This project is open to improvements, bug fixes, and new features.
This project provides a Spring Boot starter for integrating Firebase Admin SDK.
It follows:
- Clean modular architecture
- Conventional Commits
- Automated releases via release-please
- Maven multi-module structure
.
├── firebase-spring-boot
└── firebase-spring-boot-starter
- autoconfigure → core logic and configuration
- starter → dependency entrypoint
- Use Java 17+
- Follow Spring Boot conventions
- Prefer constructor injection
- Avoid unnecessary abstractions
- Keep code simple and readable
- Use meaningful names
- Avoid premature optimization
- Write small, focused classes
- Add tests for new features
- Cover auto-configuration logic
- Use
ApplicationContextRunnerwhere applicable
This project uses Conventional Commits.
feat(starter): add FirebaseAuth auto-configuration
fix(autoconfigure): handle missing credentials
docs(readme): update quick start
refactor(core): simplify credentials provider
| Type | Description |
|---|---|
| feat | New feature |
| fix | Bug fix |
| docs | Documentation |
| refactor | Code changes (no fix) |
| test | Tests |
| build | Build system |
| ci | CI/CD changes |
| chore | Maintenance |
- Create a feature branch:
git checkout -b feature/my-feature-
Commit your changes using Conventional Commits
-
Push to your fork:
git push origin feature/my-feature- Open a Pull Request
- Clear title and description
- Follow commit conventions
- Tests added (if applicable)
- No unrelated changes
Releases are fully automated.
- Commits are pushed to
main - Release PR is created automatically
- Maintainer reviews & merges PR
- GitHub Release is created
- Artifacts are published to Maven Central
- Breaking public API without discussion
- Adding heavy dependencies
- Mixing unrelated changes in one PR
If you have an idea:
- Open an issue
- Describe the use case
- Explain expected behavior
Please include:
- Steps to reproduce
- Expected vs actual behavior
- Logs or stack trace
- Spring Boot version
- Spring Security integration
- Firestore improvements
- Messaging support
- Documentation
- Tests and edge cases
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.
Every contribution matters ❤️