obeoneorg/firecrawl-ui

By obeoneorg

β€’Updated 14 days ago

Firecrawl UI interact with the Firecrawl API. It allows you to scrape pages, launch crawl and more!

Image
Networking
API management
Developer tools
0

5.8K

obeoneorg/firecrawl-ui repository overview

Firecrawl UI

⁠Firecrawl UI

Vue Vite TypeScript Docker License CI


Firecrawl UI is a single-page Vue 3 app that puts the Firecrawl API⁠ tools behind a simple request/response interface. You don't need to write any integration code: open the app, drop in a URL, and read the scraped content, crawl results, or extracted data right in the browser. Your API key and data stay local, and you can point it at the hosted Firecrawl service or your own self-hosted instance.

⁠✨ Features

FeatureDescription
πŸ”—URL launcherPaste a URL on the home, pick an action, land in the tool pre-filled
πŸ“„ScrapeTurn a single page into clean markdown, HTML, links or structured data
πŸ•·οΈCrawlTraverse a whole site with depth, include/exclude rules and live progress
🧠ExtractPull structured fields from URLs with a prompt or schema (AI)
πŸ—ΊοΈMapList every reachable URL of a site to understand its structure
πŸ”SearchQuery the web and get ranked results with optional page content
πŸŒ—Light / darkGlass + aurora theme, dark by default, remembered across sessions
πŸ”‘Local configAPI key and base URL stored in your browser, never sent anywhere else
🏠Self-hostingPoint the base URL at your own Firecrawl instance (with or without a key)

β πŸš€ Demo

Try it now, no install needed: https://firecrawl-ui.obeone.cloud⁠. Open the settings page and add your API key (or a self-hosted base URL) to get started.

Firecrawl UI home

β πŸ“¦ Installation

⁠Local
git clone https://github.com/obeone/firecrawl-ui.git
cd firecrawl-ui
npm install
npm run dev

Open the URL printed in your terminal (default http://localhost:5173/⁠), then set your API key in the settings page.

⁠🐳 Docker
docker run -p 8080:8080 obeoneorg/firecrawl-ui

Open http://localhost:8080/⁠. Prebuilt images:

  • docker.io/obeoneorg/firecrawl-ui
  • ghcr.io/obeone/firecrawl-ui

β πŸ–ΌοΈ Screenshots

ScrapeCrawl
ScrapeCrawl
Extract
Extract

Each tool is a two-pane playground: build the request on the left, read the response (preview, JSON, links, …) on the right.

β βš™οΈ Configuration

You can configure access two ways. The app shows a setup prompt on the home until either an API key or a custom API URL (for a self-hosted instance) is set.

In the app: open the settings page (gear icon) and enter your API key and/or base URL. Values are saved to localStorage.

Environment variables: create a .env file in the project root. These are read by src/config/api.ts.

VITE_FIRECRAWL_API_KEY=your_api_key
VITE_FIRECRAWL_API_BASE_URL=https://api.firecrawl.dev
VariableDescriptionDefault
VITE_FIRECRAWL_API_KEYFirecrawl API key(empty)
VITE_FIRECRAWL_API_BASE_URLFirecrawl service roothttps://api.firecrawl.dev

Precedence is localStorage > VITE_* env > default. Any trailing /v1 or /v2 on the base URL is stripped automatically; the adapter targets v2.

β πŸ› οΈ Commands

CommandDescription
npm run devStart the dev server with hot reload
npm run buildType-check and build to dist/
npm run previewPreview the production build locally
npm run lintRun ESLint
npm run formatFormat with Prettier
DockerDescription
docker build -t firecrawl-ui .Build the image locally
docker run -p 8080:8080 firecrawl-uiServe via Nginx on port 8080

The image is a multi-stage build (Node 24, then nginx-unprivileged). A custom nginx.conf rewrites unknown paths to index.html for client-side routing.

β πŸ”Œ API

The app targets the Firecrawl v2 API (/v2/*) through the hand-written adapter in src/services/firecrawl.ts. The full spec lives in openapi_v2.yaml⁠.

Firecrawl still exposes the legacy v1 API alongside v2, so existing v1 integrations keep working, and this UI just builds its requests against v2.

⁠🧭 Architecture

flowchart TB
    U["You (in the browser)"] --> H["Home launcher<br/>URL + action"]
    H --> V["Tool views<br/>Scrape Β· Crawl Β· Extract Β· Map Β· Search"]
    V --> AD["API adapter<br/>src/services/firecrawl.ts"]
    AD -->|"v2 requests"| FC[("Firecrawl API v2")]
    CFG["API key / base URL<br/>localStorage or VITE_* env"] -.-> AD

⁠🀝 Contributing

Contributions are welcome. Run npm run lint and npx prettier --check . before opening a pull request. PR titles follow [firecrawl-ui] <Title>.

β πŸ“ License

Released under the MIT⁠ license. Powered by Firecrawl⁠.

Made by GrΓ©goire Compagnon (obeone).

Tag summary

Content type

Image

Digest

sha256:1a8c1cf79…

Size

254 Bytes

Last updated

14 days ago

docker pull obeoneorg/firecrawl-ui:sha256-ecfe3430690c9dff2d21d89e7123acde8b6e80180a42a30d1c00015bedfc6459.sig