thesysdev/openui - Open Source PR Review Scorecard

The Open Standard for Generative UI

C-Rank Grade: A (Welcoming) - 68/100

External PR Merge Rate: 65%

Response Time: -

First Timer Success: 55%

Frequently Asked Questions

Is thesysdev/openui welcoming to first-time open-source contributors?

thesysdev/openui has a recorded first-timer success rate of 54.5%. Repositories ranked A typically provide actionable feedback during code reviews and actively nurture new community contributors.

How fast can I expect code review feedback on my pull request?

Maintainers in thesysdev/openui respond to incoming external pull requests in approximately 0.0 hours on average. Keeping PRs focused on single tasks and ensuring tests pass helps maintainers review faster.

What does the 68.2 C-Rank™ score (A Tier) represent?

The C-Rank™ system evaluates GitHub projects on a 0–100 scale using real data: PR merge rates, review turnaround time, active maintainer presence, and first-time contributor success. A score of 68.2 places thesysdev/openui in the A tier.

What is the external contributor pull request merge rate for thesysdev/openui?

The external contributor pull request merge rate for thesysdev/openui is 64.8%, based on public PR activity from non-core contributors.

Are there Good First Issues available in thesysdev/openui?

thesysdev/openui currently has 14 active issue(s) tagged with beginner-friendly labels like "good first issue", "beginner", or "up-for-grabs".

thesysdev
thesysdev/openuiA•Welcoming10.7k
GitHub
Back to Explorer
thesysdev

thesysdev/openui

10,696
Active (30d)A•Welcoming(68/100)TypeScript

The Open Standard for Generative UI

GitHub
Compare••
Jump to:

AI Maintainer Review Guidelines

Review Persona

Welcoming Community Builder

Warmth Score
8.3/10
Patience Score
8.4/10
Nitpick Rate
40%

Highly welcoming maintainers in thesysdev/openui. Prompt code reviews with positive guidance for new contributors.

Top PR Submission Do's

  • •Ensure code complies with the project coding style
  • •Keep PRs scoped to a single concern
  • •Include context and link to the related issue

