deerflow2/frontend
肖应宇 c50bfb97a9 feat(phase-06): merge references into additional_kwargs.files with soft-fail 2026-04-16 11:15:19 +08:00
..
.vscode chore: specify project name 2026-01-14 09:58:53 +08:00
public docs(01): research phase domain 2026-04-07 12:05:50 +08:00
scripts feat: add uploads 2026-01-24 19:38:08 +08:00
src feat(phase-06): merge references into additional_kwargs.files with soft-fail 2026-04-16 11:15:19 +08:00
tests/e2e test:测试生成图片时禁止暴露apikey的用例 2026-04-14 11:33:49 +08:00
.env.example docs(01): research phase domain 2026-04-07 12:05:50 +08:00
.gitignore feat(05): harden e2e suite with explainable skip strategy 2026-04-07 14:34:09 +08:00
.npmrc chore: add .npmrc back 2026-02-10 22:07:25 +08:00
.prettierignore style: format unformatted files and add .omc/ to prettierignore (#1539) 2026-03-29 16:45:31 +08:00
AGENTS.md fix(frontend): block duplicate sends during uploads (#1165) 2026-03-18 15:10:27 +08:00
CLAUDE.md ci: enforce code formatting checks for backend and frontend (#1536) 2026-03-29 15:34:38 +08:00
Dockerfile docs(01): research phase domain 2026-04-07 12:05:50 +08:00
Makefile chore: create frontend project from boilerplate 2026-01-14 09:50:26 +08:00
README.md ci: enforce code formatting checks for backend and frontend (#1536) 2026-03-29 15:34:38 +08:00
components.json feat: implement the first section of landing page 2026-01-23 00:15:21 +08:00
eslint.config.js fix: fix eslint errors and warnings 2026-01-31 21:46:31 +08:00
next.config.js docs(01): research phase domain 2026-04-07 12:05:50 +08:00
package.json feat(artifacts): 使用 RevoGrid+ExcelJS 预览 Excel 2026-04-14 09:49:17 +08:00
playwright.config.ts feat(05): harden e2e suite with explainable skip strategy 2026-04-07 14:34:09 +08:00
pnpm-lock.yaml feat(artifacts): 使用 RevoGrid+ExcelJS 预览 Excel 2026-04-14 09:49:17 +08:00
pnpm-workspace.yaml Add packages section to pnpm-workspace.yaml (#1382) 2026-03-26 16:09:35 +08:00
postcss.config.js chore: create frontend project from boilerplate 2026-01-14 09:50:26 +08:00
prettier.config.js chore: create frontend project from boilerplate 2026-01-14 09:50:26 +08:00
tsconfig.json feat: implement the first version of landing page 2026-01-23 13:24:03 +08:00

README.md

DeerFlow Frontend

Like the original DeerFlow 1.0, we would love to give the community a minimalistic and easy-to-use web interface with a more modern and flexible architecture.

Tech Stack

Quick Start

Prerequisites

  • Node.js 22+
  • pnpm 10.26.2+

Installation

# Install dependencies
pnpm install

# Copy environment variables
cp .env.example .env
# Edit .env with your configuration

Development

# Start development server
pnpm dev

# The app will be available at http://localhost:3000

Build

# Type check
pnpm typecheck

# Check formatting
pnpm format

# Apply formatting
pnpm format:write

# Lint
pnpm lint

# Build for production
pnpm build

# Start production server
pnpm start

Site Map

├── /                    # Landing page
├── /chats               # Chat list
├── /chats/new           # New chat page
└── /chats/[thread_id]   # A specific chat page

Configuration

Environment Variables

Key environment variables (see .env.example for full list):

# Backend API URLs (optional, uses nginx proxy by default)
NEXT_PUBLIC_BACKEND_BASE_URL="http://localhost:8001"
# LangGraph API URLs (optional, uses nginx proxy by default)
NEXT_PUBLIC_LANGGRAPH_BASE_URL="http://localhost:2024"

Project Structure

src/
├── app/                    # Next.js App Router pages
│   ├── api/                # API routes
│   ├── workspace/          # Main workspace pages
│   └── mock/               # Mock/demo pages
├── components/             # React components
│   ├── ui/                 # Reusable UI components
│   ├── workspace/          # Workspace-specific components
│   ├── landing/            # Landing page components
│   └── ai-elements/        # AI-related UI elements
├── core/                   # Core business logic
│   ├── api/                # API client & data fetching
│   ├── artifacts/          # Artifact management
│   ├── config/              # App configuration
│   ├── i18n/               # Internationalization
│   ├── mcp/                # MCP integration
│   ├── messages/           # Message handling
│   ├── models/             # Data models & types
│   ├── settings/           # User settings
│   ├── skills/             # Skills system
│   ├── threads/            # Thread management
│   ├── todos/              # Todo system
│   └── utils/              # Utility functions
├── hooks/                  # Custom React hooks
├── lib/                    # Shared libraries & utilities
├── server/                 # Server-side code
│   └── better-auth/        # Authentication setup and session helpers
└── styles/                 # Global styles

Scripts

Command Description
pnpm dev Start development server with Turbopack
pnpm build Build for production
pnpm start Start production server
pnpm format Check formatting with Prettier
pnpm format:write Apply formatting with Prettier
pnpm lint Run ESLint
pnpm lint:fix Fix ESLint issues
pnpm typecheck Run TypeScript type checking
pnpm check Run both lint and typecheck

Development Notes

  • Uses pnpm workspaces (see packageManager in package.json)
  • Turbopack enabled by default in development for faster builds
  • Environment validation can be skipped with SKIP_ENV_VALIDATION=1 (useful for Docker)
  • Backend API URLs are optional; nginx proxy is used by default in development

License

MIT License. See LICENSE for details.