Skip to content

Get Started

Spotlight relies on a pnpm monorepo. You’ll need to install pnpm to get things going, which can be done with Volta.

Pull down the repo (or your fork):

Terminal window
git clone https://github.com/getsentry/spotlight.git

Ensure the node and pnpm are available:

Terminal window
volta install node pnpm

Make sure you enable pnpm support for Volta:

Terminal window
# Add this to your profile file or startup script
VOLTA_FEATURE_PNPM=1

Install the package requirements:

Terminal window
pnpm install

And finally, run an initial build:

Terminal window
pnpm build

Development

From there you can spin up the Spotlight repo into watch mode:

Terminal window
pnpm dev:overlay

Depending on what you’re doing there’s two paths to develop against the overlay.

If you simply want to run Spotlight against the example application, you can spin that up using:

Terminal window
pnpm dev:playground

Additionally you may want to link it into an existing project. This is a little brittle, and we’re not experts here, so your mileage may vary.

First, when in the Spotlight root directory, you’ll need to link the packages you’re referencing (likely @spotlightjs/spotlight):

Terminal window
pnpm link --global -C packages/spotlight

You can now link these within your project. For example if you’re using pnpm:

Terminal window
pnpm link --global @spotlightjs/spotlight

Repository Structure

The monorepo is mostly straight forward, but here’s a quick summary:

spotlight
└── packages
├── overlay // @spotlightjs/overlay - the main overlay
├── sidecar // @spotlightjs/sidecar - the sidecar (proxy) for streaming data
├── spotlight // @spotlightjs/spotlight - the main spotlight package, combining overlay and sidecar
├── tsconfig // @spotlightjs/tsconfig - shared tsconfig
└── website // @spotlightjs/website - the main overlay