Skip to content

Latest commit

 

History

History
195 lines (128 loc) · 8.4 KB

README.en.md

File metadata and controls

195 lines (128 loc) · 8.4 KB

github

FastSoyAdmin

license github stars github forks python FastAPI

Pydantic pdm-managed black pyright ruff

English | 中文

Note

If you think FastSoyAdmin 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

FastSoyAdmin is a clean, elegant, beautiful and powerful admin template, based on the latest technology stack, front-end including Vue3, Vite5, TypeScript, Pinia and UnoCSS, back-end including FastAPI、Pydantic and Tortoise ORM. 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. FastSoyAdmin 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

Sure! Here's the translation:

  • Cutting-Edge Technology: The backend uses the latest tech stack, including FastAPI, Pydantic, Tortoise ORM, while the frontend uses Vue3, Vite5, TypeScript, Pinia, and UnoCSS.

  • Unique Access Control: The backend features unique access control, with strict separation of user roles and permissions between the frontend and backend.

  • Detailed Log Management: Based on SoybeanAdmin, it adds log management and API access control features to meet real business needs, enabling secondary verification of backend permissions.

  • Integrated Utility Tools: The backend includes many useful tools with low code coupling, and some utility functions have been rewritten.

  • Clear project architecture: using pnpm monorepo architecture, clear structure, elegant and easy to understand.

  • Strict code specifications: front-end follow the SoybeanJS specification, integrate eslint, prettier and simple-git-hooks to ensure the code is standardized, back-end use Ruff and Pyright to ensure the code is standardized.

  • Rich theme configuration: built-in a variety of theme configurations, perfectly integrated with UnoCSS.

  • Built-in internationalization solution: easily realize multi-language support.

  • 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.

Related

Example Images

Usage

Method 1

Clone the project

$ git clone https://github.com/sleep1223/fast-soy-admin

Deploy using Docker Compose

$ sudo docker compose up -d

View logs

$ sudo docker compose logs -f # View all logs
$ sudo docker compose logs -f app # View FastAPI logs only
$ sudo docker compose logs -f nginx # View Nginx logs only
$ sudo docker compose logs -f web # View pnpm build logs only

Redeploy after changes

$ sudo docker compose down && sudo docker compose up -d

Method 2

Make sure your environment meets the following requirements:

  • git: you need git to clone and manage project versions.
  • python: >= 3.10
  • NodeJS: >=18.0.0, recommended 18.19.0 or higher.
  • pnpm: >= 8.0.0, recommended 8.14.0 or higher.

Clone Project

git clone https://github.com/sleep1223/fast-soy-admin

Install Dependencies

$ pdm install 或者 pip install -r requirements.txt
$ cd web && pnpm i

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

Start Project

front-end

$ cd web && pnpm dev

back-end

$ pdm run run.py 或者 python run.py

Build Project

$ cd web && pnpm build

TODO

  • Optimize response speed using Redis
  • Deploy using Docker
  • Integrate FastCURD

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.

Contributors

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

Star Trend

Star History Chart

License

This project is based on the MIT © 2024 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.