我有一个开发了快两年的 PWA V2EX App 和大家分享……

2019-05-17 09:26:36 +08:00
 morethansean
事情的起因是这样的,在 17 年中旬,体验了一把被称为是 Sketch 竞品的,还处在 beta 阶段的 Adobe XD, 做了一个 V2EX 的移动端 redesign.
然后就开始了断断续续长达两年的开发之旅 _(:з」∠)_


(当时的设计稿)

最初做这个东西的原因,其实是一个很简单的需求:时逢多事之年,各种想要关注的帖子被丢进隐藏节点无法 follow 进度,所以想做一个 follow 帖子的功能把这些帖子的更新直接展示到首页区。
断断续续开发了一个月左右,由于有其他几个内容创作相关的 side project 占据了大量时间,这个项目就停止了,毕竟,当时的半成品已经够自用了……
直到,前段时间突然看到有人发帖问这个 PWA 是什么……于是就抽了点时间,把他做了一个勉强能使用的初版。
这两年发生的事情太多了,包括审美上的变化,让这个 app 的设计很多地方已经显得陈旧过时;随着 Web 的发展,Polymer 也从迈入了 3.0 的时代,它抛掉 html imports 拥抱 ES modules,从 bower 迁移到 npm. 这些种种的更迭,也是当初让我放弃继续开发这个 app 的原因之一:总想把一个东西做到最好,所以要保持所有部分都是最好用的零件……比如过旧的设计无法驱动我获得实现时的快感后,当然就没有动力继续做下去了……所以本来是想再重新更新一下设计以及更新底层框架之后再继续做的……
至于,为什么突然又有了动力,这是另外一个话题了,废话说了一大堆,还是简单介绍一下功能吧:

首先,这是一个手机端的 Web 应用,准确地说是运行在非 iOS 系统下的 Chrome 上的应用(不过交互设计和代码实现都是移动端的,所以 desktop 上很 buggy )。
得益于 Google 自己对 PWA 的推广和支持,你可以把这个 App 像 Native 应用一样安装到 Android 手机里并像 Native 应用一样使用,并实时获取最新提醒的 push 通知。

下面是几张截图预览:





一些小功能:

- 长按快速预览主题
- 楼层内联回复内容
- 图片查看器
- 分享你感兴趣的主题
- 查看历史浏览记录
- 获取新消息通知

一些正在开发的功能:
- 跟踪帖子,并获取他们的更新提醒(咦,这不是当初我的第一功能要求吗)
- PIN 码界面增加使用指纹传感器的选项
- 优化现在的 emoji 输入器

至于,怎么体验这个 PWA 版本的 V2EX 呢?
你需要一个可以提供 https 访问的服务器来部署他,因为 V2EX 并没有提供什么真正可以使用的三方 API.
如果你熟练的话,整个安装过程应该在 10 分钟以内,访问下面的链接获取指引: https://github.com/7nights/get-v2ex

简单介绍一下,这个程序会通过访问 V2EX 来提供 RESTFul 的 API 让你的 PWA 程序调用,出于安全原因考虑,他基本上只支持一个用户(其实支持多用户估计也会被 V2 反爬的)。

再多嘴一句,请使用 https, 不仅仅是因为大部分功能(比如分享、通知推送等等)都需要 https,还是为了你自身账号安全着想……

有任何 bug 或者建议都可以提到 issues 里。谢谢大家啦~
19572 次点击
所在节点    PWA
129 条回复
fengc
2019-05-17 11:59:48 +08:00
会 UI 的程序员真可怕
ReysC
2019-05-17 12:12:56 +08:00
会 UI 的程序员真可怕
WhoCanBeRich
2019-05-17 12:15:00 +08:00
看不到图的 哭了
jason94
2019-05-17 12:18:24 +08:00
会 UI 的程序员是真真真的可怕
morethansean
2019-05-17 12:24:53 +08:00
@WhoCanBeRich #43
不应该呀,用的微博图床...
Zzdex
2019-05-17 12:36:01 +08:00
原来少数派的是你,找了好久
Microi
2019-05-17 12:37:32 +08:00
设计+开发,你是真的强。
DamonLin
2019-05-17 12:41:56 +08:00
会 UI 的程序员真可怕
WEBUG
2019-05-17 12:44:27 +08:00
这个设计稿用的那个软件是什么
dcalsky
2019-05-17 12:45:07 +08:00
我十分建议楼主部署一下,非常美。
Lin0936
2019-05-17 12:47:12 +08:00
没服务器了,哭了。
goodryb
2019-05-17 12:48:21 +08:00
有 demo 吗,先体验下
superbai
2019-05-17 13:27:56 +08:00
太优秀了,能讲讲 UI 怎么设计的么?
VENTDOUX
2019-05-17 13:29:15 +08:00
万分希望楼主可以出个 IOS 版本
doco
2019-05-17 13:29:43 +08:00
我的 pwa 只会盗用 app 的 api 然后用 nginx 转发...感觉 low 爆了
fedfrank
2019-05-17 13:31:10 +08:00
can we make friend?
PureWhiteWu
2019-05-17 13:31:12 +08:00
会 UI 的程序员真可怕
Maboroshii
2019-05-17 13:39:21 +08:00
没有部署好的版本呀
fenx
2019-05-17 13:40:55 +08:00
挺好的👍,不过一些页面的几何纹理背景建议还是去掉或者再再淡化,现在和 lable 的灰色重合了;
Nodes 页面的 show all 应该更贴近上方一些,现在居中会造成无法判断 show all 下面还是上面的节点;
评论的灰色背景感觉可以再浅一点;
Member 的 BLOCK 建议收到二级菜单不直接放出来(社区嘛);
头像方形还是圆形也是建议统一 ne ;
----
P.s. 我最近也在想写一个 v2 主题,不过没什么方向也一直没什么时间
fcoolish
2019-05-17 13:45:17 +08:00
厉害厉害

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

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

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

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

© 2021 V2EX