自动生成 OpenAPI 文档,可在 /docs 实时查看并保持同步
typescript-backend-toolkit — Django 后台模板
作者 muneebhashone
基于 Express.js 与 TypeScript 的后端工具包,提供自动生成 OpenAPI 文档、Django 风格管理后台、插件系统与 Artisan 式 CLI,并整合 JWT 认证、BullMQ 队列、Socket.IO 实时通信与多提供商存储/缓存/邮件。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
内置 Django 风格管理后台,用于管理数据与运维操作
提供 Artisan 式 tbk CLI,可生成模块、插件与数据库填充脚本
插件化架构,认证、实时通信、管理后台、队列等能力以插件形式接入
整合 Zod 校验、JWT 认证、BullMQ 队列、Socket.IO 与多提供商存储/缓存/邮件
按职责划分的目录结构,便于 AI 编码代理按固定模式工作
模板详细介绍
TypeScript Backend Toolkit 是一个面向后端开发者的框架型项目,使用 Express.js 与 TypeScript 构建,并附带 React 实现的管理后台界面。它通过插件化架构把认证、实时通信、队列、管理后台等能力从核心代码中分离,同时提供类似 Laravel Artisan 的 tbk CLI,用于生成模块、插件和数据库填充脚本。项目内置自动生成的 OpenAPI 文档(访问 /docs 查看)和 Django 风格的数据管理后台,并整合 Zod 端到端校验、JWT 与 Google 登录、文件上传(S3/R2/本地)、BullMQ 队列与 BullBoard、Socket.IO 实时通信以及事务性邮件模板。
项目目录按职责划分:app/ 负责启动与插件注册,modules/ 存放业务逻辑,plugins/ 扩展功能,lib/ 连接数据库、队列、邮件与存储等基础设施,utils/ 放置纯函数,config/ 校验环境变量,routes/ 声明 HTTP 端点。开发前需要准备 Docker 与 Docker Compose、PNPM 以及 Node.js 20+(LTS)。可通过 npx create-tbk-app 脚手架按需选择功能或使用预设创建项目。
需要注意,仓库采用 MIT 许可,免费范围仅限该版本代码本身;演示图片、字体、图标等第三方素材需按各自许可核对,域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
适合你的项目吗?
适用场景
- 需要快速搭建带自动 API 文档与后台管理界面的 TypeScript 后端服务
- 希望以插件方式按需引入认证、队列、实时通信等能力,而不修改核心代码
- 使用脚手架按预设或交互方式创建新后端项目并生成模块
- 在开发阶段预览事务性邮件模板、调试实时通信事件与队列任务
适合人群
- 熟悉 TypeScript 与 Express.js 的后端开发者
- 需要模块化、类型安全后端架构的团队
- 希望借助 CLI 与代码生成保持项目结构一致的开发者
- 需要自动生成 OpenAPI 文档或管理后台的项目
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
需要预先安装 Docker 与 Docker Compose、PNPM 以及 Node.js 20+(LTS)
- 2
可使用 npx create-tbk-app 创建项目,支持交互模式或 --preset 预设
- 3
开发时运行 pnpm dev 启动热重载,访问 http://localhost:3000/docs 查看自动生成的 API 文档
- 4
生产部署流程为 pnpm build 后复制 .env.production 到 .env,再运行 pnpm start:prod
- 5
外部服务(域名、托管、数据库、支付或 AI 等)可能另外收费,第三方素材需按各自许可核对
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 使用该项目需要预先安装 Docker 与 Docker Compose,属于外部运行环境依赖。
- 运行环境要求 Node.js 20 或更高 LTS 版本,低于该版本无法使用。
- 内置认证依赖 Google 登录,使用该功能需配置 Google 账号与相应凭据。
- 文件上传功能依赖 S3 或 Cloudflare R2 等外部存储服务,可能产生额外费用。
- 队列功能依赖 BullMQ,通常需要可用的 Redis 等外部服务支持。
- 事务性邮件功能需要接入外部邮件发送服务,可能涉及账号与费用。
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
**Docker + Docker Compose**
README 原文
**Node.js 20+ (LTS)**
README 原文
**Auth** (Google Sign‑In + JWT sessions)
README 原文
**File Uploads** (S3/R2/Local, multipart)
README 原文
**Queues** (BullMQ + BullBoard)
README 原文
https://github.com/muneebhashone/typescript-backend-toolkit/blob/main/LICENSEhttps://github.com/muneebhashone/typescript-backend-toolkit/blob/main/README.md**Emails** (transactional templates)
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-09-30。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 96 / 100
- 技术栈
- Django · React
- 网站类型
- 后台 · 启动器
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-08-25
- 截图检查日期
- 2026-09-30
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Django。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。
查看当时使用的来源资料
SHA-256: a418c9ea8b3cd1fe3cd955b3322444b6f7da5acbb7564b7b774040df7670f6a9
2026-09-30T09:12:27.534Z
来源文件 / 仓库<p align="center">
<img src="logo.png" width="200px" align="center" alt="TypeScript Backend Toolkit logo" />
<h1 align="center">TypeScript Backend Toolkit</h1>
<p align="center">
<br/>
<strong>Developer‑first backend toolkit</strong><br/>
Simple for beginners, productive for experts — and structured so tools (including AI agents) can follow it without guesswork.<br/>
Predictable architecture. Type‑safe patterns. Plugin‑based. Production‑ready.
</p>
<p align="center">
<a href="#quick-start">Quick Start</a> •
<a href="#features">Features</a> •
<a href="#cli">CLI</a> •
<a href="#architecture">Architecture</a> •
<a href="docs/">Documentation</a>
</p>
</p>
<br/>
## Prerequisites
Before you get started, make sure you have the following installed on your machine:
- **Docker + Docker Compose**
- **PNPM**
- **Node.js 20+ (LTS)**
## Quick Start
### Scaffold a New Project
Use the CLI scaffolder to create a new project with only the features you need:
```bash
# Interactive mode (recommended)
npx create-tbk-app my-backend-api
# Or with a preset
npx create-tbk-app my-api --preset=standard
# Then start developing
cd my-api
pnpm dev
```
See [create-tbk-app README](packages/create-tbk-app/README.md) for all options and presets.
**Visit `http://localhost:3000/docs`** for your auto-generated API documentation.
## Features
- **Auto‑generated Admin Dashboard (Django‑style)** — Manage data and ops out of the box.
- **Auto‑generated OpenAPI docs (FastAPI‑style)** — Live docs at `/docs`, always in sync.
- **Plugin‑based system** — Add capabilities (auth, realtime, admin, queues) as plugins.
- **First‑class CLI (Artisan‑like)** — Generate modules, plugins, and seeders with consistent, type‑safe patterns.
- **Production‑ready stack** — Zod validation, JWT auth, file uploads, queues, emails, and more.
### Works great with AI agents (optional)
The project is intentionally structured so almost any AI coding agent can work reliably: predictable files, clear schemas, and consistent codegen. Use AI tools if you like—or ignore them and build normally.
## CLI
The `tbk` command‑line tool is productivity‑focused, similar to Laravel’s Artisan. It helps you scaffold features and run common tasks quickly and consistently.
```bash
# Scaffold features fast (Artisan‑like)
pnpm tbk g:module user --path /api/v1
pnpm tbk g:plugin admin
pnpm tbk seed
# Discover commands
pnpm tbk --help
pnpm tbk g:module --help
```
## Architecture
### At a glance
```
src/
├── app/ # Application setup and plugin registration
├── modules/ # Domain logic (users, products, payments)
├── plugins/ # Extensible features (auth, realtime, admin)
├── lib/ # Infrastructure clients (database, storage, email)
├── utils/ # Pure functions (JWT, passwords, pagination)
├── config/ # Type-safe environment configuration
└── routes/ # HTTP wiring with MagicRouter
```
Each folder has one job:
- `app/` boots the server and wires plugins.
- `modules/` holds your business logic and schemas.
- `plugins/` adds features without touching core code.
- `lib/` connects to infra (DB, queues, email, storage).
- `utils/` contains small, pure helpers.
- `config/` validates environment variables.
- `routes/` declares HTTP endpoints.
Core capabilities included:
- **OpenAPI docs** at `/docs`
- **Auth** (Google Sign‑In + JWT sessions)
- **Users & Roles** (CRUD, RBAC)
- **File Uploads** (S3/R2/Local, multipart)
- **Validation** (Zod, end‑to‑end)
- **Queues** (BullMQ + BullBoard)
- **Realtime** (Socket.IO)
- **Realtime Tester** (UI to send/receive events and inspect channels)
- **Admin Panel** (separate auth)
- **Emails** (transactional templates)
## Documentation
- **[CLI Commands](docs/docs/guides/cli-commands)**
- **[Creating Modules](docs/docs/guides/creating-modules)**
- **[MagicRouter](docs/docs/guides/magic-router)**
- **[Environment Config](docs/docs/guides/environment-config)**
- **[Testing & Debugging](docs/docs/guides/testing-debugging)**
## Development Commands
```bash
# Development
pnpm dev # Start with hot reload
pnpm build # Compile to dist/
pnpm start # Run production build
pnpm typecheck # Type checking
pnpm lint # ESLint + Prettier
# CLI Tools
pnpm tbk g:module <name> # Generate complete module
pnpm tbk g:plugin <name> # Generate plugin
pnpm tbk seed # Run database seeders
pnpm tbk docs:openapi # Generate OpenAPI spec
pnpm tbk docs:sdk # Generate TypeScript SDK
# Other Tools
pnpm email:dev # Preview email templates
```
## Production Deployment
```bash
# Build for production
pnpm build
# Set production environment
cp .env.production .env
# Start production server
pnpm start:prod
```
## Contributing
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
---
**Built to make backend development effortless**
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

django-react-template
django-react-template 是一个面向 Django 与 React 开发者的启动模板,旨在减少新项目初始化时的重复工作。
Django · 启动器

django-react-boilerplate
django-react-boilerplate 是一个面向 SaaS 应用的 Django + React 启动器,其核心思路是“自己动手”。
Django · SaaS

django-saas-boilerplate
A modern, production-ready Django boilerplate for building SaaS applications with HTMX, Tailwind CSS, and Alpi…
Django · SaaS

django-starter-template
A production-ready Django 5.2 LTS template
Django · 启动器

Django_Management_System_template
✨ 基于 Django 和 Mysql 的信息管理系统模板 ✨。 后台管理系统,OA ,表单系统,管理员系统,数据库管理系统模板,数据库访问模板。
Django · 后台

sneat-bootstrap-html-django-admin-template-free
Most Powerful & Comprehensive Free Django HTML Admin Dashboard Template built for developers! :rocket:
Django · 后台
