Express-TS-DDD REST API 项目教程
1. 项目介绍
本项目是基于 Node.js 的 Express 框架,结合 TypeScript 和领域驱动设计(DDD)模式构建的 REST API 项目模板。它包含依赖注入(IoC)和依赖项注入(DI)的实践,以及 Prisma ORM 用于数据库操作。此项目旨在为开发者提供一个结构清晰、易于扩展的开发起点。
2. 项目快速启动
环境准备
在开始之前,请确保您的系统中已经安装了 Node.js 和 Yarn。
克隆项目
git clone https://github.com/gonzaloplaza/express-ts-ddd.git
cd express-ts-ddd
安装依赖
yarn install
配置环境
复制 .env.dist
文件为 .env
并编辑以配置您的环境变量:
cp .env.dist .env
在 .env
文件中,至少需要配置以下变量:
PORT
: 服务端口APP_NAME
: 应用名称APP_DATABASE_URL
: 数据库连接字符串
生成 Prisma 客户端
yarn prisma generate
启动开发服务器
yarn dev
项目将在 3000
端口启动,并可通过浏览器访问。
3. 应用案例和最佳实践
使用 Docker 进行开发
为了简化开发流程,本项目支持使用 Docker Compose。以下是使用 Docker Compose 启动服务的步骤:
-
构建镜像:
docker-compose build
-
启动服务:
docker-compose up
集成 AWS Cognito 认证
本项目默认集成了 AWS Cognito 认证服务。您需要按照 AWS 官方文档配置 Cognito 服务,并更新 .env
文件中的相关配置。
4. 典型生态项目
- 单元测试:使用 Jest 进行单元测试,确保代码质量。
- 日志服务:通过 Morgan 和 Winston 实现日志记录。
- 代码质量:通过 SonarCloud 扫描和集成,保证代码质量。
- CI/CD:通过 GitHub Actions 实现自动化构建、测试和部署。
以上就是关于 Express-TS-DDD REST API 项目的简介和快速启动指南。希望这个项目模板能够帮助您快速搭建和开发基于 TypeScript 和 DDD 模式的 Express 应用。