少数派

电子「掷圣杯」:爱你老己 Everyday

编注:本期内容为少数派 Matrix 社区应用自荐文章合集。文章代表作者个人观点,作者与文中产品有直接的利益相关(开发者、自家产品等),少数派仅对标题和排版略作修改。

Image

本期目录

🌵 口袋植物:用每一次养护来灌溉你的园艺天赋

✌️ 潮杯说:摇手机掷胜杯趣味解读潮汕运势

👻Await:iOS 点子小组件

Image
口袋植物
🧑‍💻 LilStrawberry  |   🤖 iOS |App Store 下载

▍写在前面

我一直以为养好植物的秘诀应该是浇水的频率,以往每一次想要认真对待一盆新到家的盆栽的时候,都会小心翼翼地在待办事项里记下一个重复任务提醒自己浇水。但是结果总是跟清单里的其他事物一样,逐渐被遗忘。对于植物来说,被遗忘也就意味着被杀死。

直到 2023 年的春天,最近才发现那天正好是植树节,机缘巧合地被我的植物爱好者朋友带着深度逛了一圈花卉市场,我开始打开了 「植物眼」,也不曾想到在那之后 「植物杀手」 这个标签将会慢慢从我的身上掉落。

那是一次非常有趣的花卉市场导游,那天我开始知道许多常见的室内植物的名字,知道了哪些是猫咪友好植物,又带回了几盆小盆栽打算再给自己一次机会。虽然那一次带回来的植物没有存活到今天,但是我们埋下的另一个种子长出了小树,也长出了侧芽。

▍从播客、社群到独立开发

是的,我们决心做一档无门槛入坑园艺、植物杀手友好的植物爱好者播客 - 《朱兜兜花园》。

这一档植物播客对我来说同时也是一个社群,它见证了我们和花友在家庭园艺和自然博物方面的成长。

这两年里,我养死过的植物数量,大概跟我现在养活的差不多。植物的死亡不会预警,它们没有办法告诉你哪里出了问题 —— 有的植物死于毫不在意,也有的植物死于被过度关心。

做播客之后,我开始更系统地和植物爱好者们交流。我发现一件有意思的事:养好植物是一种慢慢积累的知识和觉醒的意识,不是只靠提醒事项能解决的事。 当你真的熟悉了一株植物,其实也不再需要提醒 —— 那种感觉更像是形成了一种生活节奏。

但在真正熟悉之前,我们需要的是一个地方,把这些积累经验的过程留下来。

市面上的植物 App 大多数是这样的逻辑:输入、识别植物品种,告诉你每隔几天浇多少毫升的水,设置提醒,完成任务。还有大部分数据存在云端,方便拓展电商和社交功能。在我决定做口袋植物之前也几乎全部体验过,似乎对于我和一些花友来说都太重了。以及,养活第一株植物是一件很微妙的事情,完全靠提醒事项和养护百科大概率是没有用的(欢迎问我是怎么知道的,因为活着的或者死去的植物都没有办法告诉你)。

▍「口袋植物」

于是,我做了一个植物养护 App -「口袋植物」(「PokePlant」),说是一款植物收藏和养护日记更贴切。名字的来源是因为我觉得随着植物越养越多,就好像小时候在集宝可梦的卡牌,而宝可梦最早的翻译是口袋妖怪,所以分别有了这两个名字。(也有花友把它叫做植物口袋,其实也挺符合的)

App 上线后,我收到了大量来自用户的反馈。我发现大家对相册、日记的需求,远远大于对养护提醒和植物识别的需求。这让我想通了一件事:我们养植物,不只是为了养活它,更是为了和它在一起的那些时光。每一朵花、每一片叶子都有独特性和短暂性。记录下来,好像就能把这些流动的美丽定格。

所以「口袋植物」里,每株植物都有自己的成长相册,按时间轴展开,你可以看到它从一棵小苗到现在的全程。

Image

为了解决从相册翻阅找到植物图片的痛点,我开发了从系统相册快捷添加到「口袋植物」的辅助功能。

Image

最近,我还加入了贴纸墙的展示入口。 你收集的植物贴纸会在这里排列开来 —— 有点像小时候在文具店买本子贴贴纸的感觉,打开来就可以看看自己的战绩,也可以给花友展示。功能发布后很快就收到了许多赏心悦目的返图(如下)。

Image

在目前的版本中,对于植物的养护频率、标签、养护动作,我都使用了尽量简单但是自定义的方式,来应对各种植物的不同需求。至于怎么设置,还是需要我们在生活中、网络上去筛选信息,结合实际操作去试错和总结。

