V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
wmui
V2EX  ›  分享创造

六年前写的老项目,肝了一版更新

  •  
  •   wmui · 2023-06-29 19:55:00 +08:00 · 2149 次点击
    这是一个创建于 524 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前言

    Essay 新版本终于肝完了,这是我 17 年写的一个项目,本来都不打算更新了,只是最近在使用第三方平台写笔记的时候被恶心到了,想迁移文章发现也很费劲,就想着还是整一个自己喜欢的吧,于是就又捡起来了。

    新版本做到了即使完全不懂技术也可以使用的简单程度,图形化配置安装,这相对于之前的版本是一次进步和尝试。

    在技术上,这次也做了各种取舍,为了保证整体的写作体验和浏览体验,前端没有使用类似 Vue 、React 这种框架,也没有使用 Jquery ,只引入了必要的库和一个极小的 UI ,使用传统方式渲染。

    在数据库上选择上,使用了更为轻量的 SQLite ,这也是尝试了各种数据库后的折中选择。

    静态资源的存储,放弃了使用 CDN ,转而使用最基础的本地存储。

    可以说这次更新,除了必要的开发依赖,做到了尽可能不依赖第三方服务。本次更新完成后,我也把散落在各个平台的笔记全部迁移过来了。

    安装步骤

    安装前请确保本地的Node版本大于 16 ,本机已安装sqlite

    # 下载项目
    git clone https://github.com/wmui/essay.git
    # 安装依赖
    yarn install # or npm install
    # 启动项目
    npm run start
    

    项目启动后,访问http://127.0.0.1:7001/install,进入安装界面:

    enter image description here 转存失败,建议直接上传图片文件

    点击下一步,设置管理员密码:

    enter image description here 转存失败,建议直接上传图片文件

    点击完成设置,安装就完成了,超简单

    enter image description here 转存失败,建议直接上传图片文件

    开始写作

    enter image description here 转存失败,建议直接上传图片文件

    极致的 markdown 写作体验,在功能设计上,只提供了必要选项。

    可以把重要文章置顶,同时可以选择在导航栏显示文章,这样文章就相当于单页了,使用 markdown 设计出不同的展示页面,比如“关于我们”。

    草稿箱的设计不仅用于放草稿,之前的版本我有设计公开分类和私有分类功能,这次全部割掉了,用草稿箱代替私有文章。

    标题输入框也被我割掉了,会自动读取内容的第一个h1 - h6标签作为标题,为的是沉浸式写作体验。

    文章提供自动保存功能,在写作过程中无需担心内容丢失。

    功能说明

    这次更新相比于之前的版本,阉割掉了很多功能,可以说越更新功能越少,但已有的功能也相对的灵活了很多。整个设计一共就三张表,后面也不会加了,单用户博客,后面也不会改成多用户。

    没有前后台的设计,管理员和游客看到的页面是一样的,编辑和删除在文章详情页完成。

    enter image description here 转存失败,建议直接上传图片文件

    评论功能也去掉了,加了一个留言板。

    enter image description here 转存失败,建议直接上传图片文件

    必要的修改项统一放到设置里面

    enter image description here 转存失败,建议直接上传图片文件

    结语

    这个项目一直是作为技术实践的,因为功能简单,所以代码阅读和重构都很简单。如果这个项目对大家学习有帮助,或者只是单纯的对使用到的技术感兴趣,希望能点个小小 star 。

    github: https://github.com/wmui/essay 预览:https://ppx.link

    以上,感谢阅读!

    7 条回复    2023-06-30 16:01:54 +08:00
    dashupc
        1
    dashupc  
       2023-06-29 20:18:46 +08:00
    真的很不错
    iwolfor
        2
    iwolfor  
       2023-06-29 21:35:24 +08:00
    要是能集成一些主题就更好了?能否使用 hexo 主题?
    hanguofu
        3
    hanguofu  
       2023-06-30 06:16:38 +08:00
    精简得很好~ 请问有没有可能增加一个类似账户管理的功能,保证不同的账户之间的内容完全隔离并加密 ?
    wmui
        4
    wmui  
    OP
       2023-06-30 11:31:00 +08:00
    @iwolfor 没研究 hexo ,但是自己写主题是可以的,很简单,我在开发的时候考虑这一点,不过还没完善文档
    wmui
        5
    wmui  
    OP
       2023-06-30 11:34:06 +08:00
    @hanguofu 这个博客是单用户的,所以没有注册功能。你说的这个更像 CMS ,我前段时间在开发,但感觉这种成熟的系统已经很多了,就开发到一半放弃了🤣
    wmui
        6
    wmui  
    OP
       2023-06-30 11:35:14 +08:00
    @dashupc 谢谢😁
    wmui
        7
    wmui  
    OP
       2023-06-30 16:01:54 +08:00
    添加了一下 PWA 支持,写作体验上升一大截,哈哈 https://ppx.link/post?id=6e0b1c1426e
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5928 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 02:20 · PVG 10:20 · LAX 18:20 · JFK 21:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.