跳到主要内容
Carriage: languages, approach, the home map, chat, filters

Carriage:历时 18 个月交付的旅行者互助应用

Upwork brand logoUpwork应用开发12月 01, 2022 - 6月 30, 20241 年 7 个月

在一个语言不通的地方落地,帮助就在四周,却无从触及。Carriage 让它触手可及:打开你的定位点,就能看到附近与你语言相通、愿意提供帮助的人;向其中一位发出邀约,对方接受后,你们就可以发消息、通话或当面见面。项目由一名开发者独立完成,涵盖 React Native 应用和 NestJS GraphQL 后端,从一个空白的导航框架开始,逐个里程碑交付,依次实现社交登录、个人资料、按范围发现、邀约流程和即时消息。在同一份持续合约下,一年半内共有十一个里程碑通过验收,最终收尾于 1.8.0 版本。

React NativeNestJSGraphQLMongoDBTypeScriptNode.jsExpoSocket.IO
Md Moniruzzaman Image

Md Moniruzzaman

完整故事

旅行者最糟糕的时刻,一位能伸出援手的陌生人,以及一个逐个验收里程碑、一步步打造出来的产品。

没有人听得懂你的那一刻

每个旅行者都经历过这样的时刻:在车站、药店或警察局的柜台前,没有人会说你的语言,而你迫切需要让别人明白你的意思。翻译应用能帮你翻译一句话,却帮不了你应对一个处境。你真正需要的,是附近一个会说你的语言、并且愿意帮忙的人。

Carriage 正是为这样的时刻而打造的,也是为了许许多多乐于帮助陌生人的人,他们只是不知道身边就有这样一位陌生人。

先看语言,再定谁能找到你

每个个人资料都从语言开始,写明会说哪些语言、水平如何,从只会几个词到流利自如;然后是兴趣爱好,以及对谁可以看到自己的明确选择:年龄范围、性别和资料类型。这一套设置决定了谁能找到谁,让旅行者按真正需要的语言得到匹配,任何人也都不会出现在自己没有选择的人面前。

Brand colour backdrop
Adding a language with a level of expertise, from basic words and phrases to fluent
Choosing six interests from a searchable list
Choosing who can see the profile: age range, genders, profile types and interests

地图上的定位点,愿意帮忙的人

打开你的定位点,地图就会显示你设定范围内与你语言相通、此刻有空的人,洛杉矶方圆十英里一目了然。点一下定位点,就能看到对方是谁、多大年纪、会说哪些语言,以及一段简短的自我介绍,然后决定是向对方发出邀约,还是继续看看。在帮助者接受之前,不会再分享任何信息;接受之后,双方就可以发消息、进行语音或视频通话,情况需要时还可以线下见面。

这感觉不像在翻一本通讯录,更像是在人群中与对的人对上了眼神。

Brand colour backdrop
The finalized Discover home screen: the dot on, a ten mile radius over Los Angeles and nearby helpers inside it
A helper tapped on the finalized home screen: age, languages, interests, a short bio, and Approach or Cancel

只在你愿意时才被看到

能否被找到由你自己选择,而不是默认开启。帮助者的定位点在他们亲自打开之前一直是关闭的;筛选条件限定谁会出现、同时显示多少个定位点;家和工作地点可以排除在外,到了那里定位点会自动关闭。对帮助者来说,这就是花几分钟献出一点善意与整天随叫随到之间的区别,也正因如此,人们才愿意加入。

Brand colour backdrop
Discover with the Carriage dot switched off and the prompt to tap it on
The finalized Edit Filters page: excluded home and work locations, how many dots to show, age range, genders and profile types

从一个定位点到一场对话

向陌生人发出邀约本是个小小的请求,Carriage 让它始终保持这样。帮助者一旦接受,双方就进入一个私密聊天,旅行者可以用自己的语言说明情况,帮助者则可以回复路线指引、要找的名字或可以等候的地点。之前的每一段对话都保留在收件箱里,所以旅行者下次落地时,已经认识的帮助者只需轻点一下就能联系上。

对创始人来说,正是在这一刻,产品不再只是一张地图,而变成了一段关系,这也是人们会再次打开这款应用的原因。

Brand colour backdrop
The Messages inbox in the final theme with the real tab bar: recent helpers, conversations with unread counts, re-themed from the Figma design
A chat with a helper in the final theme, audio and video call buttons in the header, re-themed from the Figma design

当打字太慢时

有些情况等不及回复。药剂师正在问问题,火车马上要开,一位官员要你立刻回答。旅行者可以在聊天页顶部直接给帮助者打语音电话,或者切换到视频,把镜头对准指示牌、表格或柜台,让帮助者看清情况并替他们开口。通话通过 Twilio 实现,与聊天共用同一个 NestJS 后端,双方无需交换电话号码就能在应用内通话,而帮到什么程度,由帮助者自己决定。