以及同时作为开发者和用户的我,发现目前使用识别的需求其实很低,因为大部分家庭园艺植物我们在收到的时候也已经知道它的信息,所以识别这块我在系统设置里面加了一个不起眼的入口,帮你封装好了植物识别 API 在你需要的时候作为一个参考。但是就目前的植物数据标注而言,重任我们还是交给更专业的团队和更靠谱的花友吧~

▍关于社群

我也是在逐渐养护的过程中才发现,园艺也是一个可以有强社交属性的爱好!「口袋植物」现在的很多功能,都来自社群里真实的反馈和讨论。感谢一直以来跟我分享植物、教我养护、也支持和使用口袋植物的花友们!

我常常觉得,这款 App 本身就像我们一起养育的一株植物 —— 它在成长,还有很多不完善的地方,但每一次更新都带着来自社群的养护。我相信它一定会在大家的共建之下更加茁壮地成长。

如果你愿意加入进来,一起把喜欢的植物装进口袋 ——

那就是最好的事了。

▍写在结尾

☝️用户们反馈和返图是我骄傲和动力的来源!(特此鸣谢)

  • 「口袋植物」(「PokePlant」)现已上线 App Store,搜索「口袋植物」(或者「PokePlant」)即可下载。
  • 朱兜兜花园
    是一档围绕着植物和生活展开的杂谈类泛园艺播客。由「种植博爱」主播朱兜兜和被领入门的「种植偏科」主播芋子、「种植小白」主播莓莓姐,一起畅谈种植给我们带来的思考和乐趣。我们将从生活、电影、流行文化中寻找植物趣事, 从园艺种植中寻找真正的生活。你可以在小宇宙、小红书、苹果 Podcast 等所有泛播客平台找到我们。
  • LilStrawberry

欢迎在评论区告诉我你养过的最难忘的一盆植物,或者养死过的 —— 那些也值得被记住。

链接🔗:https://apps.apple.com/cn/app/id6743841100


Image
潮杯说
🧑‍💻 三丁_一米天  |   🤖 iOS |App Store 下载

我其实不是潮汕人,我是客家人。

但我的老婆是潮汕人。每年春节,我都会去她家拜年。年初三晚上,村里会有很热闹的拜拜仪式,家家户户都在那里掷胜杯。

那是我第一次近距离看到这个场景。

每家每户聚在一起,由家长把两片像 「半月板」 一样的东西握在手里,然后往上一抛,看它们落下来是什么结果。我当时觉得特别有意思,还问我老婆:他们扔的那个东西是什么?

后来才知道,那叫胜杯。

也是这个瞬间,成了 潮杯说 最早的灵感。

▍把现实里的掷胜杯,放进手机里

潮杯说是一个模拟潮汕胜杯的 iOS App。

你可以输入一个想问的问题,然后像现实里掷胜杯一样操作:两只手握住手机屏幕两边,也就像握住了页面里的胜杯,再向上抖动手机。

这时,胜杯会被 「抛出」,落下后得到结果。

这个动作是我最想保留下来的部分。因为对很多潮汕人来说,胜杯不只是一个结果,而是一个刻在身体记忆里的动作。

所以我不想只做一个点击按钮的占卜 App。我希望用户真的能通过 “握住、抛出” 这个过程,感受到一点现实掷杯的仪式感。

Image

▍AI 解杯,让结果更贴近日常问题

掷杯之后,App 会得到胜杯、阴杯、笑杯等结果。

如果只是显示结果,其实有点干。所以我加了 AI 杯语。它会结合你输入的问题和掷杯结果,生成一句更贴近日常语境的回应。

比如问:「今天打球的手感怎么样」

它可能会回你:「今日手感需谨慎,阴杯劝你多热身」。

再比如问:「今天的穿搭怎么样」

如果是胜杯,它可能会说:

「今天穿搭稳了!胜杯认证,靓到飞起」~

我希望它不是严肃的算命工具,而是一个有潮汕味、有点好笑、也有一点仪式感的小东西。

Image

▍不懂代码的设计师,靠 AI 做出的 App

做这个 App 之前,我完全不懂开发,也不懂代码。

我是一个纯设计师。开始之前,我甚至连开发 iOS App 需要用什么软件都不知道。Xcode、Swift、App Store 上架流程,全部都是从零开始现学的。

真正进入开发阶段后,我主要用的是 Cursor。

