日记本功能点记录

用过一些写日记的APP,发现有一些问题是我难以忍受的。

  1. 数据存储在别人服务器里,不知道人家会拿来做些什么
  2. 不知道这个公司什么时候就倒闭了,关闭服务器了。那么我的日记内容该怎么办?
  3. 还是关于数据,不好备份,没自动备份

现在是使用Typecho加上自己写的插件(使网站必须登录才能访问)来写日记,在能用的程度上来说,是没问题的,只是有些不满意的地方,比如要写标题,没有自动备份。现在是利用脚本来实现的备份。

那么,如果尝试自己写一个程序呢?而且我希望这个程序还能让别人能轻松安装使用,可以在所有设备运行,如果都写客户端的话,成本太大,我一个人做不来,那就做成网页吧,也是我现在主攻的方向,前端。网页的话,在哪里都可以打开,如果可能的话,会做成支持PWA的应用。

为了可扩展性,并且为了开源后可能有人想换肤,那样的话,自己实现前端就行了,所以采用前后端分离

在开始写代码之前,要先想好要做些什么功能,然后再选定技术栈。

基础功能

因为日记是一种私密的东西,所以我一开始是想做成必须登录才能进入网站的,但是有可能有些同学不介意展示给别人,那么我想做个开关好了。

下面是对于基础功能的构思,这样做界面设计的时候才好下手,先分成几大点

写/编辑日记

  • 有些朋友包括我,会用博客系统来写日记,那样的话,就要写标题,想标题是一件很痛苦的事,所以我决定这个日记本就不需要写标题,直接写内容
  • 基本的日期时间选择器要有
  • 天气我觉得没必要单独拎出来,如果说因为天气影响心情的话,一般都会写在正文里。
  • 还要有个标签功能,方便日后好索引,也能一定程度上统计自己的心情什么的
  • 编辑器的话,还是使用Markdown来做,足够简单,可以实现一些基础的效果,比如查看图片,加粗,斜体,列表等等
  • 关于插入多媒体文件,因为文件的储存比较大,备份起来也麻烦,所以决定不做,实在想插入可以在markdown里面插入的。

日记列表

  • 关于列表分页,大致两种,一种是自动下一页,还有一种是手动翻页,前者会更简单,但是只能从第一页开始慢慢来,我个人有时候喜欢随便打开一页,然后读某一篇日记。那么最终决定做成手动翻页的。
  • 关于列表的数据,因为是采用前后端分离,那么为了可扩展性,这个列表接口应该要做成超级详细那种,能返回:时间、标签、正文全文。请求的参数也要够详细,可以指定:日期范围、一页多少条数据、第几页、关键字搜索、标签筛选。

删除日记

查看日记详情

时间轴归档

高级功能

在完成基础功能后,就需要做高级功能了,当然,这里的功能是必须要做的。

自动备份

仅有 1 条评论
  1. CyJay CyJay

    first blood

添加新评论