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 预览

Arco vue

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

NaiveAdmin Arco 预览

Element Plus

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

Element Plus Admin 预览

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

Antd vue

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

NaiveAdmin Antd 预览

📚 文档

文档地址

🛠 准备

  • 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 的使用或其他问题,欢迎加入我们的讨论群组或提出问题。

160335146-c28dd205-4600-4d62-b2c6-6456034ab7b1

💖 赞助

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

donate

Paypal Me