方便各位躺友记录日常收支并进行展示分享,做了这么个小玩具。演示网站: https://wealth.willin.wang
前置准备
首先需要注册一个 Github 账号,Fork 这个开源项目: https://github.com/willin/wealth (欢迎 Star)
然后使用 Github 账号分别注册 Vercel 和 Planetscale:
- Vercel: https://vercel.com/
- PlanetScale: https://planetscale.com/
Planetscale 创建数据库
使用 Navicat 之类的软件连接数据库,并创建表,sql 语句位于文件: https://github.com/willin/wealth/blob/main/db/database.sql
// 注意该版本不一定为最新,只是一个示例
// 最新的表结构: https://github.com/willin/wealth/blob/main/db/database.sql
CREATE TABLE `invoices` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`type` varchar(16) NOT NULL DEFAULT '',
`date` date NOT NULL,
`category` varchar(32) NOT NULL DEFAULT '',
`amount` decimal(12, 2) NOT NULL DEFAULT 0,
`method` varchar(32) NOT NULL DEFAULT '',
`desc` varchar(64) NOT NULL DEFAULT '',
`note` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
INDEX(`type`),
INDEX(`date`),
INDEX(`category`),
INDEX(`amount`)
);
创建 Vercel 项目
导入项目
连接自己的 Github 账号,然后 import 刚刚 fork 的项目。
在 Settings -> Domains 可以编辑你所用的域名(如果没有自己的域名 Vercel 也提供了免费的,如: https://wealth-demo.vercel.app)
创建 Github 应用
设置好域名之后,回到 Github 创建一个 OAuth 应用。访问地址为: https://github.com/settings/developers
注意 Authorization callback URL
填入:
https://你的域名/api/auth/callback/github
创建成功后,记好 Client ID 和 Secret 字段。
回到 Vercel 进行环境变量配置
然后在 Settings -> Enviroment Variables 中创建环境变量:
BASE_URL=https://wealth-demo.vercel.app
DATABASE_URL=PlanetScale 连接字符串
GITHUB_ID=上一步的 ID
GITHUB_SECRET=上一步的 Secret
ADMIN_ID= 你的 Github 用户名
保存,重新部署即可。后续修改项目的代码配置,会自动部署到 Vercel。