GuardAurora/
├── App.tsx ← точка входа
├── app.json ← Expo конфиг
├── package.json ← зависимости (Expo 52)
├── babel.config.js
├── tsconfig.json
├── assets/
│ └── logo.png ← логотип GuardAurora
└── src/
├── theme/index.ts ← цвета, отступы, радиусы
├── store/AppContext.tsx ← глобальное состояние
├── hooks/
│ ├── useAudioMonitor.ts ← ИИ-анализ микрофона
│ ├── useLocation.ts ← GPS трекинг
│ └── useShakeDetector.ts ← тихий SOS (встряска)
├── components/ui.tsx ← UI: PulseRing, SoundWave, кнопки
├── screens/
│ ├── HomeScreen.tsx ← главный экран с SOS
│ ├── MapScreen.tsx ← карта + безопасные маршруты
│ ├── ChatScreen.tsx ← ИИ чат (Claude API)
│ ├── ContactsScreen.tsx ← доверенные контакты
│ └── HistoryScreen.tsx ← журнал событий
└── navigation/index.tsx ← bottom tab навигация
Файл → Открыть папку → выбери GuardAurora
Ctrl + ` (или Terminal → New Terminal)
npm installnpx expo startПосле этого в терминале появится QR-код.
- Скачай Expo Go из App Store (iPhone) или Play Store (Android)
- iPhone: открой камеру и наведи на QR-код
- Android: открой Expo Go → нажми "Scan QR code"
- Приложение запустится на телефоне!
| Действие | Результат |
|---|---|
| Нажать большую кнопку SOS | Отсчёт 3 сек → активация SOS |
| Нажать "Отменить" во время отсчёта | Отмена SOS |
| Встряхнуть телефон 3 раза | Тихий SOS (без нажатий) |
| Кнопка "Включить мониторинг" | ИИ слушает микрофон |
| Вкладка Карта → "Определить местоположение" | GPS координаты |
| Вкладка Карта → нажать на место | Построить маршрут |
| Вкладка ИИ Чат | Общение с GuardAurora AI |
| Вкладка Контакты → "+" | Добавить доверенный контакт |
npx expo start --clearnpm install --legacy-peer-depsУдали и переустанови Expo Go из магазина.
В tsconfig.json уже отключён строгий режим — всё должно работать.
В src/store/AppContext.tsx в функции activateSOS() добавь:
await fetch('https://api.twilio.com/2010-04-01/Accounts/ACCOUNT_SID/Messages.json', {
method: 'POST',
headers: {
'Authorization': 'Basic ' + btoa('ACCOUNT_SID:AUTH_TOKEN'),
'Content-Type': 'application/x-www-form-urlencoded',
},
body: `To=${contact.phone}&From=+1НОМЕР&Body=🚨 SOS! ${имя} в опасности. GPS: ${latitude},${longitude}`,
});npx expo install expo-notificationsnpx expo install @react-native-async-storage/async-storageВсе цвета в src/theme/index.ts:
Colors.rose // #e8547a — SOS, главный акцент
Colors.lavender // #c084fc — мониторинг, навигация
Colors.mint // #67e8c4 — безопасность, GPS
Colors.danger // #ff4757 — угроза, тревога
Colors.bg // #0d0118 — тёмный фон