ARKTELOS / PRODUCTS / ARK DI

An object graph with explicit scopes, ownership, and teardown.

Ark DI builds hierarchical dependency containers on pure Dart, coalesces concurrent asynchronous initialization, and closes managed objects in reverse dependency order.

An application scope contains the primary graph while a nested feature scope explicitly resolves an override.APPLICATION SCOPECOMPOSITIONROOTCLIENTREPOSITORYSERVICEFEATURE SCOPEOVERRIDEPRESENTER
An application scope contains the primary graph while a nested feature scope explicitly resolves an override.

FIT / EVALUATION

Confirm the boundary before adopting the package.

Platform
Dart + Flutter
Primary package
ark_di
Current release
1.1.0
Responsibility
Builds hierarchical dependency scopes with explicit registration, ownership, asynchronous initialization, and ordered teardown.
Use when
Use it when an object graph needs scoped overrides, deterministic startup, and lifecycle-aware disposal.
Does not own
It composes objects; it does not own business behavior, state management, data access, or routing policy.

Shortest evaluation path

  1. 01

    Confirm the responsibility and deliberate boundary above.

  2. 02Open tutorials →
  3. 03

    Inspect package ↗Inspect source ↗

01 / MODEL

A Composition Root builds the graph once.

Registrations become immutable after configuration. Factories receive a contextual Resolver, child Scopes resolve locally first, and explicit ownership determines what the container must close.

An application scope contains a dependency graph. A feature scope inherits the graph and explicitly overrides one registration.APPLICATION SCOPECOMPOSITIONROOTCLIENTREPOSITORYSERVICEFEATURE SCOPEOVERRIDEPRESENTER
  1. Composition Root
  2. Application Scope
  3. Feature Scope
  4. Reverse teardown
An application scope contains a dependency graph. A feature scope inherits the graph and explicitly overrides one registration.

02 / BOUNDARIES

The container owns composition, not business behavior.

01

Registration

Instance, Factory, and Lazy Singleton strategies define acquisition and lifetime semantics.

02

Scope

A child container sees its parent and can explicitly override selected registrations.

03

Flutter

ark_di_flutter places a container in the widget tree and exposes typed BuildContext access.

03 / DOCUMENTATION

Follow the graph from registration to teardown.

Take the pure-Dart learning path, continue into Flutter integration, or open a concise registration recipe.