Antigravity
aeedb2846f
CI / Lint, Unit Tests & Build (push) Failing after 1m21s
CI / Deploy production (on server) (push) Has been skipped
feat: App mobile Expo + API mobile dédiée
memento-mobile/ (Expo + React Native + expo-router):
- Auth: login email/password → Bearer token (expo-secure-store)
- Layout: guard auth → redirect /(auth)/login ou /(tabs)/home
- Tabs: Accueil, Carnets, Recherche, Profil
- Screens: login, home (recent notes + quick actions), notebooks list,
note viewer (WebView HTML), search (texte), notebook detail, profile
- Design: tokens brand-accent (#A47148), ink, concrete, paper, border
- lib/config.ts: API_URL dev/prod configurable
- lib/api.ts: apiFetch avec Bearer token automatique
- lib/store.ts: Zustand auth store (login/logout/restore)
memento-note/ (API mobile dédiée):
- lib/mobile-auth.ts: createMobileToken / verifyMobileToken (HMAC-SHA256, 90j)
- POST /api/mobile/auth/login: email+password → token + user
- GET /api/mobile/auth/me: valider token, retourner profil
- GET /api/mobile/notebooks: liste carnets avec nb notes
- GET /api/mobile/notes: notes récentes (filtre par carnet optionnel)
- GET /api/mobile/notes/[id]: contenu complet d'une note
- GET /api/mobile/search: recherche fulltext titre+contenu
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-29 15:53:13 +00:00
..
2026-05-29 15:14:01 +00:00
2026-05-28 21:49:32 +00:00
2026-05-29 11:24:56 +00:00
2026-05-16 23:38:11 +00:00
2026-05-24 23:03:16 +00:00
2026-05-29 12:46:57 +00:00
2026-05-24 23:03:16 +00:00
2026-05-16 12:59:30 +00:00
2026-05-29 15:14:01 +00:00
2026-05-29 11:24:56 +00:00
2026-05-29 15:53:13 +00:00
2026-05-28 21:18:51 +00:00
2026-05-16 21:56:25 +00:00
2026-04-20 22:48:06 +02:00
2026-05-09 14:40:36 +00:00
2026-05-17 17:29:51 +00:00
2026-05-07 22:29:02 +00:00
2026-05-29 14:20:50 +00:00
2026-05-24 14:27:29 +00:00
2026-04-20 22:48:06 +02:00
2026-05-24 14:27:29 +00:00
2026-05-24 14:27:29 +00:00
2026-05-27 21:39:21 +00:00
2026-05-24 14:27:29 +00:00
2026-05-24 14:27:29 +00:00
2026-05-23 10:00:44 +00:00
2026-05-23 20:26:25 +00:00
2026-04-20 22:48:06 +02:00
2026-04-20 22:48:06 +02:00
2026-05-24 14:27:29 +00:00
2026-04-20 22:48:06 +02:00
2026-04-20 22:48:06 +02:00
2026-05-27 22:01:21 +00:00
2026-05-10 10:52:26 +00:00
2026-05-16 12:59:30 +00:00
2026-05-09 14:40:36 +00:00
2026-05-24 19:12:36 +00:00
2026-05-27 19:45:15 +00:00
2026-05-24 14:27:29 +00:00
2026-04-20 22:48:06 +02:00
2026-05-03 18:41:38 +00:00
2026-05-24 14:27:29 +00:00
2026-05-16 12:59:30 +00:00
2026-05-17 17:17:42 +00:00
2026-05-24 14:27:29 +00:00
2026-05-27 19:45:15 +00:00
2026-05-14 17:43:21 +00:00
2026-05-16 12:59:30 +00:00
2026-05-16 18:50:34 +00:00
2026-05-24 14:27:29 +00:00
2026-05-17 17:29:51 +00:00
2026-05-22 18:33:55 +00:00
2026-05-07 22:29:02 +00:00
2026-05-24 18:57:33 +00:00
2026-05-27 21:54:15 +00:00
2026-05-27 21:54:15 +00:00
2026-05-24 14:27:29 +00:00
2026-05-29 14:20:50 +00:00
2026-05-16 21:10:26 +00:00
2026-05-24 19:05:39 +00:00
2026-05-24 14:27:29 +00:00
2026-05-23 10:00:44 +00:00
2026-04-20 22:48:06 +02:00
2026-05-24 23:03:16 +00:00
2026-05-24 19:12:36 +00:00
2026-05-16 23:38:11 +00:00
2026-05-03 18:41:38 +00:00
2026-05-24 14:27:29 +00:00
2026-05-24 19:22:20 +00:00
2026-05-09 07:28:03 +00:00
2026-05-24 14:27:29 +00:00
2026-05-24 14:27:29 +00:00
2026-05-24 14:27:29 +00:00
2026-05-27 19:45:15 +00:00
2026-05-27 19:45:15 +00:00
2026-05-24 18:57:33 +00:00
2026-05-16 12:59:30 +00:00
2026-05-24 14:27:29 +00:00
2026-05-29 11:24:56 +00:00
2026-05-16 18:50:34 +00:00
2026-05-08 14:31:08 +00:00
2026-05-17 17:17:42 +00:00
2026-04-20 22:48:06 +02:00
2026-05-29 11:24:56 +00:00
2026-05-24 14:27:29 +00:00
2026-04-20 22:48:06 +02:00
2026-05-29 15:14:01 +00:00
2026-05-27 21:47:50 +00:00
2026-05-27 19:45:15 +00:00
2026-05-28 21:18:51 +00:00
2026-05-16 12:59:30 +00:00
2026-05-23 09:51:30 +00:00
2026-05-24 18:57:33 +00:00
2026-05-27 19:45:15 +00:00
2026-05-24 18:57:33 +00:00
2026-05-27 21:39:21 +00:00
2026-05-27 19:45:15 +00:00
2026-05-07 22:29:02 +00:00
2026-05-24 14:27:29 +00:00
2026-05-22 17:18:48 +00:00