# PLAN.md — @eol/graphiql A Svelte 5 GraphiQL alternative. JSR-published under the EOL scope. ## Current state (v0.2 complete) Shipped: - HTTP fetcher with injectable `fetch` impl - Schema introspection and SDL caching - Session store with tabs, persistence, and rename - TabBar with double-click inline rename (Enter commits, Escape cancels, blur commits) - Toolbar with Cmd/Ctrl+Enter run shortcut - Variables + Headers panes (switchable in bottom-left) - Debounced localStorage persistence (300ms) with `beforeunload` flush - Memory storage fallback for SSR - CodeMirror 6 editor wrapper via `cm6-graphql` with dynamic import (SSR-safe) - `readOnly` prop on Editor, used by ResultViewer - Reactive schema updates via `$effect` calling `updateSchema()` - Public API surface in `src/lib/index.ts` Stub files needing implementation: `src/lib/fetcher/sse.ts`, `src/lib/fetcher/websocket.ts`. ## Coding conventions Non-negotiable. Match existing files exactly: - Double quotes, semicolons, two-space indent - No trailing spaces, no unnecessary whitespace - Svelte component structure: `