Skip to content

Examples

Three complete, runnable reference tools live in the repo. Each does the full LTI loop — SSO launch → deep-link content selection → grade passback (AGS) → roster (NRPS) — so you can see LTIkit working against a real LMS before wiring your own app.

memory-demo — fastest

Next.js + in-memory adapter. No database, no external service at all. Full LTI loop + Dynamic Registration + cookieless Platform Storage. Trade-off: state resets on server restart — re-register after each restart.

Open on GitHub →

next-prisma-demo — persistent, zero-setup

Next.js + Prisma/SQLite + NextAuth. Same zero-external-service simplicity, but state survives restarts. Full parity: SSO, deep linking, AGS, NRPS, Dynamic Registration, cookieless Platform Storage, plus a seeded login page for direct (non-LMS) visits.

Open on GitHub →

next-demo — Supabase stack

Next.js + Supabase. The minimal loop (SSO → deep link → grade → roster). Ships a bundled local Supabase project (Docker) with the ltikit tables as a migration, so you can run it end-to-end locally or point it at your own Supabase.

Open on GitHub →

Terminal window
git clone https://github.com/Liberate-Labs/ltikit-sdk
cd ltikit
pnpm install
cd examples/memory-demo
cp .env.example .env.local # then fill APP_URL and the keypair
pnpm dev

Point your LMS’s LTI 1.3 auto-config at APP_URL/api/lti/register (Dynamic Registration) — no manual setup, no seed data. Restarted the server since registering? The platform is gone (in-memory) — just re-run Dynamic Registration before your next launch.

Need a public HTTPS URL for the LMS to reach the tool (its iframe + SameSite=None; Secure cookies require it) — a dev tunnel works for local testing.

Capabilitymemory-demonext-prisma-demonext-demo
StorageIn-memory (zero setup, resets on restart)Prisma / SQLite (zero external service, persistent)Supabase / Postgres
Framework binding@ltikit/next@ltikit/next@ltikit/next
Auth / sessionapp-owned sessionNextAuth v5 + seeded login pageapp-owned session
SSO launch · deep linking · AGS · NRPS
Dynamic Registration✅ (only option)
Cookieless Platform Storage