Pick any line to see why it is the way it is: the commit, the pull request and issue it came from, and what the agent was thinking.
| Billing accounts, terms and enterprises; g1t is no longer free | 1 | import { type RouteConfig, index, route } from "@react-router/dev/routes"; |
| 2 | ||
| A menu shaped by how g1t works, Soon pages for every promise, and sudo for sales | 3 | import { soonItems } from "./lib/nav.ts"; |
| 4 | ||
| Billing accounts, terms and enterprises; g1t is no longer free | 5 | export default [ |
| A menu shaped by how g1t works, Soon pages for every promise, and sudo for sales | 6 | index("routes/overview.tsx"), |
| 7 | route("workspaces", "routes/workspaces.tsx"), | |
| Billing on Stripe's pages, month-end charges, warnings; sudo by workspace | 8 | route("workspaces/:slug", "routes/workspace.tsx"), |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 9 | route("users/:username", "routes/user.tsx"), |
| Billing on Stripe's pages, month-end charges, warnings; sudo by workspace | 10 | route("enterprises", "routes/enterprises.tsx"), |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 11 | route("invites", "routes/invites.tsx"), |
| Billing accounts, terms and enterprises; g1t is no longer free | 12 | route("enterprises/new", "routes/new-enterprise.tsx"), |
| Billing on Stripe's pages, month-end charges, warnings; sudo by workspace | 13 | route("enterprises/:id", "routes/enterprise.tsx"), |
| A menu shaped by how g1t works, Soon pages for every promise, and sudo for sales | 14 | route("reach-out", "routes/reach-out.tsx"), |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 15 | route("requests", "routes/requests.tsx"), |
| 16 | route("overages", "routes/overages.tsx"), | |
| 17 | route("velocity", "routes/velocity.tsx"), | |
| 18 | route("abuse", "routes/abuse.tsx"), | |
| sudo: Invoices, Audit log, and follow-ups due | 19 | route("invoices", "routes/invoices.tsx"), |
| Stripe webhooks, enterprise invoices, and sudo for both | 20 | route("stripe", "routes/stripe.tsx"), |
| sudo: Invoices, Audit log, and follow-ups due | 21 | route("audit", "routes/audit.tsx"), |
| A menu shaped by how g1t works, Soon pages for every promise, and sudo for sales | 22 | // What sudo will have: one placeholder page each, from lib/nav.ts. |
| 23 | ...soonItems().map((item) => route(item.to.slice(1), "routes/soon.tsx", { id: `soon${item.to.replace(/\//g, "-")}` })), | |
| Billing on Stripe's pages, month-end charges, warnings; sudo by workspace | 24 | // Before sudo was organised around workspaces, everything was an account. |
| 25 | route("accounts/*", "routes/legacy-accounts.tsx"), | |
| Billing accounts, terms and enterprises; g1t is no longer free | 26 | ] satisfies RouteConfig; |