LumiBaseDocs

Consumer App & SDK Roadmap

Scope: Build a cross-platform SDK and a demo Consumer app to test it, ensuring the public API works smoothly.

Goals

  1. SDK Composable Architecture: Inspired by the Directus SDK. The SDK is extensible (.with(rest()), .with(graphql())) and supports Typegen.

GraphQL (v1): the .with(graphql()) adapter has been implemented (items: query + mutation). See the GraphQL API Spec and ADR-009.

  1. NPM Package: Build a build system (tsup) to package the library in ESM, CJS, and DTS formats, ready to publish.
  2. Consumer Demo: A Next.js app as a worked example of using the SDK (fetch data, render).

Task Breakdown

1. Refactor @lumibase/sdk

  • Convert the architecture to a Composable Client (createLumiClient().with(...)).
  • Separate the Core Logic from the Rest Implementation (e.g. src/rest/readItems.ts).
  • Set up the tsup builder, update package.json to export the standard endpoints.

2. Update Studio CMS

  • Migrate all usages of the old createLumiClient to the new syntax (in apps/studio).

3. Bootstrap the Consumer App (apps/consumer)

  • Create a Next.js App Router boilerplate.
  • Integrate @lumibase/sdk.
  • Demo fetching items from an arbitrary collection through the SDK with SSR/CSR.
Last modified: 23/07/2026