Skip to content

Быстрый старт

Требования

  • Node.js 20+
  • npm
  • Expo CLI (npx expo)
  • EAS CLI (npx eas)
  • iOS Simulator или физическое устройство с Expo Go / dev client

Установка

bash
# Клонировать репозиторий
git clone https://github.com/happ-ai/saas-mobile.git
cd saas-mobile

# Установить зависимости
npm install --legacy-peer-deps

Peer dependency конфликты

Используй --legacy-peer-deps при конфликтах React 19.1 vs 19.2.

Переменные окружения

Создай .env в корне проекта:

bash
EXPO_PUBLIC_API_URL=https://api.dev.happ.tools
EXPO_PUBLIC_WS_URL=wss://api.dev.happ.tools
EXPO_PUBLIC_SENTRY_DSN=...

Для локальной разработки с saas-api:

bash
EXPO_PUBLIC_API_URL=http://localhost:3000
EXPO_PUBLIC_WS_URL=ws://localhost:3000

Запуск

bash
# Запуск Expo dev сервера
npx expo start

# С очисткой кэша
npx expo start --clear

# С debug-режимом
EXPO_PUBLIC_DEBUG=1 expo start

Сборка

Development

bash
# iOS dev build
eas build --profile development --platform ios

# Android dev build
eas build --profile development --platform android

# Обе платформы
eas build --profile development

Production

bash
# iOS production build
eas build --profile production --platform ios

# Android production build
eas build --profile production --platform android

# Отправка в App Store / Play Store
eas submit --platform ios
eas submit --platform android

Тестирование на устройстве

  1. Собери development client: eas build --profile development
  2. Установи на устройство/симулятор
  3. Запусти dev сервер: npx expo start --dev-client
  4. Отсканируй QR-код для подключения

Команды для проверки кода

bash
# TypeScript проверка типов
npm run typecheck

# ESLint
npm run lint
npm run lint:fix

# Prettier
npm run format
npm run format:check

# Все проверки разом
npm run validate

Скрипты в package.json

КомандаОписание
npm startЗапуск Expo dev сервера
npm run start:debugЗапуск с EXPO_PUBLIC_DEBUG=1
npm run lintESLint проверка
npm run lint:fixESLint с автофиксом
npm run typechecktsc --noEmit
npm run formatPrettier форматирование
npm run validatetypecheck + lint + format:check
npm run install:devУстановить dev build на устройство
npm run install:prodУстановить prod build на устройство