Azalea - 一个全新的现代博客/个人站点系统(构思阶段)

2019-05-20 21:55:07 +08:00
 pluvet

废话不多说, 你可以直接看下一个标题

目前的博客存在的问题:

  1. Hexo, Ghost, Hugo 等静态博客: 不能在线编辑, 不能手机编辑. 对于非专业人群难以快速实现搭建. 维护难度大.
  2. Wordpress, Typecho: 没有完整 API, 同时不支持文集, 动态, 相册等刚需, 除此之外, 前者还过于, 后者则官方文档不明, 开发者必须阅读源码才能深入开发, 增加了开发难度, 而主题制作者能利用的接口太少, 一般情况下所有额外功能都只能塞在一个 function.php 文件.

总之, 现有的博客程序,

特性(你可以只看粗体字)

上面的各种模块, 主题, 插件各自独立, 使用者可以抽取需要的, 在简洁的基础上完成特定需求.

后话

已经筹备良久, 预计七月正式开始开发. 当然, 这个项目的难度非常大, 正式版本的推出时间至少要一两年, 也随时有弃坑的可能性.

相关信息将在Azalea.moe和 QQ 群 107349757 进行更新. 欢迎关注. 也欢迎提出建议.

最后如果觉得不错, 请点个赞, 这将成为这个计划是否实施的决定性因素 因为如果预料到用的人不会多的话, 我只能开发我需要的部分, 只集成我个人需要的功能.

8682 次点击
所在节点    奇思妙想
70 条回复
hcs66
2019-05-21 13:50:47 +08:00
Writeathon 也在考虑提供开源版本,这方面经验不足,可以探讨下
附介绍: https://www.writeathon.cn/share/5c0df586e893e179e9f944dd
pluvet
2019-05-21 14:04:34 +08:00
@hcs66 试用了一下,UI 比较美观,编辑界面样式不错,比 VSCODE 美观好用,书写体验很不错。但是没有 stackeditor 和 typora 直观。比较特色的一点是个人主页和分享功能,目录大纲漂亮,还可以导出,让用户更放心。

以后希望能考虑和我们合作,实现一些像是直推到博客的之类的功能。
alan0405
2019-05-21 15:00:15 +08:00
给客户一个空间,让他自己写
woahishui
2019-05-21 15:33:50 +08:00
楼主的意思是让客户选择一个随时可能被放弃的程序用到自己的公司中,脑子瓦特掉了
woahishui
2019-05-21 15:35:20 +08:00
如果一个客户连一年的空间费用都要考虑,那你的意思是大家都要跟着你给这些吝啬到极点人提供安心的服务了
huiyadanli
2019-05-21 15:40:04 +08:00
既然前后端完整分离,且语言不限制的话,先出一个 API 的设计与约定吧。。
woahishui
2019-05-21 15:42:11 +08:00
有很多人很奇怪,说是做项目积累经验,以后可以找到好工作,我希望大家真正体会积累的意思,希望大家积累项目而不是项目经验,项目永远是你的,即使别人否定了他也是你的,但如果你只积累经验,被否定你剩下的只有。。。。
pluvet
2019-05-21 15:48:55 +08:00
@woahishui 你是个聪明人
cifermail
2019-05-21 15:54:52 +08:00
也遇到过题主的问题,觉得想法很好,不过难以落地。
1. 首先开发量很大,做这个的目的是什么,毕竟时间比金钱还贵,这么做能获得什么样的收益?
2. 支持前端自由模板,后端自由语言,这个想法非常好。前端可以让用户选一些默认模板,后端如果让用户自己写的话,是不是对用户会有一点要求,这与先前的 30s 搭建完成有冲突。那就相当于要有一个默认后端语言开发好的东西,而自由后端语言只是扩展,这个 RESTFUL 也只是扩展下的一个标准( PS:好奇为什么用 RESTFUL 而不是 GraphQL ),然后,自己能写后端与前端的用户,已经可以随意的订制个人博客了,本人博客就是自己订制的。
3. 支持在线公式、图形,这个应该是亮点了,这个难度较大。
4. 代码高亮,这是个难题,十有八九还是可能会选择一个现成的库。
5. 对于新手是否需要一个富文本? 如需,也是一个麻烦,这是个大坑。
6. 如何让博客不是孤岛,这些博客都是用户自己安装到自己的服务器上了,本来就是独立的。话说,买域名,域名解析,买服务器( wall 外),配置搭建难以一键化,新手搞上一天都有可能。如果完成做成注册制写死的话,又不自由了,只要数据库与代码不在用户手上,都是不自由的。
7.上面有人说了,从 api 拉取数据自定义解析成 html 的话,解析过程放在前端的话,就无法 SEO。
8.上面功能较多,但还是不全,不同的用户会有不同的需求。与此同时,现有的功能已经有点“重”了。
9. 真的,真的有这么多用户写博客吗?他们缺的可能不是笔,而是动力。缺的不是博客网站,而是写博客本身的需求。
ylsc633
2019-05-21 16:03:00 +08:00
"Hexo, Ghost, Hugo 等静态博客: 不能在线编辑, 不能手机编辑. 对于非专业人群难以快速实现搭建. 维护难度大."

非专业人群难以快速实现搭建..

我觉得.. 最简单的 lnmp 很多非专业人士也搭不起来.....

另外, 后面说到前后端分离.. 我不知道 题主打算怎么做 seo...

