# Новая Планета — Frontend (Android)
Визуальное расписание для детей с РАС
Мобильное приложение на Android с ИИ-помощником "Планета Земля"
---
## 📱 О проекте
**Новая Планета** — Android-приложение, помогающее детям с расстройством аутистического спектра (РАС) через визуальные инструменты, расписания и систему наград.
### Основные возможности
- 📅 **Визуальное расписание**: день/неделя с карточками действий
- ⏱️ **Визуальный таймер**: круговой таймер с цветовой индикацией
- 🎁 **Система наград**: поощрения за выполненные задания
- 🌍 **ИИ-агент “Земля”**: ответы и генерация расписаний
- 📚 **Библиотека изображений**: загрузка картинок
- 👨👩👧 **Роли**: ребёнок, родитель, педагог
---
## 🛠️ Tech Stack
### Core
- **Kotlin** 1.9+
- **Jetpack Compose**
- **Material Design 3**
- **Coroutines + Flow**
### Architecture
- **Clean Architecture**: Domain / Data / UI
- **MVVM**
- **Offline-first через Room**
### Libraries
- Room
- Retrofit
- OkHttp
- Kotlinx Serialization
- Navigation Component
- Koin/Hilt
- Coil
- Lottie
---
## 📂 Структура проекта
```
new-planet-android/
├── app/
│ └── src/main/java/com/novayaplaneta/
│ ├── MainActivity.kt
│ ├── di/
│ ├── ui/
│ │ ├── screens/
│ │ │ ├── schedule/
│ │ │ ├── task/
│ │ │ ├── timer/
│ │ │ ├── rewards/
│ │ │ ├── ai/
│ │ │ └── settings/
│ │ ├── components/
│ │ └── theme/
│ ├── domain/
│ │ ├── model/
│ │ ├── repository/
│ │ └── usecase/
│ └── data/
│ ├── local/
│ ├── remote/
│ └── repository/
│
├── build.gradle.kts
├── README.md
└── CLAUDE.md
```
---
## 🚀 Быстрый старт
### Требования
- Android Studio Hedgehog+
- JDK 17+
- Android SDK 34+
- Kotlin 1.9+
### Установка (после генерации проекта в Cursor)
```bash
git clone https://git.bro-js.ru/Glevel/New-planet.git
cd New-planet
./gradlew build
./gradlew installDebug
```
### Настройка среды
```
# local.properties
sdk.dir=/path/to/Android/Sdk
BACKEND_BASE_URL=https://api.novayaplaneta.ru
```
---
## 🔌 Retrofit API (пример структуры)
```kotlin
interface BackendApi {
@POST("api/v1/auth/login")
suspend fun login(
@Body request: LoginRequest
): Response
@GET("api/v1/schedules")
suspend fun getSchedules(
@Header("Authorization") token: String
): Response>
@POST("api/v1/ai/chat")
suspend fun chatWithAI(
@Header("Authorization") token: String,
@Body request: ChatRequest
): Response
}
```
---
## 🎨 Accessibility (РАС)
### Дизайн принципы
- Крупные кликабельные элементы (48dp+)
- Высокая контрастность (WCAG AAA)
- Чёткие простые иконки
- Цветовое кодирование состояний
- Плавные анимации без мигания
### Контрастность
**Светлая тема**
- Фон: #FFFFFF, #F5F5F5
- Текст: #0A0A0A
- Акцент: #4CAF50, #FF6B35
**Тёмная тема**
- Фон: #0A0A0A
- Текст: #FFFFFF
- Акцент: #4CAF50, #FFD700
---
## 🧪 Тестирование
```bash
./gradlew test
./gradlew connectedAndroidTest
```
---
## 🔗 Репозиторий проекта
Основная ссылка:
👉 **Frontend Android:**
https://git.bro-js.ru/Glevel/New-planet
Backend/AI будут добавлены позже.
---
## 📄 Лицензия
MIT License
---
## 👥 Команда
Разработано с ❤️ командой **Новая Планета**