🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

alchemy

Package Overview
Dependencies
Maintainers
3
Versions
355
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

alchemy

[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/alchemy-run/alchemy)

latest
Source
npmnpm
Version
0.93.12
Version published
Weekly downloads
105K
-9.88%
Maintainers
3
Weekly downloads
 
Created
Source

Alchemy

Ask DeepWiki

Alchemy is an embeddable, TypeScript-native Infrastructure-as-Code (IaC) library for modeling Resources that are Created, Updated and Deleted automatically.

Unlike similar tools like Pulumi, Terraform, and CloudFormation, Alchemy is implemented in pure ESM-native TypeScript code.

Resources are simple memoized async functions that can run in any JavaScript runtime, including the browser, serverless functions and durable workflows.

import alchemy from "alchemy";

// initialize the app (with default state $USER)
const app = await alchemy("cloudflare-worker");

// create a Cloudflare Worker
export const worker = await Worker("worker", {
  name: "my-worker",
  entrypoint: "./src/index.ts",
  bindings: {
    COUNTER: counter,
    STORAGE: storage,
    AUTH_STORE: authStore,
    GITHUB_CLIENT_ID: alchemy.secret(process.env.GITHUB_CLIENT_ID),
    GITHUB_CLIENT_SECRET: alchemy.secret(process.env.GITHUB_CLIENT_SECRET),
  },
});

// finalize the alchemy app (triggering deletion of orphaned resources)
await app.finalize();

Features

  • JS-native - no second language, toolchains, processes, services, etc. to lug around.
  • Async-native - resources are just async functions - no complex abstraction to learn.
  • ESM-native - built exclusively on ESM, with a slight preference for modern JS runtimes like Bun.
  • Embeddable - runs in any JavaScript/TypeScript environment, including the browser!
  • Extensible - implement your own resources with a simple function.
  • AI-first - alchemy actively encourages you to use LLMs to create/copy/fork/modify resources to fit your needs. No more waiting around for a provider to be implemented, just do it yourself in a few minutes.
  • No service - state files are stored locally in your project and can be easily inspected, modified, checked into your repo, etc.
  • No strong opinions - structure your codebase however you want, store state anywhere - we don't care!

Examples

Getting Started

See the Getting Started Guide.

FAQs

Package last updated on 09 Jun 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts