[GH-ISSUE #15456] feat: Demo Mode - Contribution request #17568

Closed
opened 2026-04-19 23:21:41 -05:00 by GiteaMirror · 0 comments
Owner

Originally created by @AleLeeHrtz on GitHub (Jul 1, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/15456

Check Existing Issues

  • I have searched the existing issues and discussions.

Problem Description

Hi team! My name is C. Alejandra Carreon, https://ale-leehrtz.org. I’m self-hosting Open WebUI and I’d love to contribute back to the project.

I’d like to expose a public demo of Open WebUI on my website so users can try some models I'm currently fine-tunning with Open-WebUI interface without registering. However, Open WebUI currently requires users to sign up and creates a full user account for each visitor, which is unnecessary and potentially problematic for an open demo.

Without a demo mode, either:

I expose my full backend, credentials, etc to anonymous users, or

I need to build a separate proxy or middleware, which duplicates logic and reduces the value of the WebUI itself.

Desired Solution you'd like

I’d like to propose adding a built-in “Demo Mode” to Open WebUI, with these characteristics:

A “Demo” button on the login page.

Allows anonymous access, without requiring signup or password.

Creates (or reuses) a special demo user account behind the scenes (cannot retrieve past convs. and other expectable setups for this specific use-case).

Limitations in demo mode:

    Only one chat session allowed.

    Maximum of n messages per user/session, defined by admin.

    UI hides features like “New Chat” or advanced tools.

    Optional “Demo Mode” watermark visible to users.

    Any other limitation regarding this hypothetic functionality you, as a team, would like me to take into consideration.

Ideally, the mode should be configurable via environment variables (e.g. DEMO_MODE=true) so each deployer can choose whether to enable it.

Alternatives Considered

Building external middleware or proxy:
I considered creating a separate proxy that manages anonymous requests and forwards them to the WebUI. However, this defeats the purpose of Open WebUI’s own user management and increases complexity unnecessarily.

Sharing a public demo account:
While possible, it exposes credentials publicly and could be abused or modified by users, since they’d share the same account and state.

Hence, integrating a native demo mode directly into Open WebUI is safer and more maintainable.

Additional Context

I’m already running Open WebUI successfully on my server and have experience modifying both backend (Flask/Python) and frontend (Svelte).

I’d be happy to implement this feature myself as a contribution and submit a PR. Let me know if there are preferred conventions or any objections before I proceed.

Thanks for building such an awesome project!

Originally created by @AleLeeHrtz on GitHub (Jul 1, 2025). Original GitHub issue: https://github.com/open-webui/open-webui/issues/15456 ### Check Existing Issues - [x] I have searched the existing issues and discussions. ### Problem Description Hi team! My name is C. Alejandra Carreon, https://ale-leehrtz.org. I’m self-hosting Open WebUI and I’d love to contribute back to the project. I’d like to expose a public demo of Open WebUI on my website so users can try some models I'm currently fine-tunning with Open-WebUI interface without registering. However, Open WebUI currently requires users to sign up and creates a full user account for each visitor, which is unnecessary and potentially problematic for an open demo. Without a demo mode, either: I expose my full backend, credentials, etc to anonymous users, or I need to build a separate proxy or middleware, which duplicates logic and reduces the value of the WebUI itself. ### Desired Solution you'd like I’d like to propose adding a built-in “Demo Mode” to Open WebUI, with these characteristics: A “Demo” button on the login page. Allows anonymous access, without requiring signup or password. Creates (or reuses) a special demo user account behind the scenes (cannot retrieve past convs. and other expectable setups for this specific use-case). Limitations in demo mode: Only one chat session allowed. Maximum of n messages per user/session, defined by admin. UI hides features like “New Chat” or advanced tools. Optional “Demo Mode” watermark visible to users. Any other limitation regarding this hypothetic functionality you, as a team, would like me to take into consideration. Ideally, the mode should be configurable via environment variables (e.g. DEMO_MODE=true) so each deployer can choose whether to enable it. ### Alternatives Considered Building external middleware or proxy: I considered creating a separate proxy that manages anonymous requests and forwards them to the WebUI. However, this defeats the purpose of Open WebUI’s own user management and increases complexity unnecessarily. Sharing a public demo account: While possible, it exposes credentials publicly and could be abused or modified by users, since they’d share the same account and state. Hence, integrating a native demo mode directly into Open WebUI is safer and more maintainable. ### Additional Context I’m already running Open WebUI successfully on my server and have experience modifying both backend (Flask/Python) and frontend (Svelte). I’d be happy to implement this feature myself as a contribution and submit a PR. Let me know if there are preferred conventions or any objections before I proceed. Thanks for building such an awesome project!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#17568