Installation
Prerequisites
Section titled “Prerequisites”- Node.js v20 or later
- A build pipeline that can bundle ES modules (Vite, webpack, esbuild, Rollup, Next.js, Nuxt, SvelteKit, or similar)
Install
Section titled “Install”bash npm install @flowdrop/flowdrop @iconify/svelte @xyflow/svelte
bash pnpm add @flowdrop/flowdrop @iconify/svelte @xyflow/svelte
bash yarn add @flowdrop/flowdrop @iconify/svelte @xyflow/svelte
bash bun add @flowdrop/flowdrop @iconify/svelte @xyflow/svelte
Peer Dependencies
Section titled “Peer Dependencies”| Package | Version | Required |
|---|---|---|
svelte | ^5.0.0 | Yes (internal runtime) |
@xyflow/svelte | ^1.2 | Yes (for editor module) |
@iconify/svelte | ^5.0.0 | Yes (for icons) |
Optional: CodeMirror (for code/markdown editors)
Section titled “Optional: CodeMirror (for code/markdown editors)”If you use the form/code or form/markdown entry points, install CodeMirror packages:
npm install codemirror @codemirror/state @codemirror/view @codemirror/commands \ @codemirror/language @codemirror/theme-one-dark @codemirror/autocomplete \ @codemirror/lang-json @codemirror/lang-markdown @codemirror/lintEntry Points
Section titled “Entry Points”| Entry Point | Description |
|---|---|
@flowdrop/flowdrop | Full bundle — re-exports everything |
@flowdrop/flowdrop/core | Types and utilities (zero heavy dependencies) |
@flowdrop/flowdrop/editor | Visual workflow editor components |
@flowdrop/flowdrop/form | Dynamic form field components |
@flowdrop/flowdrop/form/code | Code and JSON editor fields (requires CodeMirror) |
@flowdrop/flowdrop/form/markdown | Markdown editor field (requires CodeMirror) |
@flowdrop/flowdrop/form/full | All form components pre-bundled |
@flowdrop/flowdrop/display | Display-only components (MarkdownDisplay) |
@flowdrop/flowdrop/playground | Interactive workflow playground |
@flowdrop/flowdrop/settings | Settings UI components and stores |
@flowdrop/flowdrop/styles | Base CSS styles and design tokens |
Architecture Notes
Section titled “Architecture Notes”- Svelte 5 required (internally). FlowDrop uses Svelte 5 runes internally. Your app does not need to be written in Svelte.
- Modern browsers only. The library targets ES2020+ and does not include polyfills.
Verify Your Installation
Section titled “Verify Your Installation”Confirm the package resolved correctly:
import { createEndpointConfig } from '@flowdrop/flowdrop/core';const config = createEndpointConfig('/api/flowdrop');console.log(config); // EndpointConfig objectIf you see Cannot find module '@flowdrop/flowdrop', check:
- Install completed without errors
- Your bundler supports ES modules (Vite 5+, webpack 5+)
- You are not importing in a server-side context — see Framework Integration