Documentation Index
Fetch the complete documentation index at: https://docs.tuturuuu.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
apps/finance and the Finance experience inside apps/web are paired Finance
hosts. They must stay 1:1 for product features, data behavior, mutations,
permissions, route behavior, and user-facing workflow updates.
Canonical workspace routes include:
/{wsId}/{wsId}/transactions/{wsId}/wallets/{wsId}/invoices/{wsId}/categories/{wsId}/tags/{wsId}/recurring/{wsId}/budgets/{wsId}/analytics/{wsId}/debts
apps/web /{wsId}/finance/* routes render the same shared Finance product
surface inside the normal platform dashboard shell. apps/finance keeps the
shorter standalone route shape without the /finance segment.
Use route prefixes instead of forks:
apps/web:financePrefix="/finance"andFinanceRouteProvider prefix="/finance".apps/finance:financePrefix=""andFinanceRouteProvider prefix="".
/{wsId}/finance/transactions/categories, should redirect inside apps/web to
/{wsId}/finance/categories while preserving query strings.
API Ownership
Protected Finance APIs stay centralized inapps/web.
apps/financeowns the standalone workspace shell, Finance UI route wrappers, local/verify-tokenhandoff, and local app-session logout.apps/webowns platform-shell Finance route wrappers under/{wsId}/finance/*.apps/financeshould keep only host-local auth/session routes under its localapitree.- Product CRUD, reporting, invoice, wallet, transaction, tag, promotion,
inventory product, settings, and invoice helper APIs should be added in
apps/weband consumed through forwarded/api/*requests or@tuturuuu/internal-api. - Finance app-session cookies are accepted by central Finance API routes and
invoice-adjacent helper routes, then route-level permissions are enforced by
apps/web.
apps/web, expose a helper in packages/internal-api when shared UI
needs it, and consume it from both hosts through TanStack Query or shared server
components.