cd /news/artificial-intelligence/deepseek-chat-demo-run-the-app-ui-in… · home › topics › artificial-intelligence › article
[ARTICLE · art-170060] src=explainx.ai ↗ pub= topic=artificial-intelligence verified=true sentiment=↑ positive

DeepSeek chat-demo: Run the App UI in the Browser With No Backend

DeepSeek published chat-demo, an MIT-licensed static chat client that calls api.deepseek.com directly from the browser with no application server, and the GitHub repository passed 2,500 stars in roughly three days after its November 12, 2026 creation date. The TypeScript, Rspack and pnpm project defaults to the deepseek-flash model via the Messages and Files APIs, stores API keys in localStorage and chats in IndexedDB, and ships features including SSE streaming, message branches, deep thinking, smart search, link reading, voice input, Mermaid rendering, and ZIP history import/export. DeepSeek positions chat-demo as a reference UI for the full application API suite it released on November 13, 2026, and builders can self-host the dist/ bundle or reconfigure the API origin through createConfig in rspack.config.ts.

by read8 min views1 publishedNov 15, 2026
DeepSeek chat-demo: Run the App UI in the Browser With No Backend
Image: Explainx (auto-discovered)

DeepSeek published chat-demo on GitHub — a static, MIT-licensed chat client that calls api.deepseek.com from the browser with no application server. The repository went from zero to more than 2,500 stars in roughly three days after its November 12, 2026 creation date. You can also open a hosted build or a Release zip without running pnpm install.

This guide explains what the UI includes, how storage works, and how it lines up with the November 13 application API drop.

TL;DR #

Piece Detail (from README, November 15, 2026)
License MIT
Stack TypeScript ,Rspack ,pnpm
Default API https://api.deepseek.com
Default model deepseek-flash via Messages / Files APIs
Backend required? No — static site indist/
Local data localStorage for keys;IndexedDB for chats
Notable features Branches, deep think, search, link read, voice, Mermaid

What problem does chat-demo solve? #

Consumer chat apps hide protocol details — tool calls, branch pointers, speech endpoints. DeepSeek's README positions chat-demo as the reference skin for everything the API already exposes after the full application API release.

For builders comparing stacks:

  • You get a working reference forSSE streaming ,message branches , andattachment upload without writing React from scratch.
  • You can fork the UI while keeping parity withDeepSeek pricing for search, URL read, and safety flags.
  • You can self-host the static bundle beside internal gateways usingcreateConfig({ apiOrigin, devServer }) inrspack.config.ts .

A terminal-style alternate path beside gears, illustrating the DeepSeek chat-demo static browser client for API chat

Features listed in the README #

DeepSeek documents the following in the GitHub README:

Conversations

  • Multiple chats with auto titles , rename, delete.
  • Edit prompts ,regenerate , andswitch message branches .

Model capabilities

  • Streaming replies.
  • Deep thinking ,smart search ,link reading , andcitations .
  • Stop generation orcontinue eligible replies.

Input modalities

  • Upload, paste, or drag attachments .
  • Voice input andread aloud , with amobile recording spectrum in the input row.

Rendering

  • Markdown , syntax highlight,KaTeX ,Mermaid .

UX

  • English and Simplified Chinese , light/dark themes, mobile layouts,history import/export as ZIP.

Those features assume the configured API implements DeepSeek extensions (search, link reading, titles, latest_reminder). That matches the same week’s API documentation refresh.

How to install and build #

Requirements:

  • Node.js 22.12+
  • pnpm

Commands from the README:

git clone https://github.com/deepseek-ai/chat-demo.git
cd chat-demo
pnpm install
pnpm dev

Development serves http://localhost:8090. Production:

pnpm build

Output lands in dist/. You can deploy to any static host or open dist/index.html locally. The README warns that file:// use needs browser support for storage on local files and an API that allows the page’s origin.

Maintenance scripts also include pnpm type, pnpm lint (oxlint), and pnpm format (oxfmt).

Storage, privacy, and import/export #

The README is explicit about data boundaries:

Data Where it lives
API key and settings localStorage
Conversations and attachment originals IndexedDB
Unsent drafts Cleared when you delete all chats

Import/export uses ZIP archives. Import replaces all local conversations and attachments after validation. Exports include conversations and local image originals, but exclude API keys, settings, and non-image attachment originals.

Delete all chats in Settings stops in-flight replies, wipes IndexedDB conversations and drafts, and keeps API keys and settings. Files already on DeepSeek’s servers are not deleted.

That model is great for personal trials and poor for shared machines without disk encryption — the key is only as safe as the browser profile.

Code layout #

The README tree:

  • src/app/ — layout, themes, global styles
  • src/components/ — chat, settings, Markdown UI
  • src/i18n/ — EN/ZH strings
  • src/services/api/ — requests, SSE, protocol types
  • src/services/chat/ — branches, storage, ZIP history
  • src/services/markdown/ — parsing and diagrams
  • src/services/speech/ — record and playback

