All Projects → lfb → nodejs-koa-blog

lfb / nodejs-koa-blog

Licence: MIT license
基于 Node.js Koa2 实战开发的一套完整的博客项目网站

Programming Languages

javascript
184084 projects - #8 most used programming language
EJS
674 projects

Projects that are alternatives of or similar to nodejs-koa-blog

Cool Admin Api
cool-admin-api 是基于egg.js、typeorm、jwt等封装的api开发脚手架、快速开发api接口
Stars: ✭ 188 (-88.33%)
Mutual labels:  koa, koa2, element-ui
Hare
🐇 Application boilerplate based on Vue.js 2.x, Koa 2.x, Element-UI and Nuxt.js
Stars: ✭ 258 (-83.99%)
Mutual labels:  koa2, nuxtjs, element-ui
Vue Family Bucket Ssr Koa2 Full Stack Development From Meituan
🚀🚀2020最新Vue全家桶+SSR+Koa2全栈开发☁
Stars: ✭ 100 (-93.79%)
Mutual labels:  koa, nuxtjs, element-ui
mtapp
💫 💫 Vue全家桶(配Nuxt)+ssr服务器渲染+koa2 打造美团App项目(还在更新...)📦
Stars: ✭ 30 (-98.14%)
Mutual labels:  koa2, nuxtjs
Sactive Web
🚀 A dependency injection web framework for Node.js.
Stars: ✭ 143 (-91.12%)
Mutual labels:  koa, koa2
Vue Webpack Config
Koa2、Webpack、Vue、React、Node
Stars: ✭ 151 (-90.63%)
Mutual labels:  koa, koa2
Postgraphile
GraphQL is a new way of communicating with your server. It eliminates the problems of over- and under-fetching, incorporates strong data types, has built-in introspection, documentation and deprecation capabilities, and is implemented in many programming languages. This all leads to gloriously low-latency user experiences, better developer experiences, and much increased productivity. Because of all this, GraphQL is typically used as a replacement for (or companion to) RESTful API services.
Stars: ✭ 10,967 (+580.76%)
Mutual labels:  koa, koa2
Blog Service
blog service @nestjs
Stars: ✭ 188 (-88.33%)
Mutual labels:  koa, koa2
Github Ranking
🔍GitHub不同语言热门项目排行,Vue.js做页面展示
Stars: ✭ 160 (-90.07%)
Mutual labels:  koa, koa2
Egg Core
A core Pluggable framework based on koa.
Stars: ✭ 194 (-87.96%)
Mutual labels:  koa, koa2
Strapi Sdk Javascript
🔌 Official JavaScript SDK for APIs built with Strapi.
Stars: ✭ 247 (-84.67%)
Mutual labels:  koa, koa2
koa-xml-body
koa middleware to parse xml request body
Stars: ✭ 36 (-97.77%)
Mutual labels:  koa, koa2
Koa Proxies
a [email protected] proxy middleware
Stars: ✭ 125 (-92.24%)
Mutual labels:  koa, koa2
Koa Hbs
Handlebars templates for Koa.js
Stars: ✭ 156 (-90.32%)
Mutual labels:  koa, koa2
Koalerplate
Simple Koa Boilerplate for APIs
Stars: ✭ 118 (-92.68%)
Mutual labels:  koa, koa2
Koa Webpack Middleware
webpack dev&hot middleware for koa2
Stars: ✭ 215 (-86.65%)
Mutual labels:  koa, koa2
koa-mongoDB
😊😊Koa and mongoose build services
Stars: ✭ 24 (-98.51%)
Mutual labels:  koa, koa2
Blog2.0
基于Nuxt(ssr)+Vuetify+elementUi+nodeExpress+mongoDb的个人博客全栈项目
Stars: ✭ 20 (-98.76%)
Mutual labels:  nuxtjs, element-ui
Chatroom
vue2聊天室,图灵机器人,node爬虫
Stars: ✭ 103 (-93.61%)
Mutual labels:  koa, koa2
Strapi
🚀 Open source Node.js Headless CMS to easily build customisable APIs
Stars: ✭ 41,786 (+2493.79%)
Mutual labels:  koa, koa2

logo

一、项目介绍

我们这个项目就是完成一个完整的博客项目,包含服务端接口API,管理后台,前端网站,以及部署上线流程。为了项目更好的区分,这个项目主要介绍使用 Node.js Koa2 框架开发一套完整的服务端接口 API 项目,另外的项目请点击以下:

1.1.项目模块

使用精小而强大的 Node.js Koa2 框架做服务端 API 接口,非常适合想用 Node.js Koa2 做服务的朋友,相信你一定能学到知识。

  • 管理员模块
    • 实现权限管理,能够对其他模块进行增删改查权限
    • 登录注册模块,登录管理后台
  • 用户模块
    • 实现在前台博客网站中登录注册
  • 文章模块
    • 实现文章的新增,修改,删除,查询
    • 文章进行对分类,评论,回复关联
  • 分类模块
    • 实现分类的新增,修改,删除,查询
    • 实现分类与文章进行关联
  • 评论 / 回复模块
    • 实现评论 / 回复的新增,修改,删除,查询
    • 实现评论 / 回复与文章进行关联

1.2.接口文档

记录和完善接口文档是一个良好的习惯,接口文档放在 doc 目录下,比如管理员的接口文档:https://github.com/lfb/nodejs-koa-blog/blob/master/doc/admin.md

1.3.项目展示

二、使用项目

2.1.克隆项目

首先使克隆项目,然后进入项目根目录使用命令安装包,最后命令启动项目,代码会根据模型自动创建数据库表的。

# 克隆项目代码

git clone https://github.com/lgb/nodejs-koa-blog.git

2.2.项目架构

拉取代码下来后,简单说明一下项目架构,我们简单熟悉一下,目的是为了了解清楚每个文件夹有什么作用的,好的代码结构并不仅仅是为了看上去清晰,它更像是我们对一个系统的拆解和组装。

.
├── _tests 单元测试
├── app *重点, 项目工程入口
    ├── api 接口
    ├── dao 数据存取对象(Data Access Objects)
    ├── lib 工具库
    ├── models 建模,把业务逻辑映射成数据模型
    ├── service 数据处理
    └── validators 数据验证
├── app.js 入口文件
├── config 配置文件
├── core 核心公共工具库
├── doc 接口文档
├── jest.config.js  测试配置文件
├── middlewares 中间件
├── package-lock.json
├── package.json
└── yarn.lock

2.3.创建数据库

启动项目前一定要在创建好 boblog 数据库,如果你还没安装上数据库,请点击MySQL 下载,请在根目录下的 |——config/config.js 文件下修改您本地的数据库名字(boblog)和数据库密码 ( password )。以下是执行数据库命令:

# 登录数据库

mysql -uroot -p (回车然后输入你的本机数据库密码)

# 创建 boblog 数据库

CREATE DATABASE IF NOT EXISTS boblog DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

2.4.启动项目

以下是启动服务端项目的操作命令:

# 进入项目根目录

cd nodejs-koa-blog

# 安装依赖包

npm install 或者 yarn install

# 启动 Node.js Koa2 项目

npm run dev 或者 yarn dev

API 端口默认是 5000,打开浏览器输入回车:http://localhost:5000 可以看到浏览器返回数据,可以查看目录下的 ./app/api/v1 下的接口或者看 doc 目录下的 markdown 接口文档,在 postman 测试接口。

Postman 下载地址:https://www.postman.com/downloads/

三、FAQ

  1. 没有yarn环境,npm 可以吗?

答:可以的,建议使用 yarn,yarn 比 npm 速度快,主要是安装版本统一。

  1. 启动 Koa2 项目报错,请问原因?

答:首先,请检查一下使用 npm 或 yarn 安装依赖包没。然后,再请检查一下确保安装好数据库,新建好数据库:boblog,请看上面的数据库配置。最后看下启动打印日志是否有报错的信息。

  1. ... 更多问题请到 Issues查阅,或者有问题请到 Issues 提问

License

MIT, by LFB

喜欢或对你有帮助的话,请你点一个星星 star 鼓励我,或者您有更好的建议和意见,请提出来告知我,可以留言 Issues。希望能够帮助到你学习!Thanks!共勉!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].