我把需求一步一步拆开,让 AI 逐个实现功能,再一点点调整 UI 和体验。比如先做输入问题,再做掷杯动作,再根据结果生成杯语,最后继续调整界面、动效和分享效果。

很多代码我其实看不懂,但我能判断体验对不对、画面有没有味道、这个动作像不像真实的胜杯。

所以潮杯说对我来说,不只是一个 App,也像是我第一次用 AI 把一个设计想法真正做成产品的记录。

▍写在最后

潮杯说的初衷很简单。

我只是第一次在潮汕村里看到大家掷胜杯时,觉得这个动作太有趣、太有地方文化记忆了。

后来我想,如果把它做进手机里,会不会也很有意思?

它不是严肃决策工具,也不应该替你做重要决定。它更像一个生活里的小仪式:当你想问一句、笑一下、求个心安,或者只是想体验一下潮汕人的 “遇事不决,胜杯一下”,可以打开它试试。

如果你是潮汕人,应该会很快懂这个动作。如果你不是潮汕人,也可以把它当成认识潮汕胜杯文化的一个小入口。

Image
潮汕年

App Store 搜索:潮杯说 (付费 3 元,永无广告)下载地址:https://apps.apple.com/cn/app/id6744966184


Image
Await
🧑‍💻 maundytime  |   🤖 iOS |App Store 下载

我女友在网上看到一张 ADHD Bingo 卡片。它把一些日常自我管理事项做成 bingo 格子:规律睡眠、少刷信息流、运动 15 分钟、晒太阳、刷牙、出门…… 每完成一项,就划掉一个。

它是手绘的,质感很好,但只存在于截图收藏夹里。

我看到它的第一个念头是:这不就是一个主屏小组件该有的样子吗?点一下格子,完成;零点自动清空,明天重来。如果它真的放在主屏上,每天打开手机都能看到,就会和收藏夹里的那张截图完全不一样。

我打开 Codex,用自己做的工具 Await 复刻了一版。基础结构大概一分半,再调几轮:用手绘网格替换方正边框,用荧光笔替换完成标记,加上每天零点重置。前后五分钟,它就从一张纸上的想法,变成了真的放在我女友 iPhone 主屏上的小组件。

放到 iPhone 主屏上的 ADHD Bingo 小组件
放到 iPhone 主屏上的 ADHD Bingo 小组件

▍那些太小、又太值得存在的点子

有很多点子就停在这里:聊天记录里、截图收藏夹里、某个「有空再做」的念头里。

不是不够好,而是太小了。小到不值得专门做一个 App,但如果真的存在,又会是每天都用得到的小作品。

iPhone 主屏上的小组件,可能是离人最近、也最小的一种界面。问题是,正常的 iOS 开发路径对这类小作品太重了。哪怕只是想在主屏上放一个自定义的小界面,仍然要面对 Xcode、工程结构、WidgetKit extension、打包、读完仍然不知道怎么回事的文档…… 这些准备工作加在一起,常常比想法本身还要重。

对普通用户来说,这条路几乎不存在;对开发者来说,也往往会因为麻烦而搁置。

Await 想做的,就是缩短这段距离。

▍描述出来,放上去

Await 是一个 iOS App,可以用 TypeScript 创建真实的 iPhone 小组件。它不是把网页塞进小组件,也不是生成静态图片,而是可以交互、有状态、真的能放在主屏上长期使用的小组件。

它的工作方式很接近今天的 vibe coding 流程:把想法告诉 Cursor、Claude Code、Codex 这类 AI 工具,让它写出 TypeScript;再把代码放进 Await,在 iPhone 上实时预览,调整,然后放到主屏。

一个基础小组件长这样:

import {Text} from 'await';function widget() {return <Textvalue='Hello World'/>;}Await.define({widget});

你可以让 AI 把这段改成倒计时、状态卡片、ADHD Bingo,或者任何你能说清楚的作品。对于一个想快速落地的小工具来说,这比从零开始配置 Xcode 工程要轻得多。

不会写代码的人也可以用。把想法告诉 AI,让它写,你负责看预览、说「这个格子再大一点」「颜色换成这个」。

现阶段,Await 没有把对话式 AI 直接做进 App。

AI coding 工具本身还在快速变化,模型、编辑器、工作流都会继续变得更好。Await 更想专注在它们之后的那一步:把 AI 写出来的 TypeScript,变成可以在 iPhone 上预览、调整、放到主屏、甚至打包分享的小组件,让这些小作品最终真正落到 iPhone 上。

▍写完之后,还可以继续调

不是所有调整都适合交给 AI。字号差一号、颜色深一点、间距松一些,这些改动说清楚比直接拖一下滑杆要麻烦得多。

