Reading the repo
Reading the repo
How to install on Linux
The Open Standard for Generative UI
Saved setup from 12 h ago
Will it work on my device?
CONTRIBUTING.mdThank you for your interest in contributing to OpenUI. We want contributions to be easy to start, clear to review, and aligned with the direction of the project.
Please open an issue before opening a pull request.
This applies to all contributions, including bug fixes, documentation changes, features, refactors, examples, and package changes. Once a maintainer has approved the issue and confirmed the direction, you can open a pull request linked to that issue.
This helps us avoid duplicate work, keep the project direction coherent, and make sure contributors do not spend time on changes that may not be accepted.
Pull requests without an approved issue may be closed so the discussion can happen in the issue first.
Issues marked good first issue or help wanted are intended for community contributors. If you want to work on one of these issues, comment on the issue so maintainers and other contributors know you are interested.
If you are unsure where to start, want feedback on an idea, or need help with an issue, join our Discord. The maintainers and community can help you choose a good first issue, clarify the expected behavior, or review your approach before you begin.
If your pull request has been merged, message anyone with the @admin role in Discord and we will give you the Contributor role in the server.
OpenUI is a pnpm workspace. Packages live in the packages/ directory.
Install dependencies:
pnpm install
Run commands for a specific package with pnpm --filter:
pnpm --filter @openuidev/react-lang test
pnpm --filter @openuidev/react-lang lint:check
pnpm --filter @openuidev/react-lang build
Use the package name that matches the area you are changing.
The OpenUI agent skill is maintained in the thesysdev/skills repository, which is its source of truth.
To propose changes to the skill or its supporting references, open a pull request in thesysdev/skills.
Before opening a pull request, please make sure that:
packages/, a changeset is
included: run pnpm changeset, pick the affected packages and bump levels
(patch for fixes and compatible changes; minor for breaking changes — all
packages are 0.x), and commit the generated file. Releases are automated
from these; see .changeset/README.md.Use GitHub Issues to report bugs. Please include:
Use GitHub Issues for feature requests. Please include:
Please keep contributions focused and easy to review. Large refactors, public API changes, dependency changes, or changes that affect multiple packages should be discussed carefully in the issue before implementation starts.
When changing user-facing behavior, include enough context in the pull request for reviewers to understand the impact. For UI changes, screenshots or short recordings are helpful.
By participating in this project, you agree to follow our Code of Conduct.
Then run bash setup.sh. It stops at the first error and is safe to run again. Servers and tests aren't started; it lists them at the end. Read it first.
git clone https://github.com/thesysdev/openui.git cd openui
Node.js ^20.19.0 || >=22.12.0
# needs nvm: https://github.com/nvm-sh/nvm nvm install 20
corepack enable pnpm install
pnpm test
npx @openuidev/cli@latest create --name genui-chat-app
This is the fastest way to start with OpenUI. The scaffolded app gives you an end-to-end starting point with streaming, built-in UI, and OpenUI Lang support.
What this gives you:
No reports for Linux yet.
Opens a chat with this manual already filled in, for Linux. It uses your own account; gitmanual sends nothing.