Skip to content

feat(web): new UI (partially implemented)#4933

Merged
qinxuye merged 9 commits into
xorbitsai:mainfrom
maoyuehui:feat-new-ui-version
May 21, 2026
Merged

feat(web): new UI (partially implemented)#4933
qinxuye merged 9 commits into
xorbitsai:mainfrom
maoyuehui:feat-new-ui-version

Conversation

@maoyuehui
Copy link
Copy Markdown
Collaborator

  1. Framework: Next.js, UI: @radix-ui
  2. Global: i18n, request, theme, app-init, constants, hooks, etc.
  3. Pages: login, cluster-information, register-model (partial)

@XprobeBot XprobeBot added this to the v2.x milestone May 21, 2026
@qinxuye qinxuye changed the title Feat new UI version feat[web]: new UI May 21, 2026
@qinxuye
Copy link
Copy Markdown
Contributor

qinxuye commented May 21, 2026

To clarify, tech stack used is aligned with Xagent, and will not be default until version 3.0

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request establishes the foundation for the inference service's frontend, implementing a Next.js application with comprehensive UI components, internationalization, and modules for cluster management and model registration. The review identifies several critical issues, including a hardcoded internal IP address, a potential XSS vulnerability in the multi-select component, and incorrect usage of the next/image component. Additionally, improvements are suggested for server-side fetch performance, polling patterns in the cluster dashboard, and Tailwind CSS configuration for markdown rendering.

Comment thread frontend/src/lib/utils.ts Outdated
Comment thread frontend/src/components/ui/multi-select.tsx Outdated
Comment thread frontend/src/components/ui/markdown-renderer.tsx Outdated
Comment thread frontend/tailwind.config.js Outdated
Comment thread frontend/src/components/pages/cluster-information.tsx Outdated
Comment thread frontend/next.config.ts Outdated
Comment thread frontend/src/components/ui/json-syntax-highlighter.tsx
Comment thread frontend/src/app/layout.tsx
@qinxuye qinxuye changed the title feat[web]: new UI feat(web): new UI May 21, 2026
@qinxuye
Copy link
Copy Markdown
Contributor

qinxuye commented May 21, 2026

/gemini review

1 similar comment
@maoyuehui
Copy link
Copy Markdown
Collaborator Author

/gemini review

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request establishes the frontend foundation for Xinference using Next.js 15, implementing model registration, cluster monitoring, and internationalization. The code review identified several technical issues, including a bug where clearInterval was incorrectly used to clear a setTimeout and potential failures in server-side data fetching due to relative URLs. Recommendations were also provided to improve the reliability of polling mechanisms, remove duplicate utility functions, sanitize string interpolation logic, and eliminate leftover debug code.

Comment thread frontend/src/components/pages/cluster-information.tsx
Comment thread frontend/src/app/layout.tsx
Comment thread frontend/src/components/pages/cluster-information.tsx
Comment thread frontend/src/lib/utils.ts Outdated
Comment thread frontend/src/contexts/i18n-context.tsx
Comment thread frontend/src/components/ui/form-field.tsx
Comment thread frontend/src/components/pages/register-model/form-content.tsx Outdated
Comment thread frontend/src/components/ui/json-syntax-highlighter.tsx
Comment thread frontend/src/lib/utils.ts Outdated
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request initializes the frontend for the Xinference project using Next.js 15 and React 19, featuring a robust UI component library, multi-language support (i18n), and pages for cluster monitoring and model registration. Feedback highlights several areas for improvement, including fixing a timer cleanup bug where clearInterval was used instead of clearTimeout, addressing a hardcoded locale in date formatting, and preventing potential URL concatenation errors. Additionally, recommendations were made to correct a dependency version for lucide-react, remove leftover debugging code, optimize images using the next/image component, and enhance error messaging and TypeScript typing for better maintainability.

Comment thread frontend/src/components/pages/cluster-information.tsx Outdated
Comment thread frontend/package.json Outdated
Comment thread frontend/src/components/pages/cluster-information.tsx
Comment thread frontend/src/components/pages/register-model/form-content.tsx Outdated
Comment thread frontend/src/lib/utils.ts Outdated
Comment thread frontend/src/components/layout/sidebar.tsx Outdated
Comment thread frontend/src/components/ui/form-field.tsx
Comment thread frontend/src/app/layout.tsx
Comment thread frontend/src/components/pages/register-model/index.tsx Outdated
Copy link
Copy Markdown
Contributor

@qinxuye qinxuye left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I found two current build blockers that are not covered by the existing review threads. Also, git diff --check upstream/main...HEAD currently fails due to trailing whitespace in several frontend files, so please run the formatter or clear those whitespace errors as well.

Comment thread frontend/eslint.config.mjs
Comment thread frontend/src/components/ui/markdown-renderer.tsx Outdated
@qinxuye qinxuye changed the title feat(web): new UI feat(web): new UI (partially implemented) May 21, 2026
@qinxuye qinxuye merged commit 86446aa into xorbitsai:main May 21, 2026
11 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants