92e67d0769
- Stack : Expo Router, Axios, Zustand, React Native Paper (thème sombre), date-fns - Sécurité : secrets dans Android Keystore via expo-secure-store, TLS obligatoire, headers X-N8N-API-KEY + X-App-Token injectés par intercepteur Axios - API : client.ts centralisé + workflows.ts + executions.ts (TypeScript strict) - Store : Zustand appStore avec chargement depuis secure store au démarrage - Hooks : usePolling (générique), useWorkflows, useExecutions - Composants : StatusBadge, WorkflowCard, ExecutionCard, SkeletonLoader - Screens : Dashboard, Workflows, Executions, Logs (détail exécution), Settings - Navigation Expo Router : 4 tabs + stack Logs + écran Setup initial - Docs : INSTALL.md, UPDATE.md, BACKUP.md, HAPROXY.md, SECURITY.md Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
35 lines
902 B
JSON
35 lines
902 B
JSON
{
|
|
"name": "n8n-pilot",
|
|
"version": "1.0.0",
|
|
"main": "expo-router/entry",
|
|
"scripts": {
|
|
"start": "expo start",
|
|
"android": "expo start --android",
|
|
"ios": "expo start --ios",
|
|
"web": "expo start --web"
|
|
},
|
|
"dependencies": {
|
|
"axios": "^1.16.1",
|
|
"date-fns": "^4.2.1",
|
|
"expo": "~54.0.33",
|
|
"expo-local-authentication": "~17.0.8",
|
|
"expo-router": "~6.0.23",
|
|
"expo-secure-store": "~15.0.8",
|
|
"expo-status-bar": "~3.0.9",
|
|
"react": "19.1.0",
|
|
"react-native": "0.81.5",
|
|
"react-native-gesture-handler": "~2.28.0",
|
|
"react-native-paper": "^5.15.2",
|
|
"react-native-reanimated": "~4.1.1",
|
|
"react-native-safe-area-context": "~5.6.0",
|
|
"react-native-screens": "~4.16.0",
|
|
"zustand": "^5.0.13"
|
|
},
|
|
"private": true,
|
|
"devDependencies": {
|
|
"@types/react": "^19.2.15",
|
|
"@types/react-native": "^0.72.8",
|
|
"typescript": "^6.0.3"
|
|
}
|
|
}
|