Skip to content

CalistaVerner/IOSapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IOSapp

ToDo-приложение для iOS: список задач, поиск, добавление, редактирование, удаление и отметка выполнения. Данные сохраняются в CoreData, стартовый список загружается из удалённого источника.

Макеты: https://www.figma.com/design/ElcIDP3PIp5iOE4dCtPGmd/Задачи?node-id=0-1&p=f

Возможности

  • список задач с поиском;
  • создание, редактирование и удаление задач;
  • отметка задачи как выполненной;
  • локальное хранение в CoreData;
  • первичная загрузка из DummyJSON или собственного backend;
  • фоновые операции через GCD;
  • unit-тесты для основных компонентов.

Стек

iOS: Swift, SwiftUI, CoreData, URLSession, GCD, XCTest, VIPER.
Backend: Node.js 20, Docker Compose, JSON-хранилище для демо.

Архитектура

Проект разделён на VIPER-модули:

TaskList:   View / Interactor / Presenter / Entity / Router
TaskEditor: View / Interactor / Presenter / Entity / Router

Работа с данными вынесена в TaskRepository: он объединяет CoreData, DummyJSON и backend API.

Backend API

GET    /health
GET    /todos
POST   /todos
PUT    /todos/:id
DELETE /todos/:id

Если backend-хранилище пустое, первый GET /todos загружает стартовые задачи из https://dummyjson.com/todos.

Конфигурация API

Адрес backend задаётся в IOSapp/Info.plist:

<key>API_BASE_URL</key>
<string>https://todo.example.com</string>

Если значение пустое, приложение использует DummyJSON напрямую.

Запуск iOS

git clone https://github.com/CalistaVerner/IOSapp.git
cd IOSapp
open IOSapp.xcodeproj

Дальше в Xcode выбрать scheme IOSapp, iPhone Simulator и нажать Cmd + R.

Тесты:

Cmd + U

Запуск backend

Через Docker:

cd backend
docker compose up -d --build

Проверка:

curl http://localhost:8080/health
curl http://localhost:8080/todos

Остановить:

docker compose down

Через Node.js:

cd backend
npm start

Windows

На Windows можно запустить backend:

cd C:\Users\Aiden\Documents\Repos\IOSapp\backend
docker compose up -d --build
curl.exe http://localhost:8080/health

Сам iOS-проект запускается через Xcode на macOS. Если backend работает на Windows, а симулятор — на Mac в той же сети, укажите в API_BASE_URL IP Windows-машины, например http://192.168.1.50:8080.

Примечание

DEVELOPMENT_TEAM не задан. Для запуска на физическом устройстве нужно выбрать свою команду подписи в Xcode.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors