Convert Figma logo to code with AI

soybeanjs logosoybean-admin

A clean, elegant, beautiful and powerful admin template, based on Vue3, Vite5, TypeScript, Pinia, NaiveUI and UnoCSS. 一个清新优雅、高颜值且功能强大的后台管理模板,基于最新的前端技术栈,包括 Vue3, Vite5, TypeScript, Pinia, NaiveUI 和 UnoCSS。

9,628
1,727
9,628
0

Top Related Projects

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

🎉 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

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

全面ESM+Vue3+Vite+Element-Plus+TypeScript编写的一款后台管理系统(兼容移动端)

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

A clean, elegant, beautiful and powerful admin template, based on Vue3, Vite5, TypeScript, Pinia, NaiveUI and UnoCSS. 一个清新优雅、高颜值且功能强大的后台管理模板,基于最新的前端技术栈,包括 Vue3, Vite5, TypeScript, Pinia, NaiveUI 和 UnoCSS。

Quick Overview

Soybean Admin is a modern, elegant, and feature-rich admin template based on Vue 3, Vite, TypeScript, and UnoCSS. It provides a solid foundation for building responsive and customizable admin interfaces with a focus on performance and developer experience.

Pros

  • Utilizes cutting-edge technologies like Vue 3, Vite, and UnoCSS for improved performance and development experience
  • Offers a wide range of pre-built components and layouts for rapid application development
  • Supports multiple themes and internationalization out of the box
  • Includes comprehensive documentation and examples for easy adoption

Cons

  • Steep learning curve for developers unfamiliar with Vue 3 and TypeScript
  • Limited community support compared to more established admin templates
  • May require additional customization for specific business requirements
  • Frequent updates might lead to compatibility issues with older projects

Getting Started

To get started with Soybean Admin, follow these steps:

  1. Clone the repository:

    git clone https://github.com/soybeanjs/soybean-admin.git
    
  2. Install dependencies:

    pnpm install
    
  3. Start the development server:

    pnpm dev
    
  4. Build for production:

    pnpm build
    

For more detailed instructions and configuration options, refer to the project's documentation on GitHub.

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
  • Includes a rich set of pre-built components and features out of the box

Cons of vue-element-admin

  • Based on Vue 2, which may be considered outdated for new projects
  • Heavier and potentially more complex for simpler applications
  • Less flexibility in terms of customization and modern development practices

Code Comparison

vue-element-admin:

import Vue from 'vue'
import Element from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

Vue.use(Element, { size: 'small', zIndex: 3000 })

soybean-admin:

import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

const app = createApp(App)
app.use(ElementPlus)

The code snippets show that vue-element-admin uses Vue 2 syntax and Element UI, while soybean-admin employs Vue 3 composition API and Element Plus. This reflects the more modern approach of soybean-admin, which may offer better performance and maintainability for new projects.

soybean-admin provides a fresh, TypeScript-based alternative with Vue 3 support, making it more suitable for developers looking to leverage the latest Vue features and best practices. However, vue-element-admin's maturity and extensive resources make it a solid choice for those prioritizing stability and comprehensive documentation.

🎉 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
  • Includes built-in support for multiple languages

Cons of vue-admin-better

  • Steeper learning curve due to more complex architecture
  • Heavier bundle size, which may impact performance
  • Less flexibility for customization compared to soybean-admin

Code Comparison

vue-admin-better:

<template>
  <div class="app-container">
    <el-form ref="form" :model="form" label-width="120px">
      <el-form-item label="Activity name">
        <el-input v-model="form.name"></el-input>
      </el-form-item>
    </el-form>
  </div>
</template>

soybean-admin:

<template>
  <n-form
    :model="model"
    label-placement="left"
    label-width="auto"
    require-mark-placement="right-hanging"
    :style="{
      maxWidth: '640px'
    }"
  >
    <n-form-item label="Input">
      <n-input v-model:value="model.inputValue" placeholder="Input" />
    </n-form-item>
  </n-form>
</template>

The code comparison shows that vue-admin-better uses Element UI components, while soybean-admin uses Naive UI components. Both frameworks provide similar form functionality, but with different styling and component naming conventions.

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

Pros of vue-vben-admin

  • More comprehensive documentation, including detailed guides and API references
  • Larger community and more frequent updates, potentially leading to better long-term support
  • Includes more pre-built components and layouts out of the box

Cons of vue-vben-admin

  • Steeper learning curve due to its extensive feature set and configuration options
  • Potentially heavier and more complex, which may impact performance for smaller projects
  • Less flexibility for customization in some areas due to its opinionated structure

Code Comparison

vue-vben-admin:

import { defineComponent } from 'vue';
import { BasicForm, useForm } from '/@/components/Form';
import { formSchema } from './data';

