Files
FastapiAdmin/README.en.md
T
zhangtao 19f3b3c6e3 chore: 删除后端站点无用资源文件
清理后端site目录下的大量图片、sitemap文件及多语言lunr搜索库文件,并更新.gitignore忽略site目录
```

这个提交消息:
1. 使用`chore`类型表示维护性变更
2. 简明描述了删除的主要文件类型
3. 说明了同时更新了.gitignore文件
4. 符合50字符限制的简短描述
5. 使用中文简洁清晰地表达了变更内容
2025-05-26 01:04:05 +08:00

15 KiB
Raw Blame History

Gitee Stars GitHub Stars License

📊 GitHub Data Statistics (Author: @1014TaoTao)

Activity Graph


English | Chinese


📘 Project Introduction

Fastapi-Vue3-Admin is a fully open-source, highly modular, and technologically advanced modern rapid development platform, designed to help developers efficiently build high-quality enterprise-level middle and back-office systems. This project adopts a front-end and back-end decoupled architecture, integrating the Python backend framework FastAPI and the mainstream frontend framework Vue3, combined with UniApp to achieve unified multi-terminal development, providing an all-in-one, out-of-the-box development experience.

Design Philosophy: Centered around modularity and loose coupling, it aims to offer rich functional modules, simple and easy-to-use interfaces, comprehensive development documentation, and convenient maintenance methods. By leveraging a unified framework and components, it reduces technology selection costs, follows development specifications and design patterns, builds a robust code layering model, and is equipped with comprehensive localized Chinese support—specifically tailored for team and enterprise development scenarios.

fastapi_vue3_admin
├─ backend        # Backend project
├─ frontend       # Frontend project
├─ devops         # Deployment project
├─ uni-app        # Mobile application project
├─ docker-compose.yaml # Deployment configuration file
├─ start.sh       # One-click deployment script
├─ LICENSE        # License agreement
├─ README.en.md   # English documentation
└─ README.md      # Chinese documentation

Core Highlights

Feature Description
🔭 Rapid Development A fully open-source modern rapid development platform designed to help developers efficiently build high-quality middle and back-office systems.
🌐 Full-Stack Integration Frontend and backend decoupled architecture, integrating Python (FastAPI), Vue3, and UniApp for multi-terminal development.
🧱 Modular Design Highly decoupled system functions, easy to extend and maintain.
High-Performance Asynchronous Optimized interface response speed using the FastAPI asynchronous framework and Redis caching.
🔒 Secure Authentication Supports JWT OAuth2 authentication mechanisms to ensure system security.
📊 Permission Management Implements fine-grained permission control at the menu, button, and data levels using the RBAC model.
🚀 Quick Deployment Supports one-click deployment with Docker, Docker Compose, and Nginx.
📄 Developer-Friendly Provides comprehensive Chinese documentation, localized interface, and visual toolchains to reduce learning costs.
📫 Cross-Platform Support Supports multi-terminal development via UniApp, including H5 and mini-programs.
🚀 Easy Integration Ready-to-use with mainstream frontend technology stacks such as Vue3, Vite5, Pinia, UniApp, Ant Design Vue, and uView-plus.

🛠️ Technology Stack Overview

Type Technology Selection Description
Backend Framework FastAPI / Uvicorn / Pydantic 2.0 / Alembic Modern, high-performance asynchronous framework with strict type constraints and data migration support.
ORM SQLAlchemy 2.0 Powerful ORM library.
Task Scheduling APScheduler Easily implement scheduled tasks.
Authentication PyJWT Implements JWT-based authentication.
Frontend Framework Vue3 / Vite5 / Pinia / TypeScript Rapid development of Vue3 applications.
UI Library Ant Design Vue / uView-plus Quickly build visually appealing UI components.
Mobile Development UniApp Rapid mobile application development.
Database MySQL / MongoDB Powerful database systems.
Caching Redis High-performance caching database.
Documentation Swagger / Redoc Automatically generates API documentation.
Deployment Docker / Nginx / Docker Compose Rapid project deployment.

📌 Built-in Modules

Module Name Submodules Description
Dashboard Workspace, Analytics Page Common functional entry points
System Management Menus, Departments, Positions, Roles, Users, Logs, Configurations, Announcements, Dictionaries, Tasks Core system functionality
Monitoring Management Online Users, Server Monitoring, Cache Monitoring System monitoring and management features
Public Management API Management, Documentation Management Project API documentation management
App Module Home Page, Workspace, Personal Center Mobile application management

🍪 Demo Environment

  • Demo URL: http://8.137.99.5
  • Admin Account: admin / Password: 123456
  • Demo Account: demo / Password: 123456

👷 Installation and Usage

Version Details

Type Technology Stack Version
Backend Python 3.10 (Versions above 3.10 may cause compatibility issues; upgrade is not planned for now)
Backend FastAPI 0.109
Frontend Node.js >= 20.0 (latest version recommended)
Frontend npm 16.14
Frontend Vue3 3.3
Database MySQL 8.0 (latest version recommended)
Middleware Redis 7.0 (latest version recommended)
MiniApp uni-app 3.0.0
MiniApp uview-plus ^3.3.74

Getting the Code

# Clone Code to Local Machine
git clone https://gitee.com/tao__tao/fastapi_vue3_admin.git
or
git clone https://github.com/1014TaoTao/fastapi_vue3_admin.git

Local Backend Startup

# Navigate to the backend project directory
cd backend

# Install dependencies
pip3 install -r requirements.txt

# Start the backend service
python3 main.py run
or
python3 main.py run --env=dev

# Generate migration file (default environment is 'dev' if not specified)
python3 main.py revision "Initial migration" --env=dev

# Apply migration (default environment is 'dev' if not specified)
python3 main.py upgrade --env=dev

Local Frontend Startup

# 进入前端工程目录
cd frontend

# 安装依赖
npm install

# 启动前端服务
npm run dev

# 构建前端, 生成 `frontend/dist` 目录
npm run build

Local App Startup

# Navigate to the frontend project directory
cd frontend

# Install dependencies
npm install

# Start the frontend service
npm run dev

# Build the frontend, generating the `frontend/dist` directory
npm run build

Local Access Addresses


Docker Deployment

# Copy the script `fastapi_vue3_amdin/start.sh` to the server and grant execution permissions
chmod +x start.sh

# Execute the script
./start.sh

#  Access addresses
# Frontend access: `http://Public IP address:80`, 
# API access: `http://Public IP address:8001/api/v1/docs`, 
# Log in with `admin/123456` or `demo/123456`

# View images:
docker images -a

# View containers:
docker compose ps

# View logs
docker logs -f <Container name>

# Stop the service
docker compose down

# Delete an image
docker rmi <Image name>

# Delete a container
docker rm <Container name>
  • Deployment Issue Troubleshooting:
    • Backend configuration file fastapi_vue3_admin/backend/env/.env.prod.py
    • Frontend configuration files fastapi_vue3_admin/frontend/vite.config.ts and fastapi_vue3_admin/frontend/.env.production
    • Deployment files fastapi_vue3_admin/docker-compose.yaml and fastapi_vue3_admin/devops/devops/nginx/nginx.conf

🔧 Module Display

Login Dashboard Menu Management Department Management
Position Management Role Management User Management Log Management
Configuration Management Online User Management Server Monitoring Cache Monitoring
Task Management API Management Documentation Management Personal Information
Online Documentation Dictionary Management
App Login App Home Page App Workspace App Personal Center

🙏 Special Thanks

Thanks to the contributions and support of the following projects, which have enabled the successful completion of this project:


🎨 Community


❤️ Star Me

If you like this project, please give me a Star to show your support! Thank you very much!


👀 访问统计

Visitor Count