Documentation menu

Getting started

What Ember is

Last updated October 23, 2026

Ember is a package manager for Luau: one CLI that installs packages from the Ember registry (and from wally, pesde, and Forest indices), publishes packages, pins GitHub-released tools per project, runs project scripts, and opens Roblox Studio. One manifest (ember.toml), one lockfile (ember.lock), one binary.

The basics#

  • Packages are named scope/name, lowercase. A scope belongs to the GitHub account that first publishes under it.
  • Published versions are immutable. They are never changed or overwritten, only superseded by newer versions.
  • Downloads come from a CDN (cdn.luaupm.com) with no metering and no token: installing works anonymously, at any scale, and even when the registry API is down.

Environments#

Where a package's code runs is its environment:

EnvironmentMeaning
robloxRoblox, on the client or the server
roblox_serverRoblox, server-only
luneLune scripts
luteLute
sealSeal scripts
zuneZune scripts
luauportable Luau, which runs in every environment

The old names still parse: shared for roblox, and server for roblox_server. Foreign ecosystems translate automatically: pesde roblox and roblox_server keep their names, and wally realms shared/server map to roblox/roblox_server. Runtimes compares the seven.

A package also has a language: plain Luau, Alloy, Loom, or Luwu. See Languages.

Where to go next#