Home / Docs / Admin & Introspection
You are currently impersonating Alex Johnson.
yaxa-svelte/admin Dual-Mode Ready

Drizzle Admin & Introspection Suite

An all-in-one database introspection engine, live CRUD table editor, developer sandbox, and user impersonation system built specifically for SvelteKit and Drizzle ORM.

Recommended Zero-File Interception

Approach A: 1-Line Server Hook

Intercepts /admin directly in src/hooks.server.ts. No route files required.

src/hooks.server.ts
typescript
1// src/hooks.server.ts (Zero-File Approach A)
2import { sequence } from '@sveltejs/kit/hooks';
3import { createYaxaAdminHook } from 'yaxa-svelte/admin';
4import { db } from '$lib/server/db';
5import * as schema from '$lib/server/db/schema-pg';
6
7export const handle = sequence(
8 createYaxaAdminHook({
9 db,
10 schema,
11 path: '/admin',
12 requireAuth: async (event) => {
13 // Return true if admin session is present
14 return event.locals.user?.role === 'admin';
15 }
16 })
17);
Customizable Custom Route Page

Approach B: Turnkey Svelte Route

Use createDrizzleAdmin in +page.server.ts with the <AdminDashboard /> component.

src/routes/admin/+page.server.ts
typescript
1// src/routes/admin/+page.server.ts (Custom Route Approach B)
2import { db } from '$lib/server/db';
3import * as schema from '$lib/server/db/schema-pg';
4import { createDrizzleAdmin } from 'yaxa-svelte/admin';
5
6export const { load, actions } = createDrizzleAdmin({
7 db,
8 schema,
9 requireAuth: async (event) => event.locals.user?.role === 'admin'
10});
src/routes/admin/+page.svelte
svelte
1<!-- src/routes/admin/+page.svelte -->
2<script lang="ts">
3 import { AdminDashboard } from 'yaxa-svelte/admin';
4 let { data } = $props();
5</script>
6
7<AdminDashboard data={data.adminData} />

Live Developer Sandbox & Storage Preview

Embedded live sandbox for testing transactional email templates and S3/R2 direct uploads:

Transactional Email Sandbox

Test Resend transactional email delivery & templates

Resend.com

Cloud Storage Sandbox

Test presigned file uploads to AWS S3 / Cloudflare R2

S3 / R2

Active Authentication & Permissions

Current session context parsed by `yaxa-svelte`

Anonymous
User Email

N/A

Role

user

Plan Tier

free