00:00:00在你的应用真正开始增长之前,Firebase 确实非常棒。
00:00:03有了用户,流量也上来了,突然间,后端不再是问题,
00:00:09真正的问题变成了你的账单。
00:00:10更糟糕的是,你意识到你其实无法控制自己的后端,因为控制权在 Firebase 手里。
00:00:14但如果能保留所有优点——身份验证、数据库、存储、实时
00:00:19函数等等,并在掌控数据的前提下自己运行它们呢?
00:00:24这就是 AppWrite,一个在过去一年中
00:00:28吸引了许多开发者转向的开源项目。
00:00:29让我们来看看如何在几分钟内完成设置。
00:00:37我们知道 Firebase 提供身份验证、实时数据库、存储、消息推送等
00:00:42这些好用的功能。
00:00:43这也是为什么这么多开发者会从它开始。
00:00:45AppWrite 提供了相同的核心构建块,此外还有团队管理、自托管、消息服务商,
00:00:52甚至是 AI 工具。
00:00:54这里的区别很简单。
00:00:55这是你的服务器,你的 VPS,你的配置,一切规则由你定。
00:00:59如果你喜欢这些能加速开发流程的开源工具,请务必
00:01:03订阅 Better Stack 频道。
00:01:05现在通过 AppWrite,我们可以获得邮箱登录、OAuth、魔术链接、匿名登录,
00:01:10甚至是多因素身份验证(MFA)。
00:01:12你还能获得一个融合了文档型和关系型结构的实时数据库。
00:01:15还拥有带文件转换功能的存储系统。
00:01:17我们支持超过 13 种语言的无服务器函数,以及推送、邮件、短信等消息服务,
00:01:23功能非常全面。
00:01:24你可以选择自托管或使用云服务。
00:01:27而且最让人惊讶的地方在于,
00:01:28尽管它如此强大,但自托管起来其实非常容易。
00:01:32所以我们别光说不练。
00:01:34让我们现在就把它跑起来,我好向大家展示如何将 AppRite
00:01:38集成到你的项目中。
00:01:39第一步很简单。
00:01:41确保 Docker 正在运行,好吗?
00:01:43然后在你的终端里,输入这个命令,
00:01:46我们要运行一个 Docker Compose 命令。
00:01:49就这样。
00:01:50后端已经搭建好了。
00:01:51随时可以使用。
00:01:52它会引导我们进入这个页面,你可以创建新账号
00:01:56或登录现有的 AppRite 账号。
00:01:58现在我们要在这里创建一个新项目。
00:02:00我就叫它 "TodoApp",因为这就是我们要展示的内容。
00:02:04然后我们复制项目 ID。
00:02:06之后我们需要把它添加到 ENV 环境文件中,你可以现在保存,
00:02:10或者直接把它填进 ENV 文件。
00:02:13接下来我们要为本地开发添加一个 Web 平台。
00:02:16依次进入 Auth、Web App,然后点击添加平台。
00:02:19我们可以将主机名设为 localhost,然后直接保存。
00:02:23现在我们可以设置数据库并创建一个集合(Collection)。
00:02:26在数据库中,一个集合其实就相当于一张表。
00:02:30你可以根据需要创建任意数量的列。
00:02:33对于这个项目,我会使用邮箱、标题、内容,
00:02:38再加上用户 ID。
00:02:40我们可以在这里设置权限。
00:02:42"Any"(任何人)是指无论是否登录的用户。
00:02:45所以我把这些设为只读。
00:02:48其余的操作将只针对已登录的用户。
00:02:51既然是待办事项清单,
00:02:52让我们把基本的增删改查(CRUD)操作都勾选上。
00:02:57这是最棒的部分之一,因为 AppRight 在后端直接处理了这一切。
00:03:02非常简单。
00:03:03只需要勾选几个框就行。
00:03:05现在我们可以把它连接到代码中了。
00:03:06我们可以将端点(Endpoint)和所有数据(包括项目 ID、
00:03:10数据库 ID 和表名)直接填入项目的 ENV 文件。
00:03:16看起来复杂的完整后端设置,实际上只是我们将 AppRight 中的
00:03:20几个小部分连接到了代码里。
00:03:23好的。
00:03:24现在让我们测试一下。
00:03:25我们可以启动它。
00:03:26我要去这里创建一个新的用户账号。
00:03:29开始注册。
00:03:30登录之后,我们可以尝试创建一个任务。
00:03:33我给它一个标题和一些描述,
00:03:37然后点击添加。
00:03:38瞧。
00:03:39你可以看到这里没有任何报错,对吧?
00:03:41它正在将数据推送到我们的应用。
00:03:43如果我们回到 AppRight 后台,就能看到数据传过来了。
00:03:48现在如果我开两个标签页,在一个标签页登录,
00:03:53在另一个标签页保持未登录状态。
00:03:54当我在第一个标签页推送数据时,它也会出现在第二个标签页上,
00:03:59因为我们为所有人设置了只读权限。
00:04:03只需极少量的代码,我们就实现了身份验证下的全流程同步,
00:04:08它能写入数据并更新数据库,还能提取数据
00:04:13并在多个页面上显示。
00:04:14那么,为什么开发者们会转向 AppRight 呢?
00:04:17首先,最明显的一点。
00:04:18是所有权。
00:04:19数据是你自己拥有的,对吧?
00:04:21这是一个开源项目。
00:04:23它能让你更好地保护隐私。
00:04:25此外,这里没有所谓的“按席位计费”,明白吗?
00:04:27当你使用 Firebase 或 Supabase 扩大规模时,会产生一些隐藏费用。
00:04:31嗯,也不算隐藏,但总之会有费用产生。
00:04:35而且 AppRight 拥有的大多数功能,Firebase
00:04:39和 Supabase 也同样具备。
00:04:40所以你其实并没有损失任何功能。
00:04:42你可以自托管或者使用云服务,它们的 SDK 对
00:04:47React 和 Flutter 的支持也相当不错。
00:04:49再说一次,它毕竟是开源的。
00:04:51它也许不完美,但作为开发者,我们可以很快搞定这些细节。
00:04:55所以这不会成为一个很大的痛点。
00:04:57唯一前提是你需要了解 Docker,但这也很容易学。
00:05:00好的。
00:05:01如果你懂 Docker,这简直太棒了,因为部署速度飞快。
00:05:05它没有内置全球 CDN 或边缘计算函数。
00:05:07所以如果你需要这些,你得自己集成像 Cloudflare 这样的服务。
00:05:10它的数据库是基于 MariaDB 的。
00:05:13所以它不像 Supabase 那样拥有 Postgres。
00:05:16如果你想把规模做大,你需要某种监控手段,
00:05:20这对于任何自托管工具来说都是必然的。
00:05:22而这正是像 Better Stack 这样的工具大显身手的地方。
00:05:26那么你到底应不应该使用它?或者更好的问题是,它适合谁?
00:05:30也许你是一位想要避免昂贵账单的开发者或初创公司。
00:05:34好的。
00:05:35这非常合适。
00:05:36这真的很酷。
00:05:37如果你更注重隐私并追求完全的掌控权,它也会很适合你。
00:05:40对于想要优秀 SDK 的 Flutter 和移动开发者,
00:05:44这同样是个绝佳选择。
00:05:45记住,我们确实大幅降低了开支。
00:05:47所以只要你想省钱,那它就适合你。
00:05:49是的,这是一个很酷的工具。
00:05:52如果随着增长 Firebase 变得太贵,而 Supabase 让你觉得组件太多太复杂,
00:05:56我觉得 AppRight 恰好处于两者之间的平衡点。
00:06:00这就是为什么它是进入 2026 年的一个有力选项。
00:06:04就在这几分钟里,我们搭建了后端,同步了一切,并了解了为什么
00:06:08它是这么多寻找 Firebase 和 Supabase 替代方案的开发者的好选择。
00:06:13如果你想尝试一下,我在说明栏里放了一些链接和文档,
00:06:17去看看吧。
00:06:18部署只需要不到几分钟。
00:06:20绝对值得一试。
00:06:21如果你喜欢这类编程视频和开源工具,请务必
00:06:25订阅 Better Stack 频道。
00:06:27我们下个视频再见。