QIWU · OPEN SOURCE · MIT · FULL-STACK NODE
One repo
runs your whole admin
NestJS + Vue 3 + Element Plus + MySQL + Redis. Sign-in, permissions, organization, dictionaries, logs, scheduled tasks, messages, files, code generation and approval workflows, all ready out of the box.
Tech stack: NestJS, Vue 3, TypeScript, MySQL, Redis, Element Plus, zod, Socket.IO
01 · MONOREPO
Three packages
one language
Backend, frontend and a shared package live in one repo, all in TypeScript. Types flow from the database all the way to the page.
02 · ONE RULE SET
Write it once, both ends enforce it
Write a validation rule once with zod: the backend uses it to check requests and generate API docs, the frontend uses it to validate forms.
03 · CODE GENERATOR
Create a table
the generator does the rest
It derives the domain, API, permission codes and menu from the table name, then generates backend and frontend code plus tests in one go. It never overwrites a file you already wrote.
04 · PERMISSIONS
Permissions
enforced on the server
Menu and button permissions, five data scopes and a privilege escalation guard. Anything out of scope returns 404, so nobody learns whether a record exists.
05 · WORKFLOW
Approval workflows
out of the box
All-approve and any-one-approves steps, conditional and parallel branches, send back, transfer, add signers, reminders and overdue alerts, committed in the same transaction as your business data.
06 · I18N
中英双语
界面、错误信息、菜单、字典、消息模板、Excel 表头,全部可以切换语言。
07 · BATTERIES INCLUDED
Through every module
Users, roles, menus, departments, dictionaries, logs, tasks, messages, files, code generation, approvals… one template ships them all.
QIWU
Start here
Pick the path that fits you (these tutorials are in Chinese):