Skip to Content
PlatformsRobloxRoblox Overview

Roblox

Roblox is Forest’s original platform. Roblox packages are Luau modules: each installed package is a folder with a root module you require by its instance path.

If you’re new to packages, start with Concepts for the platform-neutral ideas (what a package is, publishing, versioning, private access). This section covers the Roblox-specific mechanics layered on top.

Forest is not a Roblox Studio plugin. You run the Forest CLI from your project folder, and it installs packages as files next to your forest.json. Moving those files into the datamodel is your existing sync step, commonly Rojo . Forest never edits your place file.

What’s specific to Roblox

  • Layout. Packages install into a Packages/ folder (next to your forest.json in a game project, or next to your root module when authoring a package), which you mount somewhere in the datamodel (commonly ReplicatedStorage.Packages via Rojo).
  • Importing. You require() a package by its instance path. All requires inside the installed tree are relative, so the tree works wherever you mount it.
  • One entry point. A package exposes a single root module whose return value is its entire public API.
  • No realm concept. There is one packages tree. Splitting server and client code is a project-structure choice (the two-manifest pattern), not a registry feature.
  • Aliases. Two packages with the same name from different scopes can coexist by installing one under an alias.

Pages

Last updated on