Skip to content

寵樂 - 寵物陪伴媒合平台 (後端),使用 Node.js、Express、TypeScript、zod 和 Prisma 等架構構建的。本專案遵循最佳實踐,包括編碼標準、語法檢查和格式化。

Notifications You must be signed in to change notification settings

north-1st/pet-cherish-backend

Repository files navigation

pet-cherish-backend

此為寵樂的後端服務。使用 Node.js、Express、TypeScript、zod 和 Prisma 等架構構建的。本專案遵循最佳實踐,包括編碼標準、語法檢查和格式化。

前置準備

  • Node.js(版本 14.0 以上)
  • npm(版本 6.x 以上)
  • MongoDB

安裝

npm install

開發

npx prisma generate
npx prisma studio
npm run dev

產生 swagger.json

npm run swagger

swagger 文件

https://pet-cherish-backend.zeabur.app/api-docs

語法檢查和格式化

本專案使用 ESLint 進行語法檢查,使用 Prettier 進行程式碼格式化。確保程式碼符合專案的規則,執行以下指令:

npm run lint
npm run format

Husky 和 Lint-Staged

Husky 用於管理 Git hooks,lint-staged 用於在暫存文件上運行 linters。要設置 Husky,執行:

npm run prepare

本地安裝 mongodb

brew install mongodb-community
brew services start mongodb-community
brew services stop mongodb-community

本地啟用 docker

執行指令

docker compose up -d

在 .env 設定 DATABASE_URL

DATABASE_URL=mongodb://root:prisma@localhost:27017/pet-cherish?authSource=admin&retryWrites=true&w=majority

新增初始化資料

npx ts-node src/prisma/seed.ts

Stripe

測試金融卡資訊: 4242 4242 4242 4242

開發技術

專案技術

第三方服務

專案結構

src/
├── config/        # swagger、passport 設置
├── controllers/   # 路由控制器
├── jobs/          # 排程
├── middlewares/   # Express 中介
├── prisma/        # Prisma 設置
├── routes/        # Express 路由
├── schema/        # 資料型別定義
├── services/      # 服務設置、函式
├── server.ts      # 專案入口
└── swagger.ts     # Swagger 設定

About

寵樂 - 寵物陪伴媒合平台 (後端),使用 Node.js、Express、TypeScript、zod 和 Prisma 等架構構建的。本專案遵循最佳實踐,包括編碼標準、語法檢查和格式化。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •