Skip to content

yinMrsir/node-forge-cms

Repository files navigation

NodeForgeCMS

企业级现代化内容管理系统 | Enterprise-grade Modern Content Management System

Nuxt Vue Node.js TypeScript MySQL License


NodeForgeCMS 是基于 Nuxt4 + Node.js + MySQL 打造的现代化企业级内容管理系统(CMS),聚焦企业官网、产品展示、内容门户、多语言站群核心场景。

融合现代前端工程化架构与轻量化运营体验,兼顾灵活的栏目管理、高规格SEO优化、全链路多语言、高效二次开发、AI智能搜索与翻译能力,既让非技术人员能便捷管理内容与栏目,又为开发者提供现代化、高扩展性的技术架构,完美替代传统老旧CMS。

适用于:企业官网搭建 / 产品展示系统 / 内容门户 / 多语言站群 / 营销落地页 / 博客系统

Suitable for: Corporate Website / Product Showcase / Content Portal / Multi-language Site Network / Landing Page / Blog System

核心优势

  1. 灵活栏目管理,动态路径按需配置

    支持后台自定义栏目分类、配置专属访问路径(urlkey),栏目与页面逻辑解耦,新增、修改栏目无需调整前端代码,一键生效,快速适配企业业务板块迭代。

  2. Nuxt4原生架构,SEO与访问体验双优

    基于Nuxt4实现SSR/SSG双渲染模式,服务端渲染保障搜索引擎抓取友好,静态预渲染实现页面秒开,从底层解决传统CMS前端老旧、加载慢、SEO差的核心痛点。

  3. 全链路多语言支持,一站覆盖海内外

    内置21种语言、多语言动态路由、内容按语言隔离管理,无需多站部署,一套系统即可搭建国内官网与海外多语言站点,降低跨境运营成本。

  4. 前后端解耦,生产级稳定与易迭代

    采用前后端分离架构,后台管理与前端展示相互独立,功能迭代、样式更新不影响线上业务;内置数据校验、接口防护机制,保障系统安全稳定运行。

  5. 低门槛运营,高自由度开发

    后台可视化管理内容、栏目、权限,非技术人员可快速上手;全栈现代化技术栈,模块化架构设计,支持开发者高效二次开发与功能定制,兼顾运营与开发效率。

  6. AI 智能搜索,精准内容检索

    内置 AI 驱动的智能搜索功能,支持语义理解和上下文匹配,用户可通过自然语言描述快速定位所需内容,大幅提升内容检索效率和用户体验。

  7. AI 语言翻译,全球化内容覆盖

    集成 AI 语言翻译能力,支持多语言内容自动翻译与本地化,配合系统内置的多语言架构,实现内容的全球化快速分发,降低跨国运营成本。

技术亮点

  • 核心技术栈:Nuxt4 + Nitro + Vue3 + TypeScript + MySQL,全栈类型安全、生态完善、开发效率高
  • 渲染能力:SSR/SSG/CSR自由切换,适配不同场景的SEO与部署需求,首屏加载速度拉满
  • 路由机制:文件系统路由+动态路由重写,支持栏目自定义访问路径,灵活适配各类业务路径规划
  • 多语言架构:多语言字段设计+国际化路由,原生支持多语言内容管理与访问,无需额外开发
  • 部署友好:支持静态打包、Node服务部署、容器化部署,适配常规服务器、云平台等各类部署环境
  • AI 能力集成:内置 AI 智能搜索与语言翻译接口,支持语义检索、多语言内容翻译等智能化场景
  • 扩展特性:模块化设计+完善权限系统+开放API,支持插件开发、功能定制与业务系统无缝集成

功能特性 | Features

类别 功能描述
栏目管理 自定义栏目分类、动态URL配置、栏目与页面解耦
SEO优化 SSR/SSG双渲染、Meta标签管理、结构化数据支持
多语言 多语言字段存储、国际化路由、内容按语言隔离
AI功能 AI智能搜索、语义理解、AI语言翻译、内容本地化
权限系统 角色管理、权限控制、操作日志
API接口 RESTful API、开放接口、支持二次开发
部署方式 静态导出、Node服务

在线体验(网络带宽有限,请耐心等待 🍵)

使用前

如未安装nodemysql数据库和redis请先自行安装。node20.x,mysql8.x,redis7。

mysqlredis配置你可以到server/nuxt.config.ts进行配置。你也可以创建一个server/.env文件

DATABASE_USERNAME=root
DATABASE_PASSWORD=123456
DATABASE_HOST=127.0.0.1
DATABASE_PORT=3306
DATABASE_DB=node_forge_cms

JWT_SECRET=node_forge

REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_USERNAME=
REDIS_PASSWORD=
REDIS_DB=5

SERVER_HOST=http://127.0.0.1:3000
IMG_HOST=http://127.0.0.1:3000
# 用户发送邮件的邮箱
FORM_USER_EMAIL=
# 用户发送邮件的邮箱密码
FORM_USER_EMAIL_PASSWORD=
# 使用 Gmail 服务,你可以使用其他服务,如 'QQ'
USER_EMAIL_SERVICE=QQ

注意: mysqlredis的端口号,用户名,密码,数据库名称,jwt 加密密钥等配置信息,请自行修改。

数据库初始化

  1. 先到数据库目录下,创建数据库node_forge_cms
  2. 导入数据库文件server/node_forge_cms.sql

本地开发

服务端和用户端同时启动

cd server
pnpm install
pnpm dev

启动成功后,请访问:http://localhost:3000

管理端启动

cd admin
pnpm install
pnpm dev

启动成功后,请访问:http://localhost:4000, 用户名:admin,密码:admin123

部署

构建管理端

执行以下命令会生成dist目录,可通过nginx指定到目录。

cd admin
pnpm isntall
pnpm build:prod

构建服务端和用户端

cd server
pnpm isntall
pnpm build

构建完成后,可通过 pm2 进行部署,未安装的可执行npm install -g pm2安装

执行以下命令启动服务:

cd server && pm2 start pm2.config.cjs

nginx 配置如下:

server {
    listen 80;
    server_name your.domain.com;

    location / {
        proxy_pass http://127.0.0.1:3000/;
    }
    location /uploads {
        alias /path/to/NodeForgeCMS/server/uploads;
    }
}

server {
    listen 80;
    server_name your-admin.domain.com;

    location / {
        root  /path/to/NodeForgeCMS/admin/dist;
        index index.html;
        try_files $uri $uri/ /index.html;
    }

    location /api/ {
        proxy_pass http://127.0.0.1:3000/api/;
    }
}

Nuxt 项目部署文档:https://nuxt.com/docs/getting-started/deployment

注意

如果你需要使用pnpm run generate生成静态文件部署。请先移除nuxt.config.ts中的nuxt-api-shield模块再执行此命令生成静态页面。

有任何疑问可添加微信

About

NodeForgeCMS 是基于 Nuxt4 + Node.js + MySQL 打造的现代化企业级内容管理系统,聚焦企业官网、产品展示、内容门户、多语言站群核心场景,融合现代前端工程化架构与轻量化运营体验,兼顾灵活的栏目管理、高规格SEO优化、全链路多语言、高效二次开发、AI智能搜索与翻译能力,既让非技术人员能便捷管理内容与栏目,又为开发者提供现代化、高扩展性的技术架构,完美替代传统老旧CMS。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors