Open-source project
ijry/uview-plus avatar
ijry/uview-plus

uview-plus: a uni-app component framework that also speaks nvue

零云®uview-plus,是uni-app全面兼容nvue的uni-app生态框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水。

718 stars206 forksJavaScriptMIT

At a glance

What is it?
uview-plus is a fork of uView 2.0 for the uni-app ecosystem, with 60 or more components, easycom on-demand imports, and full nvue compatibility so one codebase can target mini programs, H5 and native app builds. It ships an Agent Skills file so AI coding assistants can use its components correctly.
Who is it for?
Adopt uview-plus if your team builds on uni-app and needs one component set that covers H5, Android, iOS and the Chinese mini program platforms without writing a second UI layer for nvue. Do not adopt it for a plain Vue or React project, since the components are tied to the uni-app toolchain and the easycom convention, and do not expect GitHub releases to track versions, because the repository publishes none.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

Editorial analysis

A uni-app framework rather than a general component library

uview-plus is described as a uni-app ecosystem framework that is fully compatible with nvue, offering a broad set of components and convenient utilities. The subtitle in the README calls it a multi-platform rapid development UI framework, forked from uView 2.0, and the homepage is uview-plus.jiangruyi.com with a backup documentation site at uiadmin.net/uview-plus. The important word is uni-app, the cross-platform framework from DCloud that compiles one Vue codebase to app, mini program and H5 targets. Because the project is a fork rather than a from-scratch library, the component vocabulary and the conventions come from uView 2.0, which matters for anyone who has seen that library before. The topics list adds vue and uni-app to the component and ui labels, which is an accurate summary of the scope.

One component set across mini programs, H5 and native apps

The platform list in the README is the practical argument for the framework: Android, iOS, WeChat mini program, H5, QQ mini program, Baidu mini program, Alipay mini program and Toutiao mini program. Underneath that, the first feature line claims full nvue compatibility with native rendering and high performance, and the third claims 60 or more selected components with on-demand import to keep the bundle small. The nvue point is the one that distinguishes this fork. nvue is the native rendering path inside uni-app, used where the webview rendering path is too slow, and a component library that only works in the vue rendering path forces teams to write separate screens for app builds. The README also lists ready-made common pages and layouts, a set of JS utilities, and detailed documentation with modern demos. What the README does not give is a per-component list, so component coverage has to be checked in the documentation rather than assumed.

easycom removes the import boilerplate

The usage model is the second thing to understand. The README states that after you configure the easycom rule, components are imported on demand automatically, with no import statement required, and the example is a template block that uses a button component directly. In practice that means a page file contains markup only, and the build resolves the component from the uview-plus package when it sees the tag. This is a real reduction in per-file noise compared with a library that requires explicit imports in every single-file component, and it pairs with the on-demand import claim in the feature list, since unused components never enter the bundle. The catch is that easycom is a uni-app convention, not a generic bundler feature, so this only works inside a project configured for uni-app, and the README's own quickstart page is where the exact rule is set out.

Installing through the uni-app plugin market

Installation goes through the uni-app plugin marketplace, and the README links the uview-plus entry at ext.dcloud.net.cn/plugin?name=uview-plus. That is the whole install step, and it is a notable difference from a typical npm component library, where you would add a dependency to package.json and register the plugin yourself. The project also has a requirements outsourcing section describing a team of project managers, architects, front-end, back-end, test and operations engineers offering end-to-end contract work for projects such as malls, SCRM systems, OA systems, logistics systems, ERP systems, CMS systems, payment systems, IM chat and WeChat public accounts and mini programs. That is a commercial service offered alongside the open source code, and it is worth separating from the framework itself when you evaluate the project.

Running the workspace across targets

The repository is a working uni-app project, not just a component folder, and package.json shows a script per platform target. A representative slice looks like this.

json
"dev:app": "uni -p app",
"dev:h5": "uni",
"dev:mp-weixin": "uni -p mp-weixin",
"build:h5": "uni build",
"build:mp-weixin": "uni build -p mp-weixin",
"build:app-android": "uni build -p app-android",
"build:app-ios": "uni build -p app-ios"

The WeChat target also has a memory variant, dev:mp-weixin:mem, which runs the vite plugin uni binary with an 8 GB old space limit, and the same pattern appears for the build script, which is a practical hint for large mini program bundles. The rest of the tree supports that workspace story: vite.config.ts and vite-plugins/ for the build, tsconfig.json for TypeScript, harmony-configs/ for a HarmonyOS target, workspace.yaml, docs/, res/ and an .eslintrc.js with .eslintignore for linting. The package name in package.json is uni-preset-vue at version 0.0.0, which reflects that the repository is the development workspace rather than a published package with a versioned release.

An Agent Skills file ships inside the package

This is the newest and most unusual part of the project. The README states that src/uni_modules/uview-plus/skills/ provides usage instructions for uview-plus aimed at AI coding assistants, distributed with the package, in the Agent Skills SKILL.md format, and that it contains the component and icon lists, easycom integration, the uni.$u utility library and common multi-platform pitfalls. Tools such as Claude Code pick it up by copying it into the project's .claude/skills/ directory, with the wiring described in the README at that same skills README.md path. The component and icon lists are generated from the source, so after changing a component you regenerate them and verify the assets.

bash
node scripts/gen-skill-references.mjs
npm run verify:skill-assets

The value of this is concrete. An assistant that does not know the component list will invent tag names, and an invented tag fails silently at runtime in a template. A generated reference removes that failure mode, and the verify script gives the repository a way to check that the generated files match the source.

Testing expectations, licensing and the release story

The README's pull request policy is unusually specific and worth reading before contributing. It asks contributors to test on as many of the supported platforms as possible, mini program, H5, iOS app and Android app, including nvue pages and vue pages, and to attach test screenshots to make review easier. That is a consequence of the project's core promise: a component that looks right in one target and breaks in another is a bug in a multi-platform framework. On licensing, the project is MIT, with the LICENSE file at the repository root and a licence badge in the README. On releases, there are no GitHub releases at all, so versions are tracked in the documentation instead, through the changelog and upgrade guide pages the README links. The repository is not archived, and the last push was on 2026-10-22, with the default branch named 3.x.

Editorial conclusion

Adopt uview-plus if your team builds on uni-app and needs one component set that covers H5, Android, iOS and the Chinese mini program platforms without writing a second UI layer for nvue. Do not adopt it for a plain Vue or React project, since the components are tied to the uni-app toolchain and the easycom convention, and do not expect GitHub releases to track versions, because the repository publishes none. Before you upgrade an existing app, read the upgrade guide and the changelog linked from the README, and remember that a contribution is expected to be tested across mini program, H5, iOS and Android with screenshots attached.

Frequently asked questions

What is uview-plus and how is it different from uView 2.0?

uview-plus is a fork of uView 2.0 for the uni-app ecosystem, described as a framework that is fully compatible with nvue. The README credits the fork from uView 2.0 and points to a changelog and an upgrade guide in the documentation for version differences.

Which platforms does uview-plus support?

The README lists Android, iOS, WeChat mini program, H5, QQ mini program, Baidu mini program, Alipay mini program and Toutiao mini program, and it claims full nvue compatibility with native rendering.

How do I install uview-plus and use its components?

Installation is through the uni-app plugin marketplace, with the uview-plus entry linked at ext.dcloud.net.cn/plugin?name=uview-plus. After you configure the easycom rule, components are imported on demand automatically, so you use them in a template without an import statement.

What is the Agent Skills file in uview-plus for?

The README says src/uni_modules/uview-plus/skills/ contains uview-plus usage instructions for AI coding assistants, in the Agent Skills SKILL.md format, shipped with the package and covering the component and icon lists, easycom integration, the uni.$u utility library and multi-platform pitfalls. The lists are generated from source with node scripts/gen-skill-references.mjs and checked with npm run verify:skill-assets.

What does uview-plus expect from a pull request?

The README asks contributors to test their change across the supported platforms, including mini program, H5, iOS app and Android app, and to attach test screenshots to help review. The project is MIT licensed.

Official sources

  1. ijry/uview-plus on GitHub
  2. Issues
  3. License: MIT
  4. Project website
  5. README
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/ijry-uview-plus.svg)](https://hysenlabs.com/projects/ijry-uview-plus)

Was this useful?