GithubHelp home page GithubHelp logo

hhy5277 / koa2-blog-2 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hezhongfeng/koa2-blog

0.0 1.0 0.0 21.83 MB

第一个web项目,仿照cnode,欢迎新建账号试用

JavaScript 39.36% CSS 3.86% HTML 56.78%

koa2-blog-2's Introduction

koa2-Blog

issues stars forks juejin

  • 线上体验
  • 欢迎新建账号试用,有问题直接提issue,因为部署在heroku上面速度不会快

简要说明

  1. 在学习Qt中QML的时候接触了JavaScript,后来知道可以用node做网站就有了一个想法,学习制作一个网站。公司的业务也是这方面的,自己独立制作会给我很大的帮助
  2. 选择做什么类型网站的时候,选择做一个简单的博客类网站,模仿对象是cnode
  3. node框架选择的时候选择了Koa2,因为比较新,也有很多人说是未来的趋势

涉及到的技术问题

  • 使用ES7的Async/Await,避免回调地狱
  • 模板引擎使用的ejs,因为比较简单,html也不熟
  • 数据库使用的mysql,ORM使用的sequelize
  • 前端框架使用的Semantic UI

功能

  1. 新建、登录账户
  2. 账户基本信息设置,包括头像
  3. 发表主题文章
  4. 在文章下面回复,@别人进行回复,在别人回复下面直接回复
  5. 积分、积分系统
  6. 使用爬虫做的DOTA2比赛预告信息

我做的时候涉及到的问题点

  1. 文件上传时寻找合适的 body 解析包,后来找到koa-better-body,其他的包可能是我没用明白
  2. 前端UI框架使用的Semantic UI因为,nswbmw写的教程里面使用的它,当时还不知道别的UI框架
  3. 写主题文章时想找比较好的markdown前端UI,最喜欢的是segmentfault上的,后来使用的Houfengmditor也挺不错的
  4. 头像上传用的cloudinary,现在估计会使用七牛云了
  5. 上传头像进行剪裁的库使用的cropper
  6. 爬虫使用的是cheerionode-schedule非常简单,这里爬的DOTA2的比赛时间表,同时为了防止heroku休眠,我把自己的网站给爬了,因为可以唤醒......
  7. 实现at某用户时参考cnode的源码使用的atwho,然后后台读取数据时将@xx 替换成符合markdown的链接的格式
  8. heroku是个好东西,git远程更新完就自动运行,同时提供了mysql和很多别的数据库

感谢

  1. 感谢koa2-easy这个框架,是在此基础上做的很多功能的添加
  2. 感谢nswbmw大神的几个项目,我都学习了很多
  3. 感谢cnode网站,在上面问了很多问题,有很多好心人照顾我这个小白
  4. 最后感谢各种包的作者,他们孜孜不倦的更新维护才能让我们拿来就用

截图

注册

注册

登录

登录

首页

首页

发布文章页

发布

查看文章页

查看

未读消息

消息

设置

设置

koa2-blog-2's People

Contributors

hezhongfeng avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.