Skip to content
Snippets Groups Projects
README-en.md 5.86 KiB
Newer Older
  • Learn to ignore specific revisions
  • Pan's avatar
    Pan committed
    [![vue](https://img.shields.io/badge/vue-2.4.2-brightgreen.svg)](https://github.com/vuejs/vue)
    [![element-ui](https://img.shields.io/badge/element--ui-1.4.2-brightgreen.svg)](https://github.com/ElemeFE/element)
    [![license](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/PanJiaChen/vue-element-admin/blob/master/LICENSE)
    [![GitHub release](https://img.shields.io/github/release/PanJiaChen/vue-element-admin.svg)]()
    
    
    wyudong's avatar
    wyudong committed
    ## Intro
    
    
    > In the past half year, I have been building a backend for management dashboard using Vue. Though the backend has contained greater than 70 pages and over 10 permissions, it still takes insignificant effort to maintain the project. So I decide to make it open source so as to share my development experience and progress on backend. The tech stack is mainly [Vue.js](https://github.com/vuejs/vue)+[Element](https://github.com/ElemeFE/element)+[axios](https://github.com/mzabriskie/axios). Since it's a personal project, all data requests are simulated with [Mock.js](https://github.com/nuysoft/Mock). **Note:** if anyone wants to modify or develop based on this project, please remove the mock files.
    
    wyudong's avatar
    wyudong committed
    
    
    wyudong's avatar
    wyudong committed
    **Live demo:** http://panjiachen.github.io/vue-element-admin
    
    wyudong's avatar
    wyudong committed
    
    
    Pan's avatar
    Pan committed
    **Note: element-ui@1.4.2 is used in the project, so vue 2.3.0+ is required.**
    
    wyudong's avatar
    wyudong committed
    
    
    Pan's avatar
    Pan committed
     - vueAdmin-template: [vueAdmin-template](https://github.com/PanJiaChen/vueAdmin-template)  
     - electron-vue-admin: [electron-vue-admin](https://github.com/PanJiaChen/electron-vue-admin)
     - Donate:[donate](https://github.com/PanJiaChen/vue-element-admin/blob/master/README-en.md#donate)
    
    wyudong's avatar
    wyudong committed
    
    
    wyudong's avatar
    wyudong committed
    ## Features
    
    - Login/Logout
    - Permission authentication
    - Sidebar
    - Breadcrumb
    - Rich text editor
    - Markdown editor
    - JSON editor
    - Drag & drop list
    - SplitPane
    - Dropzone
    - Sticky
    - CountTo
    - ECharts
    - 401, 404 error page
    - Error log
    
    Pan's avatar
    Pan committed
    - Export Excel
    
    Pan's avatar
    Pan committed
    - Upload Excel
    
    Pan's avatar
    Pan committed
    - Export Zip
    
    wyudong's avatar
    wyudong committed
    - Table example
    - Interactive table example
    - Drag & drop table example
    - Form example
    - Multi-environments distribution
    - Dashboard
    - Two-factor authentication
    
    Pan's avatar
    Pan committed
    - Collapsing sidebar (support nested routes)
    
    wyudong's avatar
    wyudong committed
    - Mock data
    
    Pan's avatar
    Pan committed
    - cache tabs example
    - screenfull
    - markdown2html
    
    Pan's avatar
    Pan committed
    - views-tab
    
    Pan's avatar
    Pan committed
    - clipboard
    
    wyudong's avatar
    wyudong committed
    
    ## Development
    
    ```bash
    # Clone project
    git clone https://github.com/PanJiaChen/vue-element-admin.git
    
    # Install dependencies
    npm install
    
    
    wyudong's avatar
    wyudong committed
    # Or (not recommended for cnpm due to unknown bugs, use taobao mirror instead)
    
    wyudong's avatar
    wyudong committed
    npm install --registry=https://registry.npm.taobao.org
    
    # Run local dev server
    npm run dev
    ```
    
    Visit in browser: http://localhost:9527
    
    ## Distribution
    
    ```bash
    # Build staged environment with webpack-bundle-analyzer
    npm run build:sit-preview
    
    # Build production environment
    npm run build:prod
    ```
    
    ## Directory structure
    
    
    wyudong's avatar
    wyudong committed
    ├── build                      // build 
    ├── config                     // config
    ├── src                        // source code
    │   ├── api                    // all requests
    │   ├── assets                 // static resource like themes, fonts
    │   ├── components             // global public components
    │   ├── directive              // global directive
    │   ├── filters                // global filters
    │   ├── mock                   // mock data
    │   ├── router                 // router
    │   ├── store                  // global status management
    │   ├── styles                 // global styles
    │   ├── utils                  // global public functions
    │   ├── view                   // view
    │   ├── App.vue                // entry view
    │   └── main.js                // entry for loading components, initialization
    ├── static                     // third-party libraries not packed with Webpack
    │   └── Tinymce                // rich text
    ├── .babelrc                   // babel-loader config
    ├── eslintrc.js                // eslint config
    ├── .gitignore                 // gitignore
    ├── favicon.ico                // favicon
    ├── index.html                 // html template
    └── package.json               // package.json
    ```
    
    
    Pan's avatar
    Pan committed
    ## Changelog
    Detailed changes for each release are documented in the [release notes](https://github.com/PanJiaChen/vue-element-admin/releases).
    
    
    Pan's avatar
    Pan committed
    ## Donate
    If you find this project useful, you can buy me a cup of coffee
    ![donate](https://panjiachen.github.io/donate/donation.png)
    
    
    wyudong's avatar
    wyudong committed
    ## State Management
    
    Only status of user and app configuration is managed by Vuex. Other data are managed by their own business pages.
    
    ## Demo
    
    #### Two-factor authentication, supporting WeChat and QQ
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/2login.gif)
    
    #### Realtime switching themes
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/theme.gif)
    
    
    Pan's avatar
    Pan committed
    #### tabs
    
    ![tabs](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/tabs.gif)<br />
    
    
    wyudong's avatar
    wyudong committed
    #### Collapsing sidebar
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/leftmenu.gif)
    
    
    wyudong's avatar
    wyudong committed
    #### Drag & drop table
    
    wyudong's avatar
    wyudong committed
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/order.gif)
    
    
    wyudong's avatar
    wyudong committed
    #### Interactive table
    
    Pan's avatar
    Pan committed
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/dynamictable.gif)
    
    
    wyudong's avatar
    wyudong committed
    #### Uploading cropped avatar
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/uploadAvatar.gif)
    
    #### Error log
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/errorlog.gif)
    
    
    wyudong's avatar
    wyudong committed
    #### Rich text (integrated with Qiniu, watermark and customization)
    
    wyudong's avatar
    wyudong committed
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/editor.gif)
    
    #### Packaging table component
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/table.gif)
    
    #### Charts
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/echarts.gif)
    
    #### Exporting to Excel
    
    ![](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/excel.png)
    
    #### More
    
    http://panjiachen.github.io/vue-element-admin
    
    Pan's avatar
    Pan committed
    
    ## License
    
    MIT