Translated by Google into: English繁體中文French日本語

全栈小组 - 面向 offer 的知识分享小程序

2019-11-25 17:04

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

全栈小组

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

功能

  • 首页
    • 文章列表
    • 文章搜索
    • 分类查询
  • MDN
    • API 列表
    • API 搜索
  • 文章
    • Markdown 渲染器
    • 代码高亮
    • 阅读进度条
    • 锚点跳转
    • 收藏
  • 我的
    • 登录
    • 足迹
    • 收藏

部署

小程序端(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。

创建时间:2019-11-25 17:04

项目地址:https://gitee.com/full-stack-group

分类:项目小程序koa