This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/burr.git
The following commit(s) were added to refs/heads/asf-site by this push:
new da03edf9 Deploy site from 04d172ff53558f5277033df8339652d5963c7128
da03edf9 is described below
commit da03edf975eda7c89914089564b73841cb881316
Author: GitHub Actions <[email protected]>
AuthorDate: Sun Mar 22 05:19:04 2026 +0000
Deploy site from 04d172ff53558f5277033df8339652d5963c7128
---
content/404.html | 2 +-
.../_buildManifest.js | 0
.../_ssgManifest.js | 0
content/docs/_sources/concepts/tracking.rst.txt | 22 ++++++++++++++++++++++
content/docs/concepts/index.html | 1 +
content/docs/concepts/tracking/index.html | 18 ++++++++++++++++++
content/docs/searchindex.js | 2 +-
content/index.html | 4 ++--
content/index.txt | 2 +-
9 files changed, 46 insertions(+), 5 deletions(-)
diff --git a/content/404.html b/content/404.html
index f13df916..8b8c84ce 100644
--- a/content/404.html
+++ b/content/404.html
@@ -1 +1 @@
-<!DOCTYPE html><!--dLtYc_OwNYIW8Wk1uli4x--><html lang="en" class="font-sans
__variable_188709"><head><meta charSet="utf-8"/><meta name="viewport"
content="width=device-width, initial-scale=1"/><link rel="preload"
href="/_next/static/media/4cf2300e9c8272f7-s.p.woff2" as="font" crossorigin=""
type="font/woff2"/><link rel="stylesheet"
href="/_next/static/css/4ab741c5bfda45f1.css" data-precedence="next"/><link
rel="preload" as="script" fetchPriority="low"
href="/_next/static/chunks/webpack-7 [...]
\ No newline at end of file
+<!DOCTYPE html><!--nNdRCaWdBG1I0YGKjsytu--><html lang="en" class="font-sans
__variable_188709"><head><meta charSet="utf-8"/><meta name="viewport"
content="width=device-width, initial-scale=1"/><link rel="preload"
href="/_next/static/media/4cf2300e9c8272f7-s.p.woff2" as="font" crossorigin=""
type="font/woff2"/><link rel="stylesheet"
href="/_next/static/css/4ab741c5bfda45f1.css" data-precedence="next"/><link
rel="preload" as="script" fetchPriority="low"
href="/_next/static/chunks/webpack-7 [...]
\ No newline at end of file
diff --git a/content/_next/static/dLtYc-OwNYIW8Wk1uli4x/_buildManifest.js
b/content/_next/static/nNdRCaWdBG1I0YGKjsytu/_buildManifest.js
similarity index 100%
rename from content/_next/static/dLtYc-OwNYIW8Wk1uli4x/_buildManifest.js
rename to content/_next/static/nNdRCaWdBG1I0YGKjsytu/_buildManifest.js
diff --git a/content/_next/static/dLtYc-OwNYIW8Wk1uli4x/_ssgManifest.js
b/content/_next/static/nNdRCaWdBG1I0YGKjsytu/_ssgManifest.js
similarity index 100%
rename from content/_next/static/dLtYc-OwNYIW8Wk1uli4x/_ssgManifest.js
rename to content/_next/static/nNdRCaWdBG1I0YGKjsytu/_ssgManifest.js
diff --git a/content/docs/_sources/concepts/tracking.rst.txt
b/content/docs/_sources/concepts/tracking.rst.txt
index d22b9f89..1e69b452 100644
--- a/content/docs/_sources/concepts/tracking.rst.txt
+++ b/content/docs/_sources/concepts/tracking.rst.txt
@@ -131,3 +131,25 @@ This will print the URL to access the Burr UI web app.
from google.colab import output
output.serve_kernel_port_as_window(7241) # this will open a new window
output.serve_kernel_port_as_iframe(7241) # this will inline in an iframe
+
+---------------------------------------------
+Mount Burr UI inside an existing FastAPI app
+---------------------------------------------
+
+You can embed the Burr UI inside an existing FastAPI application using the
+``mount_burr_ui`` helper.
+
+Example:
+
+.. code-block:: python
+
+ from fastapi import FastAPI
+ from burr.tracking.server.run import mount_burr_ui
+
+ app = FastAPI()
+
+ # Mount Burr UI under /burr
+ mount_burr_ui(app, path="/burr")
+
+This allows you to run the Burr tracking UI alongside your own FastAPI
+application in the same server process.
diff --git a/content/docs/concepts/index.html b/content/docs/concepts/index.html
index a3dd4115..791a9675 100644
--- a/content/docs/concepts/index.html
+++ b/content/docs/concepts/index.html
@@ -431,6 +431,7 @@ s=d.getElementsByTagName('script')[0];
<li class="toctree-l1"><a class="reference internal" href="tracking/">Tracking
Burr</a><ul>
<li class="toctree-l2"><a class="reference internal"
href="tracking/#tracking-client">Tracking Client</a></li>
<li class="toctree-l2"><a class="reference internal"
href="tracking/#tracking-server">Tracking Server</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="tracking/#mount-burr-ui-inside-an-existing-fastapi-app">Mount Burr UI
inside an existing FastAPI app</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal"
href="state-persistence/">State Persistence</a><ul>
diff --git a/content/docs/concepts/tracking/index.html
b/content/docs/concepts/tracking/index.html
index ada0501f..fdd8869e 100644
--- a/content/docs/concepts/tracking/index.html
+++ b/content/docs/concepts/tracking/index.html
@@ -500,6 +500,23 @@ This will print the URL to access the Burr UI web app.</p>
</div>
</section>
</section>
+<section id="mount-burr-ui-inside-an-existing-fastapi-app">
+<h2>Mount Burr UI inside an existing FastAPI app<a class="headerlink"
href="#mount-burr-ui-inside-an-existing-fastapi-app" title="Link to this
heading">ΒΆ</a></h2>
+<p>You can embed the Burr UI inside an existing FastAPI application using the
+<code class="docutils literal notranslate"><span
class="pre">mount_burr_ui</span></code> helper.</p>
+<p>Example:</p>
+<div class="highlight-python notranslate"><div
class="highlight"><pre><span></span><span class="kn">from</span><span
class="w"> </span><span class="nn">fastapi</span><span class="w"> </span><span
class="kn">import</span> <span class="n">FastAPI</span>
+<span class="kn">from</span><span class="w"> </span><span
class="nn">burr.tracking.server.run</span><span class="w"> </span><span
class="kn">import</span> <span class="n">mount_burr_ui</span>
+
+<span class="n">app</span> <span class="o">=</span> <span
class="n">FastAPI</span><span class="p">()</span>
+
+<span class="c1"># Mount Burr UI under /burr</span>
+<span class="n">mount_burr_ui</span><span class="p">(</span><span
class="n">app</span><span class="p">,</span> <span class="n">path</span><span
class="o">=</span><span class="s2">"/burr"</span><span
class="p">)</span>
+</pre></div>
+</div>
+<p>This allows you to run the Burr tracking UI alongside your own FastAPI
+application in the same server process.</p>
+</section>
</section>
</article>
@@ -579,6 +596,7 @@ This will print the URL to access the Burr UI web app.</p>
<li><a class="reference internal"
href="#launch-burr-ui-from-a-notebook">Launch Burr UI from a notebook</a></li>
</ul>
</li>
+<li><a class="reference internal"
href="#mount-burr-ui-inside-an-existing-fastapi-app">Mount Burr UI inside an
existing FastAPI app</a></li>
</ul>
</li>
</ul>
diff --git a/content/docs/searchindex.js b/content/docs/searchindex.js
index e19ef3a1..4426c5e1 100644
--- a/content/docs/searchindex.js
+++ b/content/docs/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"1. Agent application is modeled as State +
Actions \u2013>
Graph":[[28,"agent-application-is-modeled-as-state-actions-graph"]],"1. Make
your methods async":[[6,"make-your-methods-async"]],"2. Build application
\u2013> built in checkpointing &
tracking":[[28,"build-application-built-in-checkpointing-tracking"]],"2.
Implement the is_async method":[[6,"implement-the-is-async-method"]],"3. Comes
with a UI":[[28,"comes-with-a-ui"]],"3. Use async persisters with [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"1. Agent application is modeled as State +
Actions \u2013>
Graph":[[28,"agent-application-is-modeled-as-state-actions-graph"]],"1. Make
your methods async":[[6,"make-your-methods-async"]],"2. Build application
\u2013> built in checkpointing &
tracking":[[28,"build-application-built-in-checkpointing-tracking"]],"2.
Implement the is_async method":[[6,"implement-the-is-async-method"]],"3. Comes
with a UI":[[28,"comes-with-a-ui"]],"3. Use async persisters with [...]
\ No newline at end of file
diff --git a/content/index.html b/content/index.html
index c38b6f60..96b4d0ba 100644
--- a/content/index.html
+++ b/content/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><!--dLtYc_OwNYIW8Wk1uli4x--><html lang="en" class="font-sans
__variable_188709"><head><meta charSet="utf-8"/><meta name="viewport"
content="width=device-width, initial-scale=1"/><link rel="preload"
href="/_next/static/media/4cf2300e9c8272f7-s.p.woff2" as="font" crossorigin=""
type="font/woff2"/><link rel="preload" as="image" href="/burr_logo.svg"/><link
rel="stylesheet" href="/_next/static/css/4ab741c5bfda45f1.css"
data-precedence="next"/><link rel="preload" as="script" fe [...]
+<!DOCTYPE html><!--nNdRCaWdBG1I0YGKjsytu--><html lang="en" class="font-sans
__variable_188709"><head><meta charSet="utf-8"/><meta name="viewport"
content="width=device-width, initial-scale=1"/><link rel="preload"
href="/_next/static/media/4cf2300e9c8272f7-s.p.woff2" as="font" crossorigin=""
type="font/woff2"/><link rel="preload" as="image" href="/burr_logo.svg"/><link
rel="stylesheet" href="/_next/static/css/4ab741c5bfda45f1.css"
data-precedence="next"/><link rel="preload" as="script" fe [...]
@action(reads=["messages"], writes=["messages"])
def chat(state: State, llm_client) -> State:
@@ -40,4 +40,4 @@ app.run(halt_after=["chat"],
inputs={"llm_client": client})<
) border-box"><div class="bg-background absolute inset-px z-20
rounded-[inherit] overflow-hidden"></div><div class="pointer-events-none
absolute inset-px z-30 rounded-[inherit] overflow-hidden opacity-0
transition-opacity duration-300 group-hover:opacity-100"
style="opacity:0.12;background:radial-gradient(200px circle at -200px -200px,
#262626,
transparent 100%
- )"></div><div class="relative z-40 h-full"><div class="flex
flex-col items-center gap-3 p-6 min-h-[160px]"><div class="inline-flex
items-center justify-center rounded-xl p-3 bg-[var(--card-border)]/30"><svg
xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round" class="lucide lucide-twitter h-6 w-6"><path d="M22
4s-.7 2.1-2 3.4c1.6 10-9.4 17.3-18 11.6 2.2. [...]
\ No newline at end of file
+ )"></div><div class="relative z-40 h-full"><div class="flex
flex-col items-center gap-3 p-6 min-h-[160px]"><div class="inline-flex
items-center justify-center rounded-xl p-3 bg-[var(--card-border)]/30"><svg
xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round" class="lucide lucide-twitter h-6 w-6"><path d="M22
4s-.7 2.1-2 3.4c1.6 10-9.4 17.3-18 11.6 2.2. [...]
\ No newline at end of file
diff --git a/content/index.txt b/content/index.txt
index 0dd0ad14..08bfa14b 100644
--- a/content/index.txt
+++ b/content/index.txt
@@ -12,7 +12,7 @@
b:I[23859,["8734","static/chunks/8734-f0efcfa0d7c14bb2.js","8974","static/chunks
11:I[57150,[],""]
:HL["/_next/static/media/4cf2300e9c8272f7-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
:HL["/_next/static/css/4ab741c5bfda45f1.css","style"]
-0:{"P":null,"b":"dLtYc-OwNYIW8Wk1uli4x","p":"","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/4ab741c5bfda45f1.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"className":"font-sans
__variable_188709","children":[["$","head",null,{"children":[["$","link",null,{"
[...]
+0:{"P":null,"b":"nNdRCaWdBG1I0YGKjsytu","p":"","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/4ab741c5bfda45f1.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"className":"font-sans
__variable_188709","children":[["$","head",null,{"children":[["$","link",null,{"
[...]
12:I[24431,[],"OutletBoundary"]
14:I[15278,[],"AsyncMetadataOutlet"]
16:I[24431,[],"ViewportBoundary"]