Speech uses separate ASR / TTS endpoints documented on DeepSeek’s pricing page, which we summarized in the application API post.

Is DeepSeek chat-demo open source? #

Yes. The repo ships under MIT, copies LICENSE into dist/, and lists third-party dependency licenses separately. That makes it distinct from closed consumer apps and from heavier self-hosted chat shells that need their own backend — except this one tracks DeepSeek-first protocol extensions in a static-only bundle.

DeepSeek also documents a Chinese README (README.zh-CN.md) and a GitHub Actions workflow folder for CI.

How it compares to other DeepSeek tooling #

Option When to use it
chat-demo Official UI reference, static hosting, MIT fork base
DeepSeek API only Headless agents, your own front end
DeepSeek V4.1 Flash weights Self-host models; chat-demo still needs a compatible API
Frontier comparison tables Pick models, not UI shells

Stars (~2,524 on the trending card when candidates were collected) show developer curiosity, not enterprise adoption. Treat the repo as documentation you can run, similar to how labs ship Claude Code skills beside APIs.

Troubleshooting local and static deploys #

The README flags three common failures:

  1. file:// without storage — Browsers block or reset IndexedDB on some profiles. Preferpnpm dev or a static host with HTTPS.
  2. CORS from static hosting — Yourdist/ origin must be allowed by the API gateway. For internal labs, setapiOrigin increateConfig to a same-site reverse proxy.
  3. Missing API capabilities — Search, link read, and speech need server endpoints beyond bare chat completions. If a button does nothing, compare your deployment to theNovember 13 capability list .

For teams already on DeepSeek Harness, chat-demo is the lightweight fork-friendly alternative: no marketplace shell, just chat UX you can white-label.

chat-demo versus Harness and raw API #

Surface Backend Best for
chat-demo Browser → DeepSeek API Reference UI, MIT fork, static CDN
Harness DeepSeek product stack Creator mode, marketplace, daily-driver app
Raw API Your server Headless agents, compliance middleware

None of these replace open-weight self-host if your policy requires weights on prem — pair this client with V4.1 Flash on your GPUs only if you stand up a compatible API front.

Forking for internal pilots #

Because the repo is MIT:

  • Replace branding in src/i18n and themes.
  • Point apiOrigin atAzure, Together, or Fireworks only if their proxy speaks the same extension headers DeepSeek documents — do not assume drop-in compatibility without integration tests.
  • Strip voice features if your SOC forbids microphone upload paths.

Document those forks in internal runbooks the same way you would for Cursor or Claude desktop clients talking to third-party APIs.

Security and compliance checklist #

Before you paste production data into chat-demo:

  1. Rotate keys if the browser profile is shared.
  2. Read outbound traffic : attachments and voice audio go to DeepSeek’s configured API.
  3. Check employer policy — especially US government contractors afterDHS removal guidance cited in our API post.
  4. Do not treat model_safety flags as legal compliance ; DeepSeek’s docs say they are basic risk control, not a substitute for product-level review.

What to watch on the repo roadmap #

With only two commits on main when we cloned, chat-demo is young. Stars moved fast because developers wanted a known-good UI the same week DeepSeek opened search and speech APIs. Expect rapid PRs around i18n, accessibility, and corporate SSO — none of which appear in v1.

Watch these signals before you bet a product on a fork:

  • Release zips on GitHub — DeepSeek already ships downloadable archives for air-gapped trials.
  • Workflow YAML — CI will tell you whether DeepSeek treats this as along-lived reference or ademo stub .
  • Issue velocity — attachment limits and speech errors are usually where first-wave users file bugs.

If DeepSeek slows updates, you still own the MIT snapshot — but you inherit security patches for pnpm dependencies yourself.

Measuring API spend while dogfooding chat-demo #

Because the client streams by default, it is easy to burn search and think tokens during casual testing. Add habits early:

  1. Create a dev API key with spend caps in the DeepSeek console.
  2. Turn off deep think until you need citations for a feature test.
  3. Log per-conversation token estimates if you wire a corporate proxy — the README does not ship analytics.

Compare spend against Small models comparison if you route the same UI at cheaper endpoints for internal staff.

When this is the wrong tool #

Skip chat-demo if you need multi-tenant auth, audit logs on the server, or HIPAA-grade BAAs — this is a browser-trust architecture. Reach for Harness, Open WebUI with a backend, or your own Next.js shell instead.

For agent benchmarks, keep using vals cyber range posts or internal harnesses; chat-demo does not evaluate models, it displays them.

Is DeepSeek chat-demo open source? Yes — fully MIT on GitHub. Do you need a backend? No for the stock build; yes if your security team requires server-side key custody, centralized audit logs, or SSO.

Star count and feature list follow the GitHub README as read on November 15, 2026. API behavior can change on DeepSeek’s side without a repo bump — check api-docs.deepseek.com before you ship.

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @deepseek 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/deepseek-chat-demo-r…] indexed:0 read:8min 2026-11-15 · —