Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/himansaBro/JungleConfig/llms.txt

Use this file to discover all available pages before exploring further.

JungleConfig is a zero-friction Java library for storing and loading typed configuration data. It saves key-value pairs — including POJOs, collections, and Java time types — in a compact URL-safe encoded file format, with no external infrastructure required. Pick from file-based, encrypted, in-memory, or flat JSON storage modes and be up and running in minutes.

Quickstart

Get JungleConfig running in your project in under five minutes.

Configuration Modes

Choose between file, encrypted, in-memory, and flat JSON backends.

Transactions

Batch writes with commit and rollback support.

API Reference

Full reference for every method on the JungleConfig class.

Why JungleConfig?

Most Java config libraries require a schema file, a framework, or a heavyweight dependency chain. JungleConfig is different — it stores data as a single flat file, tags every entry with its Java type, and hands the value back cast-ready when you read it. There is no reflection magic, no annotation processing, and no XML.

Type-Safe

Every key is stored with its type name. Reads return the correct Java type automatically.

Transactional

Group writes into atomic transactions. Roll back any pending changes before they reach disk.

Pluggable

Register custom TypeConverterAdapter implementations to handle any type your project uses.

Encrypted

One factory call switches to AES-256/GCM encryption backed by PBKDF2 key derivation.

POJO & Collections

Store arbitrary objects and generic collections via Jackson serialization with zero boilerplate.

In-Memory Mode

Use InMemoryConfig() in tests for a fully functional config instance with no file I/O.

Get Started

1

Add the dependency

Add JungleConfig to your Maven project alongside Jackson.
pom.xml
<dependency>
  <groupId>com.codehack</groupId>
  <artifactId>Jconfig</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>
2

Create a config instance

Point JungleConfig at a file. The file is created automatically if it does not exist.
import com.codehack.JungleConfig.JungleConfig;
import java.io.File;

JungleConfig config = new JungleConfig(new File("app.conf"));
3

Write and read values

Store any Java type and retrieve it with a single generic call.
config.Set("app.name", "MyApp");
config.Set("app.port", 8080);

String name = config.get("app.name", String.class);
int port    = config.get("app.port", Integer.class);
4

Explore advanced features

Dive into encryption, transactions, custom adapters, and querying in the guides.

Build docs developers (and LLMs) love