Skip to main content
Atlas is available for three platforms. Choose the one that matches your application:

Requirements

  • Node.js 18 or higher
  • npm, pnpm, or yarn

Install package

npm install @concrete-security/atlas-node

Supported platforms

Prebuilt native binaries are included for:
  • macOS (x64, Apple Silicon)
  • Linux (x64, arm64)
  • Windows (x64, arm64)
The correct binary is automatically selected during installation based on your platform.

Verify installation

Create a test file to verify the installation:
test.mjs
import { createAtlsFetch } from "@concrete-security/atlas-node"

console.log("Atlas Node.js package installed successfully!")
console.log(typeof createAtlsFetch) // "function"
Run it:
node test.mjs

TypeScript support

TypeScript definitions are included automatically. No additional @types packages are needed.
import { 
  createAtlsFetch, 
  createAtlsAgent,
  AtlsAttestation,
  Policy 
} from "@concrete-security/atlas-node"

Next steps

Version compatibility

Atlas follows semantic versioning. Current versions:
All platforms implement the same aTLS protocol and are interoperable. A Node.js client can connect to a Rust server, and vice versa.

Troubleshooting

Node.js: Native module not found

If you see “Cannot find native module” errors:
  1. Ensure you’re using Node.js 18 or higher
  2. Try reinstalling: npm install --force @concrete-security/atlas-node
  3. Check that your platform is supported (see supported platforms above)

Browser/WASM: Module not loading

If the WASM module fails to load:
  1. Ensure you’re calling await init() before using other functions
  2. Check your bundler configuration (see bundler sections above)
  3. Verify the WASM file is being served with application/wasm MIME type

Rust: Compilation errors

If you encounter compilation errors:
  1. Update Rust: rustup update
  2. Ensure Rust 1.75 or higher: rustc --version
  3. Clean build cache: cargo clean

Proxy: Connection refused

If the proxy won’t start:
  1. Verify ATLS_PROXY_ALLOWLIST is set
  2. Check that port 9000 is available (or use ATLS_PROXY_LISTEN)
  3. Ensure the proxy binary has execute permissions

Getting help

If you need assistance:

Next steps

Quickstart

Get up and running with a working example

Platform guides

Complete guides for each platform

Policy configuration

Configure attestation policies

Examples

More examples and integration patterns

Build docs developers (and LLMs) love