Skip to content
React + Redux + Ts + Antd + Koa + MongoDB 前后端博客网站。兼容移动端
JavaScript TypeScript CSS HTML Shell
Branch: master
Clone or download
Latest commit b547d8d Aug 9, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config 0808 Aug 8, 2019
public 0705 - update start_build.sh Jul 5, 2019
scripts form start_build Jul 4, 2019
src 0809 Aug 9, 2019
.babelrc form start_build Jul 4, 2019
.gitignore form start_build Jul 4, 2019
README.en.md form start_build Jul 4, 2019
README.md Update README.md Jul 5, 2019
package-lock.json form start_build Jul 4, 2019
package.json 0809 Aug 9, 2019
start_build.sh update page:cv Jul 5, 2019
tsconfig.json form start_build Jul 4, 2019

README.md

React+Redux+Ts+Antd+Webpack+Koa 构建个人博客

技术选型:react + redux + antd + ts + webpack + koa
实现效果:个人博客网页展示,兼容移动端

写在前面

  • 身为一名前端er,博客是必须的,这也是写这个项目的初衷。
  • 整个项目分为三个部分:博客前端页面、Koa服务端、博客后台系统。
  • 该项目包含博客前端页面代码,以及Koa服务器代码。博客的后台系统后续逐渐开放。
  • 一直在自己瞎写,功能还很少。欢迎各位给我提意见和建议~ 😊
  • 点这里给我留言

线上预览

https://www.redspite.com

主要功能

博客前端

  • 个人简历展示
  • 文章列表分页
  • 文章详情
  • 访客登陆、登出
  • 留言添加、删除
  • 留言列表分页

Koa服务端

  • 用户账号创建、登陆登出
  • 文章增删改查
  • 留言增删改查
  • 留言关键字过滤
  • 留言被回复时发送邮件通知

后台系统(代码未上传)

  • 管理员登陆登出
  • 文章创建、删除、修改
  • 留言统计、留言关键字过滤
  • 访客统计

技术栈

  • react
  • redux
  • react-redux
  • react-router
  • redux-thunk
  • ant-design
  • typescript
  • webpack
  • Koa
  • MongoDB
  • Mongoose

本地预览

下载

git clone https://github.com/Redspitee/React_Koa_Blog.git

博客前端运行

yarn install  

yarn start 

服务器运行

cd server

yarn install  

node index

项目截图

简历截图

文章截图

留言截图

文件结构

BLOG
│  .babelrc
│  .gitignore
│  package-lock.json
│  package.json
│  README.en.md
│  README.md
│  tsconfig.json
│  yarn.lock
│  
├─config
│  │  env.js
│  │  paths.js
│  │  webpack.config.js
│  │  webpackDevServer.config.js
│  │  
│  └─jest
│          cssTransform.js
│          fileTransform.js
│                
├─public
│  │    favicon.ico
│  │    index.html
│  │    manifest.json
│  └─uploads
│      
├─scripts
│      build.js
│      start.js
│      test.js
│
├─server
│  ├─db
│  ├─routers
│  ├─utils
│  └─www
│      ├─static
│      │  ├─css
│      │  ├─js
│      │  └─media
│      └─uploads      
└─src
    │  bg.jpg
    │  declare_modules.d.ts
    │  font.less
    │  index.less
    │  index.tsx
    │  react-app-env.d.ts
    │  serviceWorker.ts
    │  
    ├─api
    │      api.js
    │      
    ├─components
    │  ├─Bjq
    │  │  │  bjq.less
    │  │  │  Bjq.tsx
    │  │  │  
    │  │  ├─CommentList
    │  │  │      commentlist.less
    │  │  │      CommentList.tsx
    │  │  │      
    │  │  └─img
    │  │          icons.png
    │  │          
    │  ├─Bottom
    │  │      bottom.less
    │  │      Bottom.tsx
    │  │      
    │  ├─Gotop
    │  │      gotop.less
    │  │      Gotop.tsx
    │  │      top.png
    │  │      
    │  ├─Header
    │  │      header.jpg
    │  │      header.less
    │  │      Header.tsx
    │  │      
    │  ├─List
    │  │      list.less
    │  │      List.tsx
    │  │      pic.jpg
    │  │      
    │  ├─Music
    │  │      bgm.mp3
    │  │      music.less
    │  │      music.png
    │  │      Music.tsx
    │  │      
    │  └─Toast
    │          toast.less
    │          Toast.tsx
    │          
    ├─containers
    │  ├─Comments
    │  │      Comments.tsx
    │  │      
    │  ├─Cv
    │  │      cv.less
    │  │      Cv.tsx
    │  │      
    │  ├─Detail
    │  │      content.txt
    │  │      detail.less
    │  │      Detail.tsx
    │  │      
    │  └─Home
    │          Home.tsx
    │          
    ├─reducer
    │      artical.redux.js
    │      comment.redux.js
    │      index.js
    │      user.redux.js
    │      
    └─routers
            routers.js
You can’t perform that action at this time.