Convert Figma logo to code with AI

jekip logonaive-ui-admin

Naive Ui Admin 是一款基于 Vue3、Vite3 和 TypeScript 的先进中后台解决方案,集成了前沿的前端技术栈和典型业务模型。它拥有二次封装组件、动态菜单、权限校验、粒子化权限控制等核心功能,旨在帮助企业快速构建高质量的中后台项目。无论在新技术运用或业务实践层面,都能为您提供有力支持,并将持续更新,以满足您不断变化的需求

4,944
913
4,944
27

Top Related Projects

:tada: A magical vue admin https://panjiachen.github.io/vue-element-admin

A modern vue admin panel built with Vue3, Shadcn UI, Vite, TypeScript, and Monorepo. It's fast!

🎉 vue admin,vue3 admin,vue3.0 admin,vue后台管理,vue-admin,vue3.0-admin,admin,vue-admin,vue-element-admin,ant-design,vab admin pro,vab admin plus,vue admin plus,vue admin pro

Vue3、Element Plus、typescript后台管理系统

A admin template based on vue + element-ui. 基于vue + element-ui的后台管理系统基于 vue + element-ui 的后台管理系统

Vue 2.0 admin management system template based on iView

Quick Overview

Naive-ui-admin is a modern Vue 3 admin template based on the Naive UI component library. It provides a clean, responsive interface for building administrative dashboards and management systems, featuring a variety of pre-built components and layouts.

Pros

  • Built with Vue 3 and TypeScript, offering improved performance and type safety
  • Utilizes the Naive UI component library, providing a rich set of customizable UI elements
  • Includes a comprehensive set of features such as dynamic routing, permission management, and dark mode
  • Offers a clean and modular project structure, making it easy to extend and maintain

Cons

  • Limited documentation, which may make it challenging for beginners to get started
  • Relatively new project, potentially lacking in community support and resources compared to more established admin templates
  • Heavily dependent on the Naive UI library, which may limit flexibility for developers who prefer other UI frameworks

Getting Started

To get started with naive-ui-admin, follow these steps:

  1. Clone the repository:

    git clone https://github.com/jekip/naive-ui-admin.git
    
  2. Install dependencies:

    cd naive-ui-admin
    yarn install
    
  3. Start the development server:

    yarn dev
    
  4. Build for production:

    yarn build
    

Visit http://localhost:3000 to view the admin panel in your browser.

Competitor Comparisons

:tada: A magical vue admin https://panjiachen.github.io/vue-element-admin

Pros of vue-element-admin

  • More mature and widely adopted, with a larger community and ecosystem
  • Extensive documentation and examples available
  • Comprehensive set of pre-built components and features

Cons of vue-element-admin

  • Based on Element UI, which may have a steeper learning curve
  • Potentially heavier and more complex for simpler projects
  • Less flexibility in terms of customization compared to Naive UI

Code Comparison

vue-element-admin:

<el-table
  :data="tableData"
  style="width: 100%"
  :row-class-name="tableRowClassName">
  <el-table-column prop="date" label="Date" width="180"></el-table-column>
  <el-table-column prop="name" label="Name" width="180"></el-table-column>
</el-table>

naive-ui-admin:

<n-data-table
  :columns="columns"
  :data="data"
  :pagination="pagination"
  :bordered="false"
/>

The code comparison shows that naive-ui-admin uses a more concise syntax for table components, while vue-element-admin offers more granular control over table structure. This reflects the overall design philosophy of each project, with naive-ui-admin focusing on simplicity and vue-element-admin providing more detailed customization options.

A modern vue admin panel built with Vue3, Shadcn UI, Vite, TypeScript, and Monorepo. It's fast!

Pros of vue-vben-admin

  • More comprehensive and feature-rich, offering a wider range of components and utilities
  • Better documentation and examples, making it easier for developers to get started
  • Stronger community support and more frequent updates

Cons of vue-vben-admin

  • Steeper learning curve due to its complexity and extensive feature set
  • Potentially heavier and slower performance compared to the lightweight naive-ui-admin
  • May include unnecessary features for simpler projects, leading to bloat

Code Comparison

vue-vben-admin:

<template>
  <BasicTable @register="registerTable">
    <template #toolbar>
      <a-button type="primary" @click="handleCreate">Create</a-button>
    </template>
  </BasicTable>
</template>

<script>
import { BasicTable } from '/@/components/Table';
import { useTable } from '/@/components/Table';
</script>

naive-ui-admin:

<template>
  <n-data-table :columns="columns" :data="data" :pagination="pagination" />
</template>

<script>
import { NDataTable } from 'naive-ui';
</script>

The code comparison shows that vue-vben-admin uses a more abstracted and feature-rich table component, while naive-ui-admin opts for a simpler, more straightforward approach. This reflects the overall difference in complexity and feature set between the two admin templates.

🎉 vue admin,vue3 admin,vue3.0 admin,vue后台管理,vue-admin,vue3.0-admin,admin,vue-admin,vue-element-admin,ant-design,vab admin pro,vab admin plus,vue admin plus,vue admin pro

Pros of vue-admin-better

  • More comprehensive documentation and examples
  • Larger community and more frequent updates
  • Wider range of pre-built components and layouts

Cons of vue-admin-better

  • Steeper learning curve due to more complex architecture
  • Potentially heavier bundle size with additional features
  • Less flexibility for customization compared to naive-ui-admin

Code Comparison

naive-ui-admin:

<template>
  <n-config-provider :theme="theme">
    <n-layout>
      <!-- Layout content -->
    </n-layout>
  </n-config-provider>
</template>

vue-admin-better:

<template>
  <el-config-provider :locale="locale">
    <el-container>
      <!-- Container content -->
    </el-container>
  </el-config-provider>
</template>

The code comparison shows that naive-ui-admin uses Naive UI components (n-config-provider, n-layout), while vue-admin-better utilizes Element Plus components (el-config-provider, el-container). This reflects the different UI libraries each project is built upon, influencing the overall structure and available components in each admin template.

Vue3、Element Plus、typescript后台管理系统

Pros of vue-manage-system

  • More established project with a larger community and longer history
  • Comprehensive documentation and examples for easier adoption
  • Supports both Vue 2 and Vue 3, offering flexibility for different project requirements

Cons of vue-manage-system

  • Less frequent updates and potentially slower adoption of new features
  • Heavier bundle size due to inclusion of multiple UI libraries and components
  • May require more configuration and customization for specific use cases

Code Comparison

vue-manage-system:

<template>
    <div class="sidebar">
        <el-menu class="sidebar-el-menu" :default-active="onRoutes" :collapse="collapse" background-color="#324157"
            text-color="#bfcbd9" active-text-color="#20a0ff" unique-opened router>
            <template v-for="item in items">
                <template v-if="item.subs">
                    <el-submenu :index="item.index" :key="item.index">
                        <template #title>
                            <i :class="item.icon"></i>
                            <span>{{ item.title }}</span>
                        </template>
                        <template v-for="subItem in item.subs">
                            <el-submenu v-if="subItem.subs" :index="subItem.index" :key="subItem.index">
                                <template #title>{{ subItem.title }}</template>
                                <el-menu-item v-for="(threeItem, i) in subItem.subs" :key="i" :index="threeItem.index">
                                    {{ threeItem.title }}
                                </el-menu-item>
                            </el-submenu>
                            <el-menu-item v-else :index="subItem.index" :key="subItem.index">
                                {{ subItem.title }}
                            </el-menu-item>
                        </template>
                    </el-submenu>
                </template>
                <template v-else>
                    <el-menu-item :index="item.index" :key="item.index">
                        <i :class="item.icon"></i>
                        <template #title>{{ item.title }}</template>
                    </el-menu-item>
                </template>
            </template>
        </el-menu>
    </div>
</template>

naive-ui-admin:

<template>
  <n-layout-sider
    bordered
    collapse-mode="width"
    :collapsed-width="64"
    :width="220"
    :collapsed="collapsed"
    show-trigger
    @collapse="collapsed = true"
    @expand="collapsed = false"
  >
    <n-menu
      :collapsed="collapsed"
      :collapsed-width="64"
      :collapsed-icon-size="22"
      :options="menuOptions"
      :render-icon="renderIcon"
      :render-label="renderLabel"
      :expand-icon="expandIcon"
      key-field="name"
      :indent="18"
      @update:value="handleMenuClick"
    />
  </n-layout-sider>
</template>

A admin template based on vue + element-ui. 基于vue + element-ui的后台管理系统基于 vue + element-ui 的后台管理系统

Pros of vue2-manage

  • Built with Vue 2, which has a larger ecosystem and more mature libraries
  • Includes a wider range of pre-built components and features
  • More comprehensive documentation and examples

Cons of vue2-manage

  • Uses older technology stack (Vue 2) compared to naive-ui-admin's Vue 3
  • Less modern UI design and styling
  • May require more manual configuration for newer Vue features

Code Comparison

vue2-manage (Vue 2 component):

<template>
  <div>
    <el-table :data="tableData" style="width: 100%">
      <el-table-column prop="date" label="Date" width="180"></el-table-column>
      <el-table-column prop="name" label="Name" width="180"></el-table-column>
      <el-table-column prop="address" label="Address"></el-table-column>
    </el-table>
  </div>
</template>

naive-ui-admin (Vue 3 component with Composition API):

<template>
  <n-data-table :columns="columns" :data="data" :pagination="pagination" />
</template>

<script setup>
import { ref } from 'vue'
const columns = ref([/* column definitions */])
const data = ref([/* table data */])
const pagination = ref({ pageSize: 10 })
</script>

This comparison highlights the differences in syntax and structure between Vue 2 and Vue 3 components, as well as the use of different UI libraries (Element UI vs Naive UI).

Vue 2.0 admin management system template based on iView

Pros of iview-admin

  • More mature and established project with a larger community
  • Comprehensive documentation and examples
  • Built-in support for internationalization (i18n)

