Open enterprise frameworks · Apache-2.0 · Java 8+

One prism.
Every enterprise concern,
refracted into a package.

nsprism is the home of a family of small, sharp, zero-dependency frameworks for the JVM. Each package does one enterprise job — starting with security — and does it without dragging a dependency tree behind it.

io.github.nsprism Java 8+ ServiceLoader SPIs Zero runtime deps
One facade. Every concern.
// pick the concern, keep the API
NS.use(NSOp.LOG, LOGIN_SCHEMA, event);      // masked log line
NS.use(NSOp.GENERATE, ORDER_CREATE, order); // fill id fields
NS.use(NSOp.CRYPTO, CUSTOMER_W, record);    // encrypt fields
String id = NS.use(NSOp.ID);                 // one ULID

try (NSLogContext.Scope s =
        NSLogContext.with("traceId", traceId)) {
    NS.use(NSOp.LOG, ORDER_PLACED, order);
}
0
runtime dependencies in core
8+
minimum Java version
100%
Apache-2.0 licensed
1
facade to learn: NS
The ecosystem

Frameworks & packages

Every nsprism artifact ships from io.github.nsprism on Maven Central. Add a module to the classpath and its providers are discovered automatically — no wiring, no XML, no magic annotations.

Design principles

Built like infrastructure, not like a framework

Every nsprism package follows the same contract, so learning one teaches you all of them.

Zero-dependency core

Core artifacts ship with no third-party runtime dependencies — even JSON is parsed internally. Your dependency tree stays auditable.

Classpath is the wiring

Implementations register via java.util.ServiceLoader. Adding a jar adds a capability; removing it removes the capability. Nothing else to configure.

Schema-driven behaviour

Policy lives in versioned JSON resources, validated and compiled at class-initialisation — so a bad rule fails at startup, not at 3 AM in production.

Deny by default

Anything you forgot to classify is suppressed, never leaked. Safety is the default posture, and relaxing it is always an explicit, visible choice.

Start with the package you need today.

Add one Maven coordinate. The classpath does the rest.

io.github.nsprism:ns-secure:0.1.0-beta.1
ns-secure docs GitHub org