open-slide

open-slide.config.ts

Workspace-level configuration.

The config lives at the workspace root and is fully optional — every field has a sensible default.

open-slide.config.ts
import type { OpenSlideConfig } from '@open-slide/core';

const config: OpenSlideConfig = {};

export default config;

Schema

Prop

Type

build

Every toggle is on by default and only takes effect in the static build; the dev server always shows the full UI.

Prop

Type

Common recipes

Public share

Hide the slide browser, on-canvas UI, and export menu with the build toggles — see Export for the annotated example.

Host under a subpath

Set base to deploy the build under a sub-directory instead of the domain root — GitHub Pages project sites, a reverse-proxy folder, an intranet path. Use a leading and trailing slash:

const config: OpenSlideConfig = {
  base: '/my-slides/',
};

The value is passed straight to Vite's base and to React Router's basename, so client-side navigation matches the deployed path.

Organizing many decks

slidesDir is a single path and decks must sit directly inside it (slides/<id>/index.tsx — nested folders are not discovered). To group decks, use the in-app sidebar folders (stored in slides/.folders.json).

On this page