Cons of iview-admin

  • Based on older Vue 2 technology
  • Less frequent updates and maintenance
  • Heavier bundle size due to more built-in features

Code Comparison

iview-admin (Vue 2):

<template>
  <div>
    <Table :columns="columns" :data="data"></Table>
  </div>
</template>

<script>
export default {
  // Component logic
}
</script>

naive-ui-admin (Vue 3):

<template>
  <n-data-table :columns="columns" :data="data" />
</template>

<script setup>
import { NDataTable } from 'naive-ui'
// Component logic using Composition API
</script>

Key Differences

  • naive-ui-admin uses Vue 3 and Composition API, offering better performance and more modern development practices
  • iview-admin has a more extensive set of pre-built components and layouts
  • naive-ui-admin has a cleaner, more minimalist design approach
  • iview-admin offers more out-of-the-box features, while naive-ui-admin provides more flexibility for customization

Both projects serve as admin panel templates, but naive-ui-admin is more suited for developers looking for a modern, lightweight starting point, while iview-admin is better for those needing a comprehensive, feature-rich solution with extensive documentation.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

🚀 简介

Naive Ui Admin 是一款 完全免费 且可商用的中后台解决方案,基于 🌟 Vue3.0 🌟、🚀 Vite 🚀、✨ Naive UI ✨ 和 🎉 TypeScript 🎉。 它融合了最新的前端技术栈,提炼了典型的业务模型和页面,包括二次封装组件、动态菜单、权限校验等功能,助力快速搭建企业级中后台项目。

🌈 特性

📦 二次封装的实用高扩展性组件 🎨 响应式、多主题、多配置,快速集成,开箱即用 🚀 强大的鉴权系统,支持 三种鉴权模式,满足多样业务需求 🌐 持续更新的实用性页面模板和交互设计,简化页面构建

🎥 预览

账号:admin,密码:123456(随意)

💡 提示

如果您需要更多功能和组件,不妨尝试全新的 NaiveAdmin,它可能正是您寻找的解决方案

NaiveAdmin 官网

NaiveAdmin 变更日志

为什么选我们?

Plus

全新设计版本,增加了众多特性,值得一试

基于 NaiveUi 组件库

NaiveAdmin Plus 预览

基于 Antd 组件库

NaiveAdmin Antd Plus 预览

Arco vue

智能设计体系,提供轻盈体验

NaiveAdmin Arco 预览

Element Plus

面向设计师和开发者的组件库

Element Plus Admin 预览

Antd vue

新产品,如果您选的技术栈是 Antd 的话,不妨看看

NaiveAdmin Antd 预览

以上版本同时具备 NaiveAdmin 功能/组件/页面,一如既往、开箱即用,欢迎前往查看。

📚 文档

文档地址

🛠 准备

  • node 和 git -项目开发环境
  • Vite - 熟悉 vite 特性
  • Vue3 - 熟悉 Vue 基础语法
  • TypeScript - 熟悉TypeScript基本语法
  • Es6+ - 熟悉 es6 基本语法
  • Vue-Router-Next - 熟悉 vue-router 基本使用
  • NaiveUi - ui 基本使用
  • Mock.js - mockjs 基本语法

🏗️ 使用

  • 获取项目代码
git clone https://github.com/jekip/naive-ui-admin.git
  • 安装依赖
cd naive-ui-admin

pnpm install

  • 运行
pnpm run dev
  • 打包
pnpm build

📜 更新日志

CHANGELOG

🤝 如何贡献

非常欢迎你的加入!提一个 Issue 或者提交一个 Pull Request

Pull Request:

  1. Fork 代码!
  2. 创建自己的分支: git checkout -b feat/xxxx
  3. 提交你的修改: git commit -am 'feat(function): add xxxxx'
  4. 推送您的分支: git push origin feat/xxxx
  5. 提交pull request

📋 Git 贡献提交规范

  • 参考 vue 规范 (Angular)

    • feat 增加新功能
    • fix 修复问题/BUG
    • style 代码风格相关无影响运行结果的
    • perf 优化/性能提升
    • refactor 重构
    • revert 撤销修改
    • test 测试相关
    • docs 文档/注释
    • chore 依赖更新/脚手架配置修改等
    • workflow 工作流改进
    • ci 持续集成
    • types 类型定义文件更改
    • wip 开发中

🌐 浏览器支持

本地开发推荐使用Chrome 80+ 浏览器

支持现代浏览器, 不支持 IE

 Edge
IE
 Edge
Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
not supportlast 2 versionslast 2 versionslast 2 versionslast 2 versions

👥 维护者

@Ah jung

💬 交流

有关 Naive Ui Admin 的使用或其他问题,欢迎加入我们的讨论群组或提出问题。

QQ1群:328347666 (已满) QQ2群:741353560

💖 赞助

如果您觉得这个项目对您有帮助,可以通过下面的链接为作者买一杯果汁,表示感谢!。

donate

Paypal Me