Top PR Friction Pitfalls (Don'ts)

  • •Do not submit PRs without linking an issue
  • •Do not break existing tests without fixing them
  • •Do not mix unrelated refactors in a single PR
Response Velocity
-
No reviewer activity recorded

Average Response Latency

Tracks hours until a maintainer leaves a review, comment, or PR response.

Merge Efficiency
64.8%
Moderate PR acceptance rate

External Acceptance Rate

Percentage of community pull requests successfully merged into main.

First-Timer Success
54.5%
Strong first-timer PR acceptance rate

First PR Conversion

Rate at which developers submitting their first repository PR succeed.

Active Maintainers
14 core
Highly collaborative maintainer core
Diagnostic Health HUD
64.8%
Merge Gauge
54.5%
1st-Timer
Community Vibe42/100

Embed C-Rank Badge

Show contributors that your repository actively reviews and merges external pull requests.

GetMerged C-Rank badge for thesysdev/openui
[![GetMerged C-Rank](https://getmerged.abhishekco.de/api/badge/thesysdev/openui)](https://getmerged.abhishekco.de/thesysdev/openui?utm_source=github&utm_medium=badge)

Active Good First Issues (5)

View on GitHub

Summary The Vue chat example tells the model that TextContent supports markdown, but the local Vue renderer displays markdown markers literally. Observed while running PR #629 locally, but this appears to be an example/component-library mismatch rather than part of the PR's packages/vue-lang query/mutation scope. Repro Run examples/vue-chat. Ask for a response likely to include formatted text, for example stock information. The assistant response renders literal markdown such as **NVDA** and **$877.33** instead of bold text. Expected Markdown inside TextContent("...") should render as formatted text, or the Vue chat prompt/library should not claim markdown support. Actual Markdown is shown literally. Relevant code examples/vue-chat/lib/library.ts describes TextContent as: "Displays a block of text. Supports markdown formatting within the string." examples/vue-chat/lib/library.ts also instructs: "Use TextContent for all text output. You can use markdown within the text string." examp

📅 Opened Jul 7, 2026💬 3 comments
Quality: 40/100Contribute

Summary @openuidev/[email protected]'s Renderer can crash the host app with a React commit-phase error while re-rendering or streaming content: NotFoundError: Failed to execute 'insertBefore' on 'Node': The node before which the new node is to be inserted is not a child of this node. The error is thrown deep in React's commit (mutation) phase, so it cannot be caught by a nested error boundary in the host app — it escalates to the app root and unmounts the whole subtree. We hit it in production in a streaming chat UI, and also when a sibling re-render forces an already-rendered Renderer subtree to re-render. Root cause Two interacting behaviors in the renderer (line refs from the published dist/index.mjs, v0.2.1): 1. ElementErrorBoundary re-presents stale children on error. On hasError, render() returns this.lastValidChildren — React element objects captured from a previous render (componentDidMount/componentDidUpdate stash this.props.children). Those elements correspond to DOM node

📅 Opened Jul 7, 2026💬 1 comment
Quality: 40/100Contribute

Is your feature request related to a problem? Please describe. When working with OpenUI responses it is beneficial to have a toMarkdown method for easier debuggability and/or storage for offline improvements. Since LLMs can handle markdown responses better than OpenUI responses it would be beneficial to have an easier way to convert OpenUI responses to markdown Describe the solution you'd like A simple toMarkdown() method on OpenUI responses that recursively parses the response and converts it to plaintext/markdown by stripping away the UI methods Describe alternatives you've considered We can manually implement this today by sending response back to a LLM and stripping away the UI format but this should be doable without needing a separate call Additional context n/a

📅 Opened Jun 26, 2026💬 1 comment
Quality: 40/100Contribute

Currently there is no way to fully validate the openui lang, invalid lines are just silently skipped. https://github.com/thesysdev/openui/blob/main/packages/lang-core/src/parser/statements.ts#L70 Invalid lines (no =, or no identifier) are silently skipped. Example LLM output: Here is the response: root = Stack([TextContent("hi")]) Rendered output: hi The Here is the response: is just silently skipped and parser also returns 0 errors. Maybe add parse(input, strict: true) or something like that to get all the errors. Current workaround: const parser = createParser(schema) const result = parser.parse(input) const lines = input.split("\n") for (let i = 0; i < lines.length; i++) { const trimmed = lines[i].trim() if (!trimmed) continue if (/^[A-Za-z_$][\w$]*\s*=/.test(trimmed)) break const snippet = trimmed.length > 80 ? trimmed.slice(0, 80) + "..." : trimmed result.meta.errors.push({ source: "parser", code: "parse-failed", message: `Line ${i + 1}: "${snippet}"

📅 Opened May 27, 2026💬 4 comments
Quality: 40/100Contribute

Summary packages/react-ui/src/components/ChartsV2 currently contains only ARCHITECTURE.md. The document describes implementation details, tests, and utilities for ChartsV2, but there is no implementation in that directory. This can confuse contributors trying to understand the current chart code. Suggested implementation Decide whether this document is still useful as a proposal/historical note. Then either: move it to a more appropriate docs/proposals location, update the title and contents to clearly mark it as historical/proposed architecture, or remove it if it is obsolete. Acceptance criteria Contributors can tell whether ChartsV2 is current, planned, or obsolete. Any stale statements about existing files/tests are corrected or removed. The current chart implementation remains documented where appropriate.

📅 Opened May 24, 2026💬 2 comments
Quality: 40/100Contribute
Looking for more TypeScript beginner tasks?Explore TypeScript GFI

Contributor Community Vibe Feedback

Rate what actually matters after opening a pull request here.

Have you contributed to this repo?

Rate your first-hand PR experience (review speed, maintainer responsiveness, and onboarding ease) to help other contributors.

3 ratings required
Maintainer helpfulness
Review speed
Beginner friendliness

Contributor Compatibility & Review Speed Analysis for thesysdev/openui

When evaluating whether to contribute to thesysdev/openui, response velocity and maintainer engagement are crucial. GetMerged continuously tracks pull request trajectories, first-comment latency, and code review rounds to help developers avoid submitting pull requests to backlogged repositories.

Currently, maintainers of thesysdev/openui acknowledge new external contributions in approximately -. Out of all submitted pull requests from non-core authors in the last 180-day window, 64.8% were successfully merged into the primary branch.

Frequently Asked Questions - Contributing to thesysdev/openui

01

Is thesysdev/openui welcoming to first-time open-source contributors?

thesysdev/openui has a recorded first-timer success rate of 54.5%. Repositories ranked Welcoming typically provide actionable feedback during code reviews and actively nurture new community contributors.

02

How fast can I expect code review feedback on my pull request?

The initial maintainer response time averages ~-. Keeping PRs scoped to single concerns and ensuring CI checks succeed will optimize review turnaround.

03

What does the 68.2 C-Rank™ score represent?

The C-Rank™ index scores repositories on a 0 to 100 scale using an objective formula: external PR merge rates, initial response speed, active maintainer count, and first-time contributor retention. A score of 68.2 places thesysdev/openui in the Welcoming tier.

04

What is the external contributor pull request merge rate for thesysdev/openui?

The external pull request merge rate is 64.8%. GetMerged isolates non-core community contributions so external developers get an accurate benchmark of PR acceptance probability.

05

Are there beginner Good First Issues open in thesysdev/openui?

Yes, thesysdev/openui currently has 14 active issue(s) tagged with beginner-friendly labels. You can inspect these directly from the repository issues tab.

GetMerged C-Rank™ Indexing Standard

All metrics displayed for thesysdev/openui are automatically retrieved via the public GitHub API and recalculated daily. Insider pull requests submitted by repository owners or organization members are excluded from merge rate calculations to preserve objective external contributor statistics.