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

120 lines
3.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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