export default defineComponent({
  setup() {
    const [registerForm, { setFieldsValue }] = useForm({
      schemas: formSchema,
    });
    // ...
  },
});

soybean-admin:

import { defineComponent } from 'vue';
import { NForm, NFormItem, NInput } from 'naive-ui';

export default defineComponent({
  setup() {
    const formRef = ref(null);
    const formModel = reactive({
      // form fields
    });
    // ...
  },
});

The code comparison shows that vue-vben-admin uses a more abstracted form setup with schemas, while soybean-admin employs a more direct approach using Naive UI components.

全面ESM+Vue3+Vite+Element-Plus+TypeScript编写的一款后台管理系统(兼容移动端)

Pros of vue-pure-admin

  • More comprehensive documentation, including detailed setup instructions and component usage guides
  • Larger community and more frequent updates, potentially leading to better long-term support
  • Includes a wider range of pre-built components and layouts out of the box

Cons of vue-pure-admin

  • Steeper learning curve due to more complex architecture and additional features
  • Potentially higher resource usage and slower performance in some scenarios
  • Less flexibility for customization in certain areas compared to soybean-admin

Code Comparison

soybean-admin:

<template>
  <n-config-provider :theme="theme">
    <n-loading-bar-provider>
      <n-dialog-provider>
        <n-notification-provider>
          <n-message-provider>
            <AppProvider>
              <RouterView />
            </AppProvider>
          </n-message-provider>
        </n-notification-provider>
      </n-dialog-provider>
    </n-loading-bar-provider>
  </n-config-provider>
</template>

vue-pure-admin:

<template>
  <el-config-provider :locale="locale">
    <router-view v-slot="{ Component, route }">
      <transition :name="setTransitionName(route)" mode="out-in" appear>
        <keep-alive v-if="keepAliveComponents" :include="keepAliveComponents">
          <component :is="Component" :key="route.fullPath" />
        </keep-alive>
        <component v-else :is="Component" :key="route.fullPath" />
      </transition>
    </router-view>
  </el-config-provider>
</template>

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

Pros of naive-ui-admin

  • More comprehensive documentation and examples
  • Larger community and more frequent updates
  • Better integration with Naive UI components

Cons of naive-ui-admin

  • Less customizable theming options
  • Fewer built-in layouts and page templates
  • Steeper learning curve for beginners

Code Comparison

naive-ui-admin:

<template>
  <n-config-provider :theme="theme">
    <n-layout>
      <n-layout-header>Header</n-layout-header>
      <n-layout-content>Content</n-layout-content>
    </n-layout>
  </n-config-provider>
</template>

soybean-admin:

<template>
  <app-provider>
    <router-view />
  </app-provider>
</template>

The code comparison shows that naive-ui-admin uses Naive UI components directly in the template, while soybean-admin employs a more abstracted approach with custom components like app-provider.

naive-ui-admin offers a more straightforward implementation of Naive UI components, which can be beneficial for developers familiar with the library. On the other hand, soybean-admin's abstraction layer may provide more flexibility and easier customization for advanced users.

Both projects aim to simplify admin panel development, but they cater to different developer preferences and skill levels. naive-ui-admin is more suitable for those who want to leverage Naive UI's capabilities directly, while soybean-admin offers a more opinionated and potentially more customizable solution.

A clean, elegant, beautiful and powerful admin template, based on Vue3, Vite5, TypeScript, Pinia, NaiveUI and UnoCSS. 一个清新优雅、高颜值且功能强大的后台管理模板,基于最新的前端技术栈,包括 Vue3, Vite5, TypeScript, Pinia, NaiveUI 和 UnoCSS。

Pros of soybean-admin

  • Identical functionality and features as both repositories are the same project
  • No distinct advantages over the other repository

Cons of soybean-admin

  • No specific disadvantages compared to the other repository
  • Both repositories are essentially the same, so there are no unique drawbacks

Code Comparison

As both repositories are identical, there is no meaningful code comparison to be made. The codebase, structure, and functionality are the same in both cases. Here's a sample of the main entry point from both repositories:

import { createApp } from 'vue';
import App from './App.vue';
import { setupRouter } from './router';
import { setupStore } from './store';
import { setupAssets } from './plugins';

async function setupApp() {
  // Import assets: css, js, etc.
  setupAssets();

  // Create vue app
  const app = createApp(App);

  // Configure store
  setupStore(app);

  // Configure router
  await setupRouter(app);

  // Mount the app
  app.mount('#app');
}

setupApp();

This code is identical in both repositories, as they are the same project. The comparison reveals no differences in implementation or structure.

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

SoybeanAdmin

English | 中文

license github stars github forks gitee stars

Featured|HelloGitHub

[!NOTE] If you think SoybeanAdmin is helpful to you, or you like our project, please give us a ⭐️ on GitHub. Your support is the driving force for us to continue to improve and add new features! Thank you for your support!

Introduction

SoybeanAdmin is a clean, elegant, beautiful and powerful admin template, based on the latest front-end technology stack, including Vue3, Vite5, TypeScript, Pinia and UnoCSS. It has built-in rich theme configuration and components, strict code specifications, and an automated file routing system. In addition, it also uses the online mock data solution based on ApiFox. SoybeanAdmin provides you with a one-stop admin solution, no additional configuration, and out of the box. It is also a best practice for learning cutting-edge technologies quickly.

Features

  • Cutting-edge technology application: using the latest popular technology stack such as Vue3, Vite5, TypeScript, Pinia and UnoCSS.
  • Clear project architecture: using pnpm monorepo architecture, clear structure, elegant and easy to understand.
  • Strict code specifications: follow the SoybeanJS specification, integrate eslint, prettier and simple-git-hooks to ensure the code is standardized.
  • TypeScript: support strict type checking to improve code maintainability.
  • Rich theme configuration: built-in a variety of theme configurations, perfectly integrated with UnoCSS.
  • Built-in internationalization solution: easily realize multi-language support.
  • Automated file routing system: automatically generate route import, declaration and type. For more details, please refer to Elegant Router.
  • Flexible permission routing: support both front-end static routing and back-end dynamic routing.
  • Rich page components: built-in a variety of pages and components, including 403, 404, 500 pages, as well as layout components, tag components, theme configuration components, etc.
  • Command line tool: built-in efficient command line tool, git commit, delete file, release, etc.
  • Mobile adaptation: perfectly support mobile terminal to realize adaptive layout.

Version

Documentation

Example Images

Usage

Environment Preparation

Make sure your environment meets the following requirements:

  • git: you need git to clone and manage project versions.
  • NodeJS: >=18.12.0, recommended 18.19.0 or higher.
  • pnpm: >= 8.7.0, recommended 8.14.0 or higher.

Clone Project

git clone https://github.com/soybeanjs/soybean-admin.git

Install Dependencies

pnpm i

Since this project uses the pnpm monorepo management method, please do not use npm or yarn to install dependencies.

Start Project

pnpm dev

Build Project

pnpm build

Ecosystem

  • react-soybean-admin: SoybeanAdmin based version of React.
  • electron-mock-admin: A Mock Api management system that helps front-end developers quickly implement interface mocks.
  • T-Shell: A terminal emulator and SSH client with configurable command prompts.
  • pea : Adopting SpringBoot3.2 + JDK21, MyBatis-Plus, SpringSecurity security framework, etc., suitable for the simple permission system developed by soybean-admin.
  • MalusAdmin: A backend management framework developed based on Vue3/TypeScript/NaiveUI and NET7 & Sqlsugar. It is implemented in the most original and simplest way, with a fresh and elegant front-end, a clear and elegant backend structure, and powerful functions.
  • PanisAdmin: Adopting SpringBoot 3, SaToken, MySQL and other frameworks to develop and modify soybean-admin for the second time, adapting dynamic menu/button-level authorization. Retaining the original flavor, fresh and elegant, high-value back-end management system scaffold.
  • snail-job: A distributed task retry and task scheduling platform with "high performance, high value and high activity".
  • SuperApi: Quickly turn your idea into an online stable product! Entity-less library and table building, add, delete, change and check entity-less library table, support 15 kinds of condition query, as well as paging, list, unlimited tree list and other functions of the API deployment! With interface documentation, Auth authorisation, interface flow restriction, access to the client's real IP, advanced server caching components, dynamic APIs and other features, we look forward to your experience!
  • FastSoyAdmin: A modern Management Platform based on FastAPI+Vue3+Naive UI.

How to Contribute

We warmly welcome and appreciate all forms of contributions. If you have any ideas or suggestions, please feel free to share them by submitting pull requests or creating GitHub issue.

Git Commit Guidelines

This project has built-in commit command, you can execute pnpm commit to generate commit information that conforms to Conventional Commits specification. When submitting PR, please be sure to use commit command to create commit information to ensure the standardization of information.

Browser Support

It is recommended to use the latest version of Chrome in development for a better experience.

IE EdgeFirefoxChromeSafari
not supportlast 2 versionslast 2 versionslast 2 versionslast 2 versions

OpenSource Author

Soybean

Contributors

Thanks the following people for their contributions. If you want to contribute to this project, please refer to How to Contribute.

Communication

SoybeanAdmin is a completely open source and free project, helping developers to develop medium and large-scale management systems more conveniently. It also provides WeChat and QQ communication groups. If you have any questions, please feel free to ask in the group.

QQ Group

Add the following WeChat to invite to the WeChat group

Star Trend

Star History Chart

License

This project is based on the MIT © 2021 Soybean protocol, for learning purposes only, please retain the author's copyright information for commercial use, the author does not guarantee and is not responsible for the software.