Brand colour backdrop
An audio call with a helper in the final theme: languages shared, mute, speaker, video and end call
A video call in the final theme, the traveller showing the street to the helper, with a self view and call controls

增长与收入,内置于产品之中

一款消费类应用既需要用户,也需要养活自己的办法。每位会员都有一个推荐码和一个可分享应用链接的二维码,朋友通过它加入就能获得奖励,让网络依靠已有的成员不断壮大。免费试用结束后,Carriage Pro 可解锁更多定位点、数据分析、Pro 徽章和无广告的应用,为创始人从最能从中受益的用户那里带来一条收入来源。

Brand colour backdrop
A referral code and a QR code that shares the app link
Upgrade to Carriage Pro: more dots, analytics, a Pro badge and no ads, with a free trial

十八个月,十一个已验收的里程碑

创始人需要的是一位一年半之后仍在持续交付的合作伙伴。Carriage 由一名开发者完成,涵盖 React Native 应用以及 NestJS、GraphQL 和 MongoDB 后端,共分十一个里程碑,每一个都事先书面规划,交付时附有截图和一段操作演示视频,并以一份由客户留存的结算文件完成验收。

Brand colour backdrop
One engagement in five eras: foundation, identity, dots, approach, handover

平淡的地基,是有意为之

第一个里程碑刻意做得毫不起眼:只有应用的导航和结构,配上空白页面,没有任何演示功能。之后的一切都建立在这个地基之上,而不是在仓促的开局上修修补补;范围变更都公开协商,而不是默默吞下。

对创始人来说,这意味着一个十八个月里持续成长、从未重写的产品,一份始终清晰可见的预算,以及每一个决定的记录。对旅行者来说,这意味着一款在他们最需要的时刻真正派上用场的应用。

他们的评价

Dominique Kimbrough

Carriage 的 创始人

1 年 7 个月

I loved working with Monir! He is extremely flexible and listens and adjusts amazingly! I will definitely hire Monir in the future if anything comes up!

6月 16, 2024

(5.0)

Dominique Kimbrough

Carriage 的 创始人

1 年 7 个月

Amazing , Spectacular, Honest, Forthright, Hardworking person to work with. I have loved working with him daily and will do again anytime in the future. Takes everything in stride and adamantly works with my daily changing timeline. Has unlimited potential , will be a UpWork Super Star in the future if I don't hire him first!

4月 07, 2023

(5.0)

你可能也喜欢

fully booked brand logo
Fully Booked Booking Software
应用开发
2 年 3 个月
fully booked brand logo

Fully Booked:一体化智能预订解决方案

Fully Booked 是一个面向英国小巴和大巴租赁的预订平台,也是其背后运营商的业务共享网络。客户只需在客户网站上描述一次行程,就能收到能够承接的运营商按评价和车辆照片排序的报价,并以一笔受保护的小额定金完成预订。接不了单的运营商可以在应用中推荐客户,当网络中的另一家公司承接时即可获得分成。围绕这一循环的还有报价单、取消通知、Get Covered、合作伙伴联系人、已保存的预订、钱包、业务主页和 Prebooked 小部件,全部运行在同一个后端之上,并由一个管理控制中心统一管理。

Md Moniruzzaman Image

Md Moniruzzaman

6月 24, 2025

+1
Dominic Dormer
Coverfanz Logo
Coverfanz social app
应用开发
2 个月
Upwork brand logo

CoverFanz:粉丝互动与艺术家预订平台

CoverFanz 把表演者、演出场所和粉丝汇聚到一个应用中:场所按书面条款预订表演者,粉丝在地图上找到下一场演出。一次预订包含活动、时间和费用,表演者在上线前附上自己的条款,已确认的活动可以附带推广,评价则逐步累积成每位表演者的履历。后端、iPhone 和 Android 应用以及管理后台于 2022 年在一个月内上线,两大应用商店都在首次提交时批准。

Md Moniruzzaman Image

Md Moniruzzaman

4月 29, 2022

Amr Mashrah
Sportpal Logo
Sportpal Mobile App
应用开发
3 个月
Upwork brand logo

SportPal:与本地运动爱好者连接并一起运动

SportPal 让球员看到今晚附近正在进行的球局,并帮助组织者凑齐人数,六周内作为完整产品上线。球员可以以访客身份浏览,想加入时才验证手机号,并报名公开球局或接受私人球局的邀请;组织者决定谁可以加入、需要多少名球员。基于 React Native 和 Expo,支持 iPhone 和 Android,后端采用 NestJS、GraphQL 和 MongoDB,并通过 Twilio 验证。

Md Moniruzzaman Image

Md Moniruzzaman

10月 08, 2022

Default avatar
Read the Md Moniruzzaman blog

博客是来自生产一线的笔记:架构决策、经受住真实用户考验的 AI 系统、能自己挣回成本的基础设施。写于工作之中,而不是隔岸观火。