Skip to content

bootkit-io/bootkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

169 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

BootKit Framework

GitHub Actions Workflow Status Maven Central Version Follow BootKit on Bluesky GitHub License OpenSSF Scorecard OpenSSF Best Practices

BootKit is a powerful framework that acts as an add-on for Spring Boot, designed to enhance modern enterprise applications built with Java. You can add BootKit to an existing Spring Boot application to boost developer experience, reduce boilerplate, and seamlessly adopt cloud native patterns.

⚙️ Requirements

  • Java 21+
  • Spring Boot 3.5+

🚀 Quick Start

Using Gradle

Add the BootKit BOM to your build.gradle:

dependencies {
    implementation platform('io.bootkit:bootkit-bom:0.19.1-SNAPSHOT')
    implementation 'io.bootkit:bootkit-spring-boot-starter'
}

Using Maven

Add the BootKit BOM to your pom.xml:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>io.bootkit</groupId>
            <artifactId>bootkit-bom</artifactId>
            <version>0.19.1-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>io.bootkit</groupId>
        <artifactId>bootkit-spring-boot-starter</artifactId>
    </dependency>
</dependencies>

📦 Key Features

🔧 Development Services

BootKit provides extensive support for development services with Testcontainers integration, making it easy to spin up development dependencies:

  • Databases: PostgreSQL, MySQL, MariaDB, MongoDB, MongoDB Atlas, Oracle, Oracle XE
  • Message Brokers: Kafka, RabbitMQ, Pulsar, Artemis
  • Observability: LGTM Stack (Loki, Grafana, Tempo, Mimir), OpenTelemetry Collector
  • AI/ML: Ollama, Docling
  • Authentication: LLDAP
  • Data Services: Redis, Phoenix

📊 Observability

Enhanced observability features for monitoring and tracing:

  • OpenTelemetry integration with automatic instrumentation
  • OpenInference semantic conventions for AI/ML applications
  • Micrometer metrics bridge
  • OTLP metrics registry
  • Logback bridge for unified logging

🔐 Multitenancy

Built-in support for multi-tenant applications:

  • Core multitenancy framework
  • Web-based tenant resolution
  • Tenant isolation patterns

☸️ Kubernetes Integration

Cloud-native deployment support:

  • Kubernetes Service Binding support
  • Seamless integration with cloud platforms

🤖 AI Integrations

Integration with modern AI tools:

  • Docling support for document processing
  • Spring AI compatibility

📂 Project Structure

bootkit/
├── bootkit-core/                          # Core framework functionality
├── bootkit-spring-boot/                   # Spring Boot integration
├── bootkit-dev/                           # Development services
│   └── bootkit-dev-services/              # Testcontainers-based dev services
│       ├── bootkit-dev-services-core/     # Core dev services functionality
│       ├── bootkit-dev-services-artemis/  # Apache Artemis
│       ├── bootkit-dev-services-docling/  # Docling AI
│       ├── bootkit-dev-services-kafka/    # Apache Kafka
│       ├── bootkit-dev-services-lgtm/     # LGTM Observability Stack
│       ├── bootkit-dev-services-lldap/    # LLDAP Authentication
│       ├── bootkit-dev-services-mariadb/  # MariaDB Database
│       ├── bootkit-dev-services-mongodb/  # MongoDB Database
│       ├── bootkit-dev-services-mongodb-atlas/ # MongoDB Atlas
│       ├── bootkit-dev-services-mysql/    # MySQL Database
│       ├── bootkit-dev-services-ollama/   # Ollama AI
│       ├── bootkit-dev-services-oracle/   # Oracle Database
│       ├── bootkit-dev-services-oracle-xe/ # Oracle XE Database
│       ├── bootkit-dev-services-otel-collector/ # OpenTelemetry Collector
│       ├── bootkit-dev-services-phoenix/  # Phoenix Data Platform
│       ├── bootkit-dev-services-postgresql/ # PostgreSQL Database
│       ├── bootkit-dev-services-pulsar/   # Apache Pulsar
│       ├── bootkit-dev-services-rabbitmq/ # RabbitMQ
│       └── bootkit-dev-services-redis/    # Redis
├── bootkit-integrations/                  # Third-party integrations
│   └── bootkit-docling/                   # Docling integration
├── bootkit-kubernetes/                    # Kubernetes support
│   └── bootkit-kubernetes-service-binding/ # Service Binding
├── bootkit-multitenancy/                  # Multi-tenant applications
│   ├── bootkit-multitenancy-core/         # Core multitenancy
│   └── bootkit-multitenancy-web/          # Web multitenancy
├── bootkit-observability/                 # Observability features
│   ├── bootkit-openinference-semantic-conventions/
│   ├── bootkit-opentelemetry/
│   ├── bootkit-opentelemetry-logback-bridge/
│   ├── bootkit-opentelemetry-micrometer-metrics-bridge/
│   └── bootkit-opentelemetry-micrometer-registry-otlp/
└── spring-boot-starters/                  # Spring Boot starters
    ├── bootkit-docling-spring-boot-starter/
    ├── bootkit-multitenancy-web-spring-boot-starter/
    ├── bootkit-opentelemetry-spring-boot-starter/
    └── bootkit-spring-boot-starter/

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • How to submit issues and pull requests
  • Code style guidelines
  • Development setup
  • Testing requirements

Before contributing, please:

  1. Read the Code of Conduct
  2. Check existing issues and pull requests
  3. Discuss significant changes in an issue first

🛡️ Security

The security process for reporting vulnerabilities is described in SECURITY.md.

Please do not disclose security vulnerabilities publicly. Follow the responsible disclosure process outlined in the security policy.

📄 License

This project is licensed under the Apache License 2.0. See LICENSE for more information.

🙏 Acknowledgments

BootKit is maintained by Zhu Yijin and the community. We appreciate all contributors who have helped make this project better!

📞 Contact & Community


Made with ❤️ by the BootKit community

About

Powerful framework that acts as an add-on for Spring Boot, designed to enhance modern enterprise applications built with Java

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages