尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Open the app and see when to leave for your next train. Pick your station and direction once — settings are saved on your device.
?station=Edgewater%20Stn&direction=Perth&leaveBefore=10npm install
npm start
Open http://localhost:3000.
Repo: github.com/tdrevans-aus/next-train-app
public is auto-detected).Or from this folder after npx vercel login:
npx vercel --prod
vercel.json sets short cache headers on /api/* so live times stay fresh.
On first launch, the app asks you to pick station and direction. You can tap Use nearest station (location permission) to pre-fill the closest Transperth station, then choose your direction and save.
There is no built-in default route — every user sets their own commute.
public/lib/train-times.js — shared logic used locally and in the cloudThe app includes an ad slot below the train details (not in the hero card), a one-time notice before ads load, and Privacy / About pages. The free version always shows ads; an ad-free upgrade is planned for later.
config/site-config.example.json values into public/site-config.json:
{
"adsenseClient": "ca-pub-XXXXXXXXXXXXXXXX",
"adsenseSlot": "XXXXXXXXXX"
}
public/about.html before going live.With empty site-config.json values, no ads or notice appear (fine for local dev).
The Play Store build uses Capacitor to wrap the app and Google AdMob for ads (not AdSense).
Ad IDs live in public/site-config.json:
{
"admobAppId": "ca-app-pub-XXXXXXXXXXXXXXXX~YYYYYYYYYY",
"admobBannerId": "ca-app-pub-XXXXXXXXXXXXXXXX/ZZZZZZZZZZ",
"admobTestMode": true
}
Set admobTestMode to false before a production Play Store release.
Prerequisites: Android Studio with SDK installed.
npm install
npm run cap:sync
npm run cap:open
In Android Studio: Run on a connected phone or emulator. The app loads the hosted Vercel URL (capacitor.config.ts).
Swipe left on the departure card for a later train, or swipe right for an earlier one. A one-time hint appears the first time you use the app.