注:为加快开发,我实际用了比预期更多的 Cursor credits(启用 MAX 模型)。如果不追求开发速度,可选择更便宜的模型。
架构设计大多数项目都需要 4 个核心组件:
-
前端:托管在 Vercel(单独的 GitHub 仓库);
-
后端:托管在 Railway(单独的 GitHub 仓库);
-
数据存储数据库:Railway 上的 Postgres 数据库;
-
缓存数据库:Railway 上的 Redis 数据库。
简单来说,Vercel 负责所有前端相关功能;Railway 则安全托管 「用户不可见」 的核心服务,如数据处理、代币部署、API 接口、信息缓存等。
大多数后端的架构都像下面这样(没错,数据存在 「球」 里)。

我始终建议先开发核心功能,最后做前端展示。
对本项目而言,最核心的功能(也是需要先测试兼容性的功能)是代币发行。
由于我们已确定 「由后端 EOA 执行代币部署」,因此我们可以为后端创建一个新的 git 存储库,并开始深入研究 Flaunch SDK 文档。
该文档概述了目前在启动配置方面所有可行的功能,甚至提供了一些便于集成的代码片段。它们还提供了一些用于检索数据的 API 端点,以及一个子图,可以自动索引 Flaunch 上发生的所有事情(包括从 Blind 前端启动的代币)。
1)测试代币发行功能
在新的后端仓库中,第一步是搭建本地环境,测试能否通过 SDK 成功发行代币。我们可以先写一个简单的 Node 脚本,后续再将其改造为 Express 服务器接口,调用该接口并传入指定参数,即可完成代币部署。
这个步骤其实很简单,大概率只需一次提示词 + 少量调试就能搞定。
而且代币部署的 Gas 费不到 0.01 美元!这意味着我们可以为用户提供完全免费的代币部署服务。

2)拉取社交数据
第二步是开发另一个核心功能:社交评分。针对之前选定的所有数据维度,我们需要查看每个 API 的文档,然后在 Express 服务器中创建一个端点,该端点会根据用户名返回所有数据。然后,我们可以将这些数据存储在我们在 Railway 上创建的 Postgres 数据库中。

3) 注册流程
到这一步,开发会变得稍微复杂,需要同时推进前端仓库的开发。我们选择 Next.js 作为前端框架,原因是它对 Vercel 支持最好,且支持中间件实现身份验证。
