Skip to main content
@lionlang/core is published to npm as an ESM-only package. This page covers how to install it with your preferred package manager, which peer dependencies you need, what the package exports, and the TypeScript configuration it requires.

Install the package

If you are using Bun, run bun add @lionlang/core effect from your project root. Bun resolves and installs all transitive dependencies automatically without a separate bun install step after adding packages.

Peer dependencies

@lionlang/core has two peer dependencies that you must install alongside it:

TypeScript configuration

@lionlang/core is built with ESNext output and NodeNext module resolution. Your tsconfig.json must match these settings or the package’s subpath exports will not resolve correctly.
tsconfig.json
Strict mode is required. The package uses exactOptionalPropertyTypes, noUncheckedIndexedAccess, and related strict flags internally. Disabling strict mode in your project may cause type errors when importing from @lionlang/core.

Package exports

@lionlang/core uses the Node.js exports field to expose fine-grained subpath entry points. Import directly from the path you need rather than the package root.

Core entry points

Standard library modules

Each module is also importable individually if you want to compose a partial environment:

Schemas and types

Special forms (individual imports)

Each special form is available at its own path if you need to compose a custom evaluator:

Verify the installation

After installing, run this snippet to confirm everything is wired up correctly:
If you see 3 in the console, @lionlang/core is installed and working. See Quickstart for the next steps.