用 React 做了一个简易的 markdown 博客应用

2019-04-03 03:35:06 +08:00
 aesen321

Write Down

一个使用 React 编写的、基于 markdown 的博客应用。

项目 Github / Demo
提示:Write Down 对手机的兼容性不是太好,请尽量在电脑或者平板上进行体验

截图

文章列表页

文章阅读页

列举几个本人觉得比较不错的功能

更多内容,请到README.md进行了解


项目背景介绍

这个项目,我做了 4 个多月,差不多 5 个月吧(我原来有 ES6,CSS 的基础,看完 React 的文档后开始做,中间用了三周时间去学习 Redux,其他时间是边查边学边做,这里用到的第三方库、工具绝大部分以前都没用过的,webpack 以前写过一些简单的配置,这些在 create-react-app 里都是配好的,不用手写配置。)。

开发过程流水账:
从零开始配置文本编辑器( code mirror ),选用 markdown parser ( markdown-it ) 的插件,找来 github-markdown.css 文件,找合适的 code block 代码高亮的配色主题(替换 github-markdown.css 代码块配色),自己调 markdown 编辑器的配色主题( code mirror 的配色主题)。之后围绕编辑器做功能,文章其他信息的表单(标题,摘要,标签),题图的设置(使用 Unsplash API,通过流量申请),文件导出( FileSaver.js )等。设计文章列表页,文章阅读页(选用文章字体,最后找到了 Medium 用的字体)。用上 redux 管理数据,使用 PouchDB 做本地存储(了解原理,设计存储结构,需要建立哪些索引,它跟 mongoDB 有点区别的)。开始做文章的保存,假的用户登录系统。花时间最长的应该如何用 Redux 管理数据,至少重构了两次吧。

这个项目大概在一个多月前已经完成了,之后我跑去复习,准备面试。最近几天,修复和完善了一些功能。

还有一些不足的地方:

主要是出于工作量的考虑,没有做 server。如果加入了 server 的话,就变成了一个供多人使用真正的博客系统,会类似于简书或者 Medium,那样要考虑的东西太多了,比如完整的用户系统,首页的文章流,文章搜索,评论系统等。

如果有人真的感兴趣的话,那可以考虑考虑。


欢迎各位留言,交流学习讨论

如果觉得它有点意思的,给个 star 呗

3039 次点击
所在节点    分享创造
8 条回复
CasualYours
2019-04-03 08:12:39 +08:00
顶一下
kyuuseiryuu
2019-04-03 08:20:17 +08:00
什么语言无所谓,博客这东西,做到最后都是在玩 CSS
way2explore2
2019-04-03 08:38:01 +08:00
有意思,想把这个和我的后端项目结合起来。
tianyu94
2019-04-03 08:41:17 +08:00
支持下
aimerforreimu
2019-04-03 14:17:45 +08:00
cool,考完研想用想给它用 go 写个后端
aesen321
2019-04-03 16:04:46 +08:00
KeroZhai
2019-04-04 09:34:42 +08:00
已 star 后端狗不明觉厉 准备和前端女朋友一起向大佬学习
hk3475
2019-04-04 15:24:42 +08:00
点个赞 样式调的不错

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/551498

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX