montana/Русский/Сайт/MontanaApp/README.md

120 lines
3.9 KiB
Markdown
Raw Normal View History

# Montana iOS App
Нативное iOS приложение для Montana Protocol.
## Функции
- **Чаты** — P2P мессенджер между контактами
- **Кошелёк Ɉ** — баланс и присутствие (1 сек = 1 Ɉ)
- **Контакты** — полный импорт из iOS телефонной книги
- **Переводы** — отправка Ɉ по номеру телефона
- **Юнона AI** — чат с AI ассистентом
- **Авторизация** — через Telegram бот @junomontanaagibot
## Структура
```
MontanaApp/
├── Montana/
│ ├── Sources/
│ │ ├── App.swift # Точка входа + AppState
│ │ ├── Models.swift # Модели данных (User, Contact, P2PMessage)
│ │ ├── API.swift # API клиент
│ │ ├── ContentView.swift # Главный view + TabView
│ │ └── Views/
│ │ ├── LoginView.swift # Экран входа через Telegram
│ │ ├── ChatsView.swift # Список чатов (P2P мессенджер)
│ │ ├── WalletView.swift # Кошелёк + присутствие
│ │ ├── ContactsView.swift # Контакты + импорт
│ │ ├── ChatView.swift # Чат с Юноной AI
│ │ └── SettingsView.swift # Настройки
│ ├── Assets.xcassets/ # Цвета и иконки
│ └── Info.plist # Конфигурация (com.montana.app)
├── server_p2p_api.py # API endpoints для P2P (добавить на сервер)
└── README.md
```
## Создание Xcode проекта
### 1. Создать проект в Xcode
```
File → New → Project → iOS → App
- Product Name: Montana
- Team: [Ваш аккаунт]
- Organization Identifier: com.montana
- Interface: SwiftUI
- Language: Swift
- Storage: None
- Убрать все галочки (Tests, Core Data)
```
### 2. Заменить файлы
1. Удалить автосгенерированные файлы (`ContentView.swift`, `MontanaApp.swift`)
2. Скопировать содержимое `Sources/` в проект
3. Заменить `Assets.xcassets`
4. Заменить `Info.plist`
### 3. Добавить Contacts Framework
```
Project → Target → Build Phases → Link Binary With Libraries
→ + → Contacts.framework
```
### 4. Настроить Signing
```
Project → Target → Signing & Capabilities
- Team: [Выбрать]
- Bundle Identifier: com.montana.app
```
### 5. Запуск
```
⌘ + R — Simulator
⌘ + R с подключённым iPhone — на устройстве
```
## API
Приложение использует API на `http://72.56.102.240`:
### Пользователь
- `GET /api/user` — данные пользователя
- `GET /api/login-status` — статус входа
### Контакты
- `GET /api/contacts` — список контактов
- `POST /api/contacts` — сохранить контакт
### P2P Мессенджер
- `GET /api/conversations` — список чатов с последним сообщением
- `GET /api/messages?with={phone}` — сообщения с контактом
- `POST /api/messages` — отправить сообщение (body: `{to_phone, content}`)
### Кошелёк
- `POST /api/presence` — синхронизация присутствия
- `POST /api/transfer` — перевод Ɉ
### Юнона AI
- `POST /api/chat` — сообщение Юноне
## App Store
### Требования
- Apple Developer Account ($99/год)
- Иконка 1024x1024
- Скриншоты всех размеров
### Публикация
```
Product → Archive → Distribute App → App Store Connect
```
## Лицензия
Montana Protocol © 2026