Sukuna is an experimental log based (SSTable), disk backed, key-value storage engine.
- JDK 16 or higher
 - Maven 3.8.1 or higher
 
$ git clone https://github.com/TheIllusionistMirage/sukuna.git
$ cd sukuna
$ ./build.shThis will build three JAR files corresponding to the modules sukuna-engine, sukuna-service and sukuna-cli-client.
The JAR for sukuna-engine can be embedded into any Java application that wants to control how the engine is hosted.
sukuna-service is the default TCP based DB service program.
$ cd sukuna-service
$ java -jar ./target/sukuna-service-<version>-shaded.jar  # Where version is the application version in sukuna-service/pom.xmlsukuna-cli-client is the default TCP based DB client program.
$ cd sukuna-cli-client
$ java -jar ./target/sukuna-cli-client-<version>-shaded.jar  # Where version is the application version in sukuna-cli-client/pom.xmlCurrently only two operations are supported:
get <key>set <key> <value>
You can find the documentation related to this project in the design directory.
Sukuna is licensed under GNU AGPLv3, see LICENSE for more details.