Meeken 的杂物间

14 object(s)
 

全栈小组

全栈小组是一款技术文章展示小程序,包含 frontend(小程序端) 与 server(服务端)两部分,前后端均已开源。

全栈小组

全栈小组是从零搭建的技术文章展示小程序。不仅支持浏览各类 Web 开发知识,还可以在线查阅 MDN Web 文档,是 Web 全栈程序员学习成长的好帮手。


功能

部署

小程序端(Frontend)

安装

$ git clone https://gitee.com/full-stack-group/frontend.git

你需要先注册一个非个人版的小程序,以支持使用 <webview></webview> 组件。也可以使用个人版开发资质,但需要删除 MDN 的部分功能。文章阅览功能不受影响,因为它基于内置的 markdown 引擎而非网页

MDN 文档功能也不是简单的网页跳转,我们做了一些工作(不是反向代理),使尚未备案的 MDN 网页能在小程序中正常浏览,并剔除了无用的导航栏和其他组件,使用户能更专注于学习。具体实现请看 server。

服务端(server)

安装

$ git clone https://gitee.com/full-stack-group/server full-stack-server && cd full-stack-server
$ yarn

值得一提的是,全栈小组的服务与 typecho 博客服务完成了互通,包括:账号、文章、分类、评论等功能。也就是说,你可以用 typecho 自带的后台来管理文章、评论和用户了。

我们使用 node-phpassjsonwebtoken 来鉴权,并保证 API 安全和可用,你可以查看具体实现

启动

全栈小组服务依赖 pm2,它可以让服务持续运行下去,请先安装。当然,你也可以选择 forever 等其他服务管理工具。

$ pm2 start index.js

服务将默认运行在 3000 端口,如需修改配置,请看 src/config/server.json

{
  "service": {
    "host": "127.0.0.1",
    "port": 3000
  },

  "mysql": {
    "host": "YOUR_HOST",
    "user": "YOUR_USERNAME",
    "password": "YOUR_PWD.",
    "database": "YOUR_DATABASE"
  },

  "authorization": {
    "jwt": "YOUR_JWT_SECRET"
  }
}

界面展示

首页

MDN 手册

文章浏览

在线做题

我的

感谢

欢迎贡献代码和提 issue!

感谢 @rookieDJ 为全栈小组添加了 RSS 订阅模块。如果这个小项目对你对工作有帮助,请动动小手点个 star。