Loading...
Loading...
Compare original and translation side by side
├── assets/
├── scripts/
├── src/
│ ├── app/ # Expo Router routes ONLY — every file is a route
│ │ ├── api/ # server API routes, grouped here
│ │ │ ├── user+api.ts
│ │ │ └── settings+api.ts
│ │ ├── _layout.tsx
│ │ ├── _layout.web.tsx # platform-specific layout
│ │ ├── index.tsx
│ │ └── settings.tsx
│ ├── components/ # reusable UI: button, card, table…
│ │ ├── table/ # complex component → folder + index.tsx
│ │ │ ├── cell.tsx
│ │ │ └── index.tsx
│ │ ├── bar-chart.tsx
│ │ ├── bar-chart.web.tsx # platform-specific variant
│ │ └── button.tsx
│ ├── screens/ # screen bodies that route files render
│ │ ├── home/
│ │ │ ├── card.tsx # used only by Home — not shared
│ │ │ └── index.tsx # rendered by src/app/index.tsx
│ │ └── settings.tsx
│ ├── server/ # server-only helpers used by app/api
│ │ ├── auth.ts
│ │ └── db.ts
│ ├── utils/ # standalone helpers + colocated tests
│ │ ├── format-date.ts
│ │ └── format-date.test.ts
│ ├── hooks/ # reusable hooks: use-theme.ts…
│ ├── constants.ts
│ └── theme.ts
├── app.json
├── eas.json
└── package.json├── assets/
├── scripts/
├── src/
│ ├── app/ # Expo Router 路由专属目录——每个文件对应一个路由
│ │ ├── api/ # 服务端API路由,集中存放于此
│ │ │ ├── user+api.ts
│ │ │ └── settings+api.ts
│ │ ├── _layout.tsx
│ │ ├── _layout.web.tsx # 平台专属布局
│ │ ├── index.tsx
│ │ └── settings.tsx
│ ├── components/ # 可复用UI组件:按钮、卡片、表格等
│ │ ├── table/ # 复杂组件→文件夹+index.tsx
│ │ │ ├── cell.tsx
│ │ │ └── index.tsx
│ │ ├── bar-chart.tsx
│ │ ├── bar-chart.web.tsx # 平台专属变体
│ │ └── button.tsx
│ ├── screens/ # 路由文件渲染的页面主体
│ │ ├── home/
│ │ │ ├── card.tsx # 仅Home页面使用——不共享
│ │ │ └── index.tsx # 由src/app/index.tsx渲染
│ │ └── settings.tsx
│ ├── server/ # app/api使用的服务端专属工具
│ │ ├── auth.ts
│ │ └── db.ts
│ ├── utils/ # 独立工具函数+同目录测试文件
│ │ ├── format-date.ts
│ │ └── format-date.test.ts
│ ├── hooks/ # 可复用钩子:use-theme.ts等
│ ├── constants.ts
│ └── theme.ts
├── app.json
├── eas.json
└── package.jsonsrc/src/appsrc/src/appsrc/app/src/app/@/*./src/*tsconfig.jsonsrc/appsrc/app/src/app/tsconfig.json@/*./src/*src/appbar-chart.tsxcreate-expo-appindex.tsx@/components/tablebar-chart.tsxcreate-expo-appindex.tsx@/components/tableapp/screens/import { Home } from "@/screens/home";
export default function HomeScreen() {
// route-specific concerns only — e.g. read url params here
return <Home />;
}screens/home/components/app/screens/import { Home } from "@/screens/home";
export default function HomeScreen() {
// 仅处理路由相关逻辑——例如在此读取URL参数
return <Home />;
}screens/home/components/+apiapp/process.env.XEXPO_PUBLIC_*app/api//api/user/api/settings/user/usersrc/server/+apiserver/app/+apiprocess.env.XEXPO_PUBLIC_*app/api//api/user/api/settings/user/usersrc/server/+apiserver/Platform.selectPlatform.OSif/elsebar-chart.tsxbar-chart.web.tsx@/components/bar-chart.ios.android.native.webPlatform.selectPlatform.OSif/elsebar-chart.tsxbar-chart.web.tsx@/components/bar-chart.ios.android.native.webStyleSheet.create({ ... }).stylesformat-date.test.tsformat-date.ts__tests__/StyleSheet.create({ ... }).stylesformat-date.test.tsformat-date.ts__tests__/AGENTS.mdCLAUDE.md.claude/src/app.jsonapp.config.tseas.jsonpackage.jsonassets/scripts/src/AGENTS.mdCLAUDE.md.claude/src/app.jsonapp.config.tseas.jsonpackage.jsonassets/scripts/