我觉得最简单的方式(我没用过), 好像是那种直接 markdown 编辑直接发布. 连后端服务都不要的是最简单的..

如果想要 UI 好看的.. 但是不会写很多代码的. 还是现成的博客系统比较好用.. 因为主题够多.. 下载后会点 html 就可以改..

如果想要不一样的.. 那就只能自己上手自己写了...

最后弱弱问下.. 玩博客的.. 还喜欢独特 UI 界面的.. 大多都应该会自己写吧...
pluvet
2019-05-21 17:20:12 +08:00
@cifermail 感谢你的回复,下面我说说我的想法,如有不明白的,欢迎加群或 slack,然后进入我们的 trello 讨论组讨论。

1. 做这个的目的很简单,就是满足需求,这个项目本身不指望也不在乎盈利的,它是对现状不满的产物,即使我现在不做,只要需求还在,以后也会有其它人做。

要完成一切的功能,我一个人鼓捣几年绝无可能,而且现在的设想也只是头脑风暴而已,理论和实际上都不可能全部实现,仔细看看就会发现,光是需求之间就有矛盾。我的打算是先出一个精要的版本,作为内测版本,此版本首先解决的核心需求就是:a. 创造的同时博客间社交的需求 b. 多客户端的优质书写体验的需求 c. 数据安全、数据同步的需求 。这些需求实际上各有现成的实现,甚至可以和已有的服务对接,因此在这一阶段,工作量并不算大,也就是几个月的事情。

2. 后端如果让用户自己写的话,是不是对用户会有一点要求?

这个项目的纽带其实在于 API,它更像是一个规范。我们打算用门槛最低的 php + sqlite 作为官方示例后端。而有能力的开发者,也可以用 go,nodejs,python 等等实现。(不过说实话,这里存在大量有待进一步考虑的问题)。用户的行为是这样的:域名和主机的绑定->上传程序->打开安装页面->设置管理员账号密码->安装完毕。对于官方后端,可以保证安装的便捷性。而对其它语言的后端,我们无法左右开发者的选择。至于 restful 的问题,其实现在还没有拿定主意,选择 Restful,Graphql 或者传统的 service.Action ( rpc ),各有优劣都有可能。GraphQL 的话后端用 nodejs 写会更好,但目前决定用 php,个人更偏好 rest 是因为 rest 比较成熟,工具也多(指 php 上)

3. 这些属于前端插件,是否实现,如何实现取决于前端工程师。统一用现成的 js 库是最快的方法。我们的能力做不到连这个都造轮子。官方前端的话,自然会选现有库。

4. 代码高亮这种自然也是丢给前端和用户去选择。官方前端的话,自然会选现有库。

5. 仍然是前端的事情。到时候应该会有各种编辑器的插件可供选择。由于前后分离,切换起来非常方便。

6. 博客互联并不是强制的。站长同意接入之后,先注册一个账号,验证所有权,互相分配密钥,就可以接进来了。

7. SEO 本质上就是输出 HTML 的问题,正文部分用后置解析器解析为 HTML,然后统一一个输出格式就行。比如 discuz archiver,收录效果就比较好。当然,服务端渲染也是一个选择,但不是一个好的选择。

8. 有插件机制。模块是可拆解的,你可以做出庞然大物,也可以做得小巧。这取决于用户,我们会提供灵活度。

9. 这个问题我已经详细回答过了,不重复了。
d5
2019-05-21 17:24:23 +08:00
mark,netlifycms 对静态博客的可视化编辑支持得挺好的
pluvet
2019-05-21 17:35:30 +08:00
@ylsc633 在云主机搭建 lnmp/lamp 是比较困难,甚至比 nodejs 和 golang 搭建都难。所以选择 php 开发,虚拟主机就可以运行。虚拟主机是不需要你搭建什么的,只要设置域名,绑定域名,上传安装就行。
gonnacai
2019-05-21 18:25:08 +08:00
楼主,CPU 和内存不值钱。真正值钱的是写博客的、发照片的和维护人员的时间。

根据摩尔定律,宽带和硬件只会越来越便宜。

发射阿波罗的计算机性能,不如今天一台 iPhone 的 CPU。

不要重复发明轮子
pluvet
2019-05-21 18:27:16 +08:00
@gonnacai 你说的都对
guixiexiezou
2019-05-21 18:34:15 +08:00
重复发明轮子
dsnake1984
2019-05-21 18:35:42 +08:00
毕业论文?
AlloVince
2019-05-21 19:06:40 +08:00
我的 blog https://avnpc.com/ 基本实现了 lz 的大部分想法

后端 ( https://github.com/AlloVince/avnpc.js )支持将 Github repo 作为数据存储,支持 RESTFul 和 GraphQL 两种格式的 API

前端 ( https://github.com/AlloVince/avnpc.front ) 基于 next.js ,使用 SSR 渲染后端 API。 使用了 markdown-it 系列,因此可以支持 markdown、语法高亮、数学公式,mermaid 图表 ( https://avnpc.com/pages/markdown-render-demo

评论使用 gitalk,直接用 github issue 作为评论组件

当然现在只是我个人自用的,不过应该可以作为参考
nn1023
2019-05-21 19:14:01 +08:00
标记
LokiSharp
2019-05-22 08:45:47 +08:00
数据库别用 MySQL 了 直接 Postgresql 吧

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

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

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

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

© 2021 V2EX