代码写完之后,Await 可以生成可调整参数的面板
代码写完之后,Await 可以生成可调整参数的面板

Await 支持把代码里的参数标记成可调节项,App 里会自动生成对应的控制面板:文字、字号、颜色、开关,拖动或点击就能改,代码同步更新。

这一步同样可以交给 AI。跟它说「把标题、颜色和字号都标记成可调节的」,它改完代码,面板就出现了。

面板和代码是双向同步的:你在面板里改了一个值,代码里对应的参数也会随之改变。

这样,一个小组件可以先由 AI 或开发者搭出基本结构,再由使用者在面板里仔细调到自己想要的样子。

我录了短视频,展示这些小组件在主屏上的效果,以及编辑、预览、调整的过程

Await(编辑面板)视频 🔗:https://www.bilibili.com/video/BV1hJGL6ZEgB

Await(编辑代码)视频 🔗:https://www.bilibili.com/video/BV1hJGL6ZEcX

▍小,但不只是信息卡片

ADHD Bingo 是一个生活化的例子,但 Await 能承载的不止于此。

它可以是倒计时、服务状态面板、纪念日提醒、常用动作的主屏入口。这些是最容易想到的「信息和按钮」。

也可以是连续弹奏的 MIDI piano 和 drum pad;是带翻页动画的翻页时钟和阅读器;是 2048、推箱子这样按步骤推进的小游戏;是可以自定义秒针样式的模拟时钟;是高帧率 GIF 动画;也是功能完整的 Apple Music 播放器。

这些例子在市面上的小组件工具里并不常见。它们更像是在说明:一旦小组件可以承载更复杂的界面、状态和交互,它就不再只是一张静态信息卡片,而可以变成一种很小、很贴近生活的作品。

Await 可以自由地创作各种小组件
Await 可以自由地创作各种小组件

Await 小组件的可能性
 Await 小组件的可能性

当然,小组件不是完整的 App,iOS 仍然会限制小组件的内存和刷新频率。但我反而觉得这是它的魅力。

它不是让你把 App 缩小,而是让你重新想清楚:哪些作品值得常驻在主屏上,哪些信息应该在打开手机那一刻就被看见,哪些动作可以不再绕进 App 里。

▍做得不错,也可以分享出去

Widgy 和 Scriptable 社区里有一种很有活力的现象:有人认真做一套小组件包,放到网上分享,甚至卖几美元。

Await 也希望让这种创作更容易发生。一个小组件包可以包含小组件本身、图片资源、参数设置,以及作者设计好的自定义面板。哪些文字可以填写,哪些颜色可以选择,哪些开关或数据源可以配置,都可以由创作者在制作时决定。

这样分享出去的不是一张截图,也不是一段需要别人自己读懂的代码,而是一件可以安装、配置和使用的作品包。它保留了作者的审美、结构和想法,也让认真做小组件的人有机会把作品分享给更多人。好的作品,不仅值得被分享,也值得获得收入。

换句话说,小组件包有价值的地方,往往不是代码本身,而是某种已经存在的创作资产、数据资产或服务能力,被做成了更贴近手机使用习惯的主屏入口。

比如插画师可以把一组角色、壁纸或视觉风格,做成主题时钟、倒计时、音乐控制器、每日签语小组件;用户买到的是这套审美在主屏上的延伸。

长期整理小众信息的人,也可以把自己的数据源做成小组件:演出开票、球鞋发售、游戏活动日历、潮汐和钓点、某个社区的内部日程,或者带有红包 CPS 的优惠信息入口。用户买到的不是一个空模板,而是持续维护的数据和更方便的查看方式。

如果是一个课程、社群或服务,也可以把打卡进度、活动倒计时、会员提醒、关键状态做成专属小组件。它不一定要服务很多人,但只要对那一小群人足够有用,就有被付费支持的理由。

▍现在可以下载

  • 官网:https://awaitwidget.com

接下来我会继续做更多有意思的示例,让小组件包更适合在社区里分享和传播;也会继续做更多面向 AI coding 的教程,让更多不熟悉开发人也能用 Await 做自己的小作品。

如果有人用 Await 做出了好作品,我也希望把它们展示出来,让创作者有被看见的机会。

我希望 Await 最后留下的,是一种更轻的创作入口:不必很大,但足够好看和好玩,也足够贴近自己每天使用手机的方式。


/ 欢迎投稿 /

Image

/ 更多热门文章 /

Image

Image

/ 产品推荐 /

Image

Image