Files
deer-flow/web
LoftyComet b7f0f54aa0 feat: add citation support in research report block and markdown
* feat: add citation support in research report block and markdown

- Enhanced ResearchReportBlock to fetch citations based on researchId and pass them to the Markdown component.
- Introduced CitationLink component to display citation metadata on hover for links in markdown.
- Implemented CitationCard and CitationList components for displaying citation details and lists.
- Updated Markdown component to handle citation links and inline citations.
- Created HoverCard component for displaying citation information in a tooltip-like manner.
- Modified store to manage citations, including setting and retrieving citations for ongoing research.
- Added CitationsEvent type to handle citations in chat events and updated Message type to include citations.

* fix(log): Enable the logging level  when enabling the DEBUG environment variable (#793)

* fix(frontend): render all tool calls in the frontend #796 (#797)

* build(deps): bump jspdf from 3.0.4 to 4.0.0 in /web (#798)

Bumps [jspdf](https://github.com/parallax/jsPDF) from 3.0.4 to 4.0.0.
- [Release notes](https://github.com/parallax/jsPDF/releases)
- [Changelog](https://github.com/parallax/jsPDF/blob/master/RELEASE.md)
- [Commits](https://github.com/parallax/jsPDF/compare/v3.0.4...v4.0.0)

---
updated-dependencies:
- dependency-name: jspdf
  dependency-version: 4.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(frontend):added the display of the 'analyst' message #800 (#801)

* fix: migrate from deprecated create_react_agent to langchain.agents.create_agent (#802)

* fix: migrate from deprecated create_react_agent to langchain.agents.create_agent

Fixes #799

- Replace deprecated langgraph.prebuilt.create_react_agent with
  langchain.agents.create_agent (LangGraph 1.0 migration)
- Add DynamicPromptMiddleware to handle dynamic prompt templates
  (replaces the 'prompt' callable parameter)
- Add PreModelHookMiddleware to handle pre-model hooks
  (replaces the 'pre_model_hook' parameter)
- Update AgentState import from langchain.agents in template.py
- Update tests to use the new API

* fix:update the code with review comments

* fix: Add runtime parameter to compress_messages method(#803) 

* fix: Add runtime parameter to compress_messages method(#803)

    The compress_messages method was being called by PreModelHookMiddleware
    with both state and runtime parameters, but only accepted state parameter.
    This caused a TypeError when the middleware executed the pre_model_hook.

    Added optional runtime parameter to compress_messages signature to match
    the expected interface while maintaining backward compatibility.

* Update the code with the review comments

* fix: Refactor citation handling and add comprehensive tests for citation features

* refactor: Clean up imports and formatting across citation modules

* fix: Add monkeypatch to clear AGENT_RECURSION_LIMIT in recursion limit tests

* feat: Enhance citation link handling in Markdown component

* fix: Exclude citations from finish reason handling in mergeMessage function

* fix(nodes): update message handling

* fix(citations): improve citation extraction and handling in event processing

* feat(citations): enhance citation extraction and handling with improved merging and normalization

* fix(reporter): update citation formatting instructions for clarity and consistency

* fix(reporter): prioritize using Markdown tables for data presentation and comparison

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: LoftyComet <1277173875@qq。>
Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-24 17:49:13 +08:00
..
2025-06-14 13:12:43 +08:00
2025-05-13 19:53:28 +08:00
2025-04-17 12:02:23 +08:00
2025-04-17 12:02:23 +08:00
2025-05-13 19:53:28 +08:00

🦌 DeerFlow Web UI

License: MIT

Originated from Open Source, give back to Open Source.

This is the web UI for DeerFlow.

Quick Start

Prerequisites

  • DeerFlow
  • Node.js (v22.14.0+)
  • pnpm (v10.6.2+) as package manager

Configuration

Create a .env file in the project root and configure the following environment variables:

  • NEXT_PUBLIC_API_URL: The URL of the deer-flow API.

It's always a good idea to start with the given example file, and edit the .env file with your own values:

cp .env.example .env

How to Install

DeerFlow Web UI uses pnpm as its package manager. To install the dependencies, run:

cd web
pnpm install

How to Run in Development Mode

Note

Ensure the Python API service is running before starting the web UI.

Start the web UI development server:

cd web
pnpm dev

By default, the web UI will be available at http://localhost:3000.

You can set the NEXT_PUBLIC_API_URL environment variable if you're using a different host or location.

# .env
NEXT_PUBLIC_API_URL=http://localhost:8000/api

Docker

You can also run this project with Docker.

First, you need read the configuration below. Make sure .env file is ready.

Second, to build a Docker image of your own web server:

docker build --build-arg NEXT_PUBLIC_API_URL=YOUR_DEER-FLOW_API -t deer-flow-web .

Final, start up a docker container running the web server:

# Replace deer-flow-web-app with your preferred container name
docker run -d -t -p 3000:3000 --env-file .env --name deer-flow-web-app deer-flow-web

# stop the server
docker stop deer-flow-web-app

Docker Compose

You can also setup this project with the docker compose:

# building docker image
docker compose build

# start the server
docker compose up

License

This project is open source and available under the MIT License.

Acknowledgments

We extend our heartfelt gratitude to the open source community for their invaluable contributions. DeerFlow is built upon the foundation of these outstanding projects:

In particular, we want to express our deep appreciation for:

These outstanding projects form the backbone of DeerFlow and exemplify the transformative power of open source collaboration.