项目介绍
TIP
本站介绍均基于 vitepress-nodejs-demo
.
├── backend# 后端服务(Node.js API)
├── deploy# 部署配置(Docker/脚本工具)
├── frontend# 前端文档(VitePress 站点)
├── scripts# 自动化脚本(构建/安装/启停)
├── package.json# 根项目依赖配置
└── readme.md# 项目说明文档
点击显示详细目录结构
.
|-- backend
| |-- .dockerignore
| |-- Dockerfile
| |-- package-lock.json
| |-- package.json
| |-- src
| | |-- config
| | | `-- constants.js
| | |-- controllers
| | | |-- base.controller.js
| | | |-- greet.controller.js
| | | |-- health.controller.js
| | | `-- time.controller.js
| | |-- index.js
| | |-- middleware
| | | |-- cors.middleware.js
| | | `-- error.middleware.js
| | |-- routes
| | | |-- base.route.js
| | | |-- greet.route.js
| | | |-- health.route.js
| | | |-- index.js
| | | `-- time.route.js
| | `-- utils
| | `-- logger.js
| `-- tsconfig.json
|-- deploy
| |-- Dockerfile
| |-- api-tester.js
| |-- build.bat
| |-- default.conf
| |-- docker-compose.yml
| `-- tools
| |-- 7z
| | |-- 7za.dll
| | |-- 7za.exe
| | |-- 7zxa.dll
| | |-- Far
| | | |-- 7-ZipEng.hlf
| | | |-- 7-ZipEng.lng
| | | |-- 7-ZipFar.dll
| | | |-- 7-ZipFar64.dll
| | | |-- 7-ZipRus.hlf
| | | |-- 7-ZipRus.lng
| | | |-- 7zToFar.ini
| | | |-- far7z.reg
| | | `-- far7z.txt
| | |-- License.txt
| | |-- arm64
| | | |-- 7-ZipFar.dll
| | | |-- 7za.dll
| | | |-- 7za.exe
| | | `-- 7zxa.dll
| | |-- history.txt
| | |-- readme.txt
| | `-- x64
| | |-- 7za.dll
| | |-- 7za.exe
| | `-- 7zxa.dll
| |-- 7z.exe
| |-- plink.exe
| `-- pscp.exe
|-- frontend
| |-- .vitepress
| | |-- config.ts
| | |-- navbar
| | | |-- about.ts
| | | `-- index.ts
| | |-- sidebar
| | | |-- about.ts
| | | `-- index.ts
| | `-- theme
| | |-- Layout.vue
| | |-- components
| | | `-- MyComponent.vue
| | |-- index.mts
| | `-- utils
| | `-- env-utils.ts
| |-- docs
| | `-- about
| | |-- 001.md
| | |-- 002.md
| | `-- 003.md
| |-- index.md
| |-- package-lock.json
| |-- package.json
| `-- public
| `-- assets
| `-- icons
| `-- logo.jpg
|-- package-lock.json
|-- package.json
|-- readme.md
`-- scripts
|-- build copy.js
|-- build.js
|-- install-deps.js
|-- install.bat
|-- start.bat
`-- stop-services.js
frontend(前端项目)
基于 VitePress 构建的文档站点,包含用户手册、API 文档等内容。
核心目录结构
frontend/
├── .vitepress/# VitePress 配置
│├── config.ts# 站点配置(导航/侧边栏/主题)
│├── navbar/# 导航栏配置(拆分模块化)
│├── sidebar/# 侧边栏配置(按文档分类)
│└── theme/# 自定义主题
│├── components/# 全局组件(如 HighlightText)
│└── Layout.vue# 自定义布局
├── docs/# 文档内容
│├── about/# "关于我们" 分类文档
│└── index.md# 首页
└── public/# 静态资源(图片/图标)
关键文件说明
.vitepress/config.ts
:配置站点标题、导航链接、侧边栏结构等docs/
:所有 Markdown 文档存放目录,支持多级分类theme/components/
:自定义组件目录,可在 Markdown 中直接引用
backend(后端项目)
基于 Node.js 的 API 服务,提供业务接口功能。
核心目录结构
backend/
├── src/
│├── config/# 配置文件(常量/环境变量)
│├── controllers/# 控制器(处理请求逻辑)
││├── greet.controller.js# 示例:问候接口
││└── health.controller.js# 示例:健康检查接口
│├── middleware/# 中间件(CORS/错误处理)
│├── routes/# 路由定义(接口 URL 映射)
│└── utils/# 工具函数(日志/通用方法)
├── Dockerfile# Docker 构建配置
└── package.json# 后端依赖
功能说明
- 控制器:按业务模块拆分,如
greet.controller.js
处理问候相关接口 - 中间件:
cors.middleware.js
处理跨域请求,error.middleware.js
统一错误处理 - Docker 支持:通过
Dockerfile
快速构建后端服务镜像
deploy(部署配置)
包含项目部署所需的 Docker 配置、脚本工具和环境模板。
核心目录结构
deploy/
├── Dockerfile# 整体项目部署镜像配置
├── docker-compose.yml# 多服务编排配置(前端/后端/数据库)
├── default.conf# Nginx 反向代理配置(可选)
└── tools/# 部署辅助工具
├── 7z/# 压缩工具(用于打包资源)
├── plink.exe# SSH 连接工具(Windows)---目前未用到
└── pscp.exe# 文件传输工具(Windows)---目前未用到
关键文件说明
docker-compose.yml
:定义多服务依赖关系,如前端静态服务 + 后端 API 服务build.bat
:Windows 环境下的一键构建脚本(打包 + 部署)tools/
:内置跨平台部署工具,无需额外安装依赖(目前主要用到 7z 压缩工具)
scripts(自动化脚本)
提供项目开发、构建、部署的自动化脚本,简化操作流程。 将相关脚本配置到项目根目录的package.json
命令中,从而实现了通用的命令npm install
等
核心脚本说明
文件名 | 功能描述 |
---|---|
install.bat | 一键安装前后端依赖(Windows) |
build.js | 构建前端文档和后端服务 |
start.bat | 启动本地开发环境(前端 + 后端) |
stop-services.js | 停止所有运行中的服务进程 |