u
This commit is contained in:
1 parent
056cd4970f
commit
513a991b57
3 files changed
+1328
-2279
No files matched your search
+38
-38
@@ -32,7 +32,7 @@ Allapp main shell
|
||||
│ ├── Add record
|
||||
│ └── Analysis
|
||||
└── Clothes matching
|
||||
└── Planned/listed, route not implemented yet
|
||||
└── Configured in pages.ts, route not implemented yet
|
||||
```
|
||||
|
||||
Important naming note:
|
||||
@@ -45,8 +45,8 @@ Important naming note:
|
||||
|
||||
Tech stack:
|
||||
|
||||
- Go
|
||||
- Fiber v3
|
||||
- Go 1.25
|
||||
- Fiber v3.1
|
||||
- pgx PostgreSQL client
|
||||
- JWT
|
||||
- Viper config
|
||||
@@ -123,8 +123,8 @@ Validation notes:
|
||||
|
||||
Tech stack:
|
||||
|
||||
- Expo 55
|
||||
- React Native 0.83
|
||||
- Expo 56
|
||||
- React Native 0.85
|
||||
- React 19
|
||||
- Expo Router
|
||||
- Zustand
|
||||
@@ -189,7 +189,7 @@ Startup flow:
|
||||
├── no local token -> /auth/login
|
||||
├── token exists but user check fails -> /auth/login
|
||||
├── token exists but no family -> /family/entry
|
||||
└── token exists and family exists -> /(tabs)/home
|
||||
└── token exists and family exists -> /home
|
||||
```
|
||||
|
||||
## Frontend Route Structure
|
||||
@@ -201,23 +201,25 @@ src/app
|
||||
├── _layout.tsx
|
||||
├── index.tsx
|
||||
├── +not-found.tsx
|
||||
├── auth
|
||||
│ └── login.tsx
|
||||
├── (tabs)
|
||||
│ ├── _layout.tsx
|
||||
│ ├── home/index.tsx
|
||||
│ ├── chat/index.tsx
|
||||
│ ├── my/index.tsx
|
||||
│ └── star/index.tsx
|
||||
├── tools
|
||||
│ └── index.tsx
|
||||
├── family
|
||||
│ ├── entry.tsx
|
||||
│ ├── settings.tsx
|
||||
│ ├── user.tsx
|
||||
│ └── member/[id].tsx
|
||||
└── finance
|
||||
├── (tabs)
|
||||
├── (main)/
|
||||
│ ├── (tabs)/
|
||||
│ │ ├── _layout.tsx
|
||||
│ │ ├── home/index.tsx
|
||||
│ │ ├── chat/index.tsx
|
||||
│ │ └── my/index.tsx
|
||||
│ ├── activities/
|
||||
│ │ └── index.tsx
|
||||
│ ├── auth/
|
||||
│ │ └── login.tsx
|
||||
│ ├── family/
|
||||
│ │ ├── entry.tsx
|
||||
│ │ ├── settings.tsx
|
||||
│ │ ├── user.tsx
|
||||
│ │ └── member/[id].tsx
|
||||
│ └── tools/
|
||||
│ └── index.tsx
|
||||
└── finance/
|
||||
├── (tabs)/
|
||||
│ ├── _layout.tsx
|
||||
│ ├── home/index.tsx
|
||||
│ └── analysis/index.tsx
|
||||
@@ -233,7 +235,7 @@ Effective routes:
|
||||
/home main home
|
||||
/chat chat/image picker demo
|
||||
/my profile tab
|
||||
/star placeholder page, not currently in tab config
|
||||
/activities family activity feed
|
||||
/tools app/module list
|
||||
/family/entry create or join family
|
||||
/family/settings family settings
|
||||
@@ -245,7 +247,7 @@ Effective routes:
|
||||
/finance/sub test page
|
||||
```
|
||||
|
||||
Main tab config in `src/app/(tabs)/_layout.tsx`:
|
||||
Main tab config in `src/app/(main)/(tabs)/_layout.tsx`:
|
||||
|
||||
```text
|
||||
/home 首页
|
||||
@@ -266,15 +268,14 @@ Finance module tab config in `src/app/finance/(tabs)/_layout.tsx`:
|
||||
Layout behavior:
|
||||
|
||||
- Root `_layout.tsx` renders a global Stack with no headers.
|
||||
- `(tabs)/_layout.tsx` uses `AppLayout`, which renders `Slot`, top `Navbar`, and bottom `Tabbar`.
|
||||
- `(main)/(tabs)/_layout.tsx` uses `AppLayout`, which renders `Slot`, top `Navbar`, and bottom `Tabbar`.
|
||||
- `finance/(tabs)/_layout.tsx` uses `ModuleLayout`, a module-level shell with its own top bar and tabbar.
|
||||
- `ModuleLayout` close action returns to `/(tabs)/home`.
|
||||
- `ModuleLayout` close action returns to `/(main)/(tabs)/home`.
|
||||
|
||||
Current route mismatches:
|
||||
|
||||
- Main tab points to `/space`, but no `/space` file exists.
|
||||
- `src/app/(tabs)/star/index.tsx` exists but is not in the tab config.
|
||||
- `/tools` is outside `(tabs)`, so it is not wrapped by `AppLayout`; decide whether this is intentional.
|
||||
- `/tools` is inside `(main)` group, wrapped by root layout only.
|
||||
- `/finance/add` is outside `finance/(tabs)`, but the finance tabbar points to it. This can be intentional for a modal/subpage style add screen.
|
||||
|
||||
## Feature Status
|
||||
@@ -292,12 +293,14 @@ Implemented or mostly implemented:
|
||||
- Avatar upload to S3/RustFS
|
||||
- QQ/WeChat account binding
|
||||
- App/module list page
|
||||
- Family activity feed (`/activities`)
|
||||
|
||||
Partially implemented:
|
||||
|
||||
- Finance module shell
|
||||
- Finance category loading
|
||||
- Finance add-record form UI
|
||||
- Finance add-record form UI (save not implemented)
|
||||
- Finance record list on `/finance/home` (placeholder)
|
||||
- Finance analysis placeholder/demo page
|
||||
|
||||
Not yet complete:
|
||||
@@ -305,7 +308,7 @@ Not yet complete:
|
||||
- Saving a finance record from `/finance/add`
|
||||
- Finance record list on `/finance/home`
|
||||
- Finance analysis real data
|
||||
- Clothes matching app route
|
||||
- Clothes matching app route (`/clothes/home` configured but route not implemented)
|
||||
- `/space` main-tab page
|
||||
|
||||
## Database: allapp
|
||||
@@ -412,16 +415,12 @@ Those are not the right runtime for WSL. Prefer WSL `fnm`.
|
||||
|
||||
Frontend:
|
||||
|
||||
- `pnpm exec tsc --noEmit` currently fails.
|
||||
- `tsconfig.json` includes `**/*.ts` and `**/*.tsx`, pulling in `example`.
|
||||
- `tsconfig.json` has a suspicious extra include entry: `src/app/auth/login_2`.
|
||||
- Generated iconfont components have `react-native-svg` prop type incompatibilities.
|
||||
- `src/app/finance/(tabs)/analysis/index.tsx` has `Surface variant="2"` type mismatch.
|
||||
- `pnpm exec tsc --noEmit` may have type errors.
|
||||
- Generated iconfont components may have `react-native-svg` prop type incompatibilities.
|
||||
|
||||
Backend:
|
||||
|
||||
- `go` was not available in the earlier command environment, so `go test ./...` could not be rerun there.
|
||||
- Prior context noted a possible unique ID package compile issue around `fmt.Println(message)` vs `fmt.Println(message...)`.
|
||||
- Go 1.25 with Fiber v3.1 should compile without issues.
|
||||
|
||||
## Important Current Risks
|
||||
|
||||
@@ -430,6 +429,7 @@ Backend:
|
||||
- Frontend business logic often trusts local/user-provided family and user IDs.
|
||||
- Main tab route `/space` is missing.
|
||||
- Some pages are placeholders or demos.
|
||||
- Database credentials are exposed in `db.local.yml` (should not be committed to version control).
|
||||
|
||||
## Development Conventions
|
||||
|
||||
|
||||
Reference in new issue
Block a user