summaryrefslogtreecommitdiff
path: root/app/routes.ts
diff options
context:
space:
mode:
authoryyamashita <yyamashita@hetzner.yyamashita.com>2026-09-26 00:19:53 +0900
committeryyamashita <yyamashita@hetzner.yyamashita.com>2026-09-26 00:19:53 +0900
commit874749df46cc291ca61f2f98092ccabfdeffbf16 (patch)
treee4cb53b5bfa23974e7935eb2616e0e005954f782 /app/routes.ts
parent999b7a3133fccc3f120ac5ae24c02bb38a4ecce9 (diff)
Add passkey login and favorite search termsHEADmaster
Single-user auth: any registered passkey logs in as the owner. First registration needs a one-time token that the app writes to data/registration-token when no passkey exists yet; once logged in, more passkeys can be added without a token. Logged in, /favorites manages a list of terms (e.g. band names). Events whose title or artist contains a term (NFKC + case-insensitive) get a ★, and the event list gains an "お気に入りのみ" filter. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'app/routes.ts')
-rw-r--r--app/routes.ts3
1 files changed, 3 insertions, 0 deletions
diff --git a/app/routes.ts b/app/routes.ts
index 21a950d..d45106c 100644
--- a/app/routes.ts
+++ b/app/routes.ts
@@ -8,6 +8,8 @@ export default [
route(":id", "routes/events.$id.tsx"),
]),
route("venues", "routes/venues.tsx"),
+ route("favorites", "routes/favorites.tsx"),
+ route("login", "routes/login.tsx"),
...prefix("api", [
route("scrape", "routes/api.scrape.ts"),
route("scrape-status", "routes/api.scrape-status.ts"),
@@ -17,5 +19,6 @@ export default [
route("venues", "routes/api.venues.ts"),
route("openapi.json", "routes/api.openapi.ts"),
route("image", "routes/api.image.ts"),
+ route("auth/:step", "routes/api.auth.$step.ts"),
]),
] satisfies RouteConfig;