lightweight storage system inspired by old storage library
Lightweight-Storage is a lightweight storage system inspired by legacy storage libraries. This project is organized as a multi-module Gradle project with several specific distributions (e.g., for Bukkit, Redis, and Mongo), aiming to provide a simple and flexible alternative for handling storage in Java.
The repository is divided into multiple independent modules:
lightweight-storage
βββ api # Core API
βββ api-codec # Codec utilities for the API
βββ bukkit-yaml-dist # Bukkit YAML distribution
βββ mongo-legacy-dist # Legacy MongoDB distribution
βββ redis-dist # Redis distribution
βββ buildSrc # Shared build logic
βββ gradle # Gradle scripts and configuration
βββ gradlew* # Gradle wrapper
βββ settings.gradle.kts
βββ gradle.properties
π‘ All modules are built from the
developbranch; no official releases yet.
To build and use this project, you need:
Clone the repository and build with Gradle:
git clone https://github.com/alexissdev/lightweight-storage.git
cd lightweight-storage
./gradlew build
./gradlew publishToMavenLocal /* optional from publish all modules * /
This will compile all modules and generate the corresponding JARs.
Each module can be consumed as a Gradle dependency after publishing it to your local Maven repository.
./gradlew :<module-name>:publishToMavenLocal
Replace
<module-name>with the desired module, e.g.,api,bukkit-yaml-dist, etc.
mavenLocal() to your consuming projectβs repositories block:repositories {
mavenLocal()
mavenCentral()
}
build.gradle.kts:dependencies {
implementation("com.alexissdev:<module-name>:VERSION")
}
Replace
<module-name>andVERSIONwith the module name and version you published locally.
If the modules include tests, run them with:
./gradlew test
Contributions are welcome!
develop branch.