net.colesico.framework:colesico-bundle-base

Colesico framework bundle joins basic framework modules


Keywords
dependency-injection, full-stack, java, lightweight, micro-framework, microservices, plugin-system, rest-api
License
Apache-2.0

Documentation

Colesico-framework

colesico

Colesico-framework is a lightweight full stack microframework for creating backend and server side web applications with Java 17+. It is inspired by Spring and EJB frameworks but uses more simplified approach to construct an applications. The purpose of this framework is to provide a faster and lightweight alternative.

Colesico framework is also an analog of such frameworks as Quarkus and Micronaut but it is lighter and faster. It also does not almost use the reflection at runtime. The approach used is the generation of extra auxiliary code at compile time using the annotation processors.

Colesico framework is based on an extendable architecture that makes it easy to integrate third party frameworks.

Documentation

Colesico-framework docs/manual

Examples

Colesico-framework examples

Builds

To build colesico framework with maven:

$ mvn clean install

Maven dependency

<dependency>
  <groupId>net.colesico.framework</groupId>
  <artifactId>colesico-[module or bundle]</artifactId>
  <version>${colesico-version}</version>
</dependency>

${colesico-version}

License

This project is licensed under the Apache 2.0 license.

Versioning policy

This project uses modified semver approach.

Version number:

[major].[moderate].[minor]

  • [major] - Massive changes affecting many framework modules or a complete change of architecture. Requires significant client code changes.
  • [moderate] - Minimal loss of backward compatibility that affects a few framework modules. Changes may require a few lines updating in the client code to make it works. This also may not break an application completely, but it may cause partial degradation. Please, pay attention to check your code is working properly on such updates.
  • [minor] - Backward compatible changes that do not require a client code updates to make it work. This may be a bugfixes, new compatible framework features, documentation updates, etc.

Update 1.2.3 to 1.2.4 - should not require any client code changes.

Update 1.2.3 to 1.3.0 - may require some code changes.

Update 1.2.3 to 2.0.0 - require significant client code changes.