APAW Agent Sync 3bcc705e3b docs: add deployment guides, audit reports, and production sync scripts
- BRAINYCP_DEPLOY_GUIDE.md: complete human deployment guide
- AI_DEPLOY_CONTEXT.md: machine-readable deploy instructions for AI agents
- sync-production.sh: universal deployment script (full/quick/status/logs/backup)
- DEPLOY_PLAN.md: step-by-step deployment plan
- DEPLOY_AUDIT_REPORT.md: server audit results
- MIGRATION_AUDIT_REPORT.md: MySQL migration complexity analysis
- SERVER_AUDIT_REPORT.md: server environment audit
- Update README.md with BrainyCP deploy workflow and Git sync instructions

Refs: production server 46.175.149.131, domain tenerifeprop.es
2026-05-13 23:44:38 +01:00

TenerifeProp

Агентство недвижимости на острове Тенерифе (Канарские острова, Испания).

🚀 Быстрый старт с Docker

# Сборка и запуск
docker-compose up -d --build

# Приложение будет доступно на http://localhost:8080

📦 Локальная разработка

Требования

  • Bun >= 1.0.0
  • Node.js >= 18 (опционально)

Установка

# Установка зависимостей
bun install

# Инициализация базы данных
bun run db:init

# Заполнение тестовыми данными
bun run db:seed

# Запуск сервера разработки
bun run dev

Доступные скрипты

bun run dev       # Запуск в режиме разработки
bun run start     # Запуск в production режиме
bun run db:init   # Инициализация БД
bun run db:seed   # Заполнение тестовыми данными
bun run build     # Сборка проекта
bun run test      # Запуск тестов

📁 Структура проекта

TenerifeProp/
├── public/                 # Статические файлы
│   ├── index.html          # Главная страница
│   ├── property.html       # Страница объекта
│   ├── admin.html          # Админ-панель
│   ├── css/                # Стили
│   └── js/                 # JavaScript
├── src/
│   ├── server/             # Backend (Bun + Hono)
│   ├── db/                 # Схема БД
│   ├── types/              # TypeScript типы
│   ├── data/               # JSON данные
│   └── i18n/               # Переводы
├── docs/                   # Документация
├── Dockerfile              # Docker образ
├── docker-compose.yml      # Docker Compose
├── package.json            # Зависимости
└── tsconfig.json           # TypeScript конфиг

🔧 API Endpoints

Недвижимость

Метод Endpoint Описание
GET /api/properties Список объектов
GET /api/properties/:slug Детали объекта
GET /api/properties/featured Рекомендуемые
POST /api/properties Создать (admin)
PUT /api/properties/:id Обновить (admin)
DELETE /api/properties/:id Удалить (admin)

Заявки

Метод Endpoint Описание
GET /api/leads Список заявок
POST /api/leads Создать заявку
PUT /api/leads/:id/status Изменить статус

Контент

Метод Endpoint Описание
GET /api/testimonials Отзывы
GET /api/faq FAQ
GET /api/services Услуги
GET /api/settings Настройки

🗄️ База данных

SQLite база данных автоматически создается в ./data/tenerifeprop.db.

Основные таблицы

  • properties - Объекты недвижимости
  • leads - Заявки клиентов
  • users - Пользователи системы
  • testimonials - Отзывы
  • faq - Вопросы-ответы
  • services - Услуги
  • settings - Настройки сайта

🌍 Мультиязычность

Поддерживаемые языки:

  • 🇪🇸 Испанский (ES) - основной
  • 🇷🇺 Русский (RU)

Переключение языка через ?lang=ru или кнопку в интерфейсе.

👤 Учётные данные по умолчанию

Email: admin@tenerifeprop.com
Password: admin123

🌐 Деплой на BrainyCP (Production)

Инфраструктура

  • Сервер: Ubuntu 22.04, BrainyCP (пользователь nero)
  • Домен: https://tenerifeprop.es
  • Runtime: Bun v1.3.14
  • Порт: 3003 (reverse proxy через Nginx)
  • SSL: Let's Encrypt (управляется BrainyCP)

Синхронизация (Git workflow)

Проект использует три ветки:

  • dev — разработка
  • main — стабильный релиз
  • production — ветка продакшена на BrainyCP
# 1. Разработка
bun run dev          # Локально
git checkout dev
git commit -m "feat: ..."
git push origin dev

# 2. Релиз → main
git checkout main
git merge dev
git push origin main

# 3. Деплой → production
git push origin main:production  # Или PR через Gitea

# 4. Обновление на сервере
ssh root@46.175.149.131
cd /home/nero/sites/tenerifeprop.es
./scripts/sync-production.sh full

Скрипты на сервере

  • ./scripts/sync-production.sh full — полный деплой (git pull + install + restart)
  • ./scripts/sync-production.sh quick — быстрый рестарт
  • ./scripts/sync-production.sh status — статус сервера
  • ./scripts/sync-production.sh backup — бэкап БД
  • ./scripts/sync-production.sh logs — логи в реальном времени

Права доступа (BrainyCP standard)

/home/nero                    root:root  755
/home/nero/sites             root:root  755
/home/nero/sites/tenerifeprop.es   nero:nero  755

Документация для DevOps

  • docs/BRAINYCP_DEPLOY_GUIDE.md — полное руководство по деплою
  • docs/AI_DEPLOY_CONTEXT.md — контекст для ИИ-агентов
  • DEPLOY_AUDIT_REPORT.md — аудит перед деплоем
  • MIGRATION_AUDIT_REPORT.md — анализ миграции на MySQL/Node.js

📄 Лицензия

MIT License - UniqueSoft

Description
Real Estate Agency Website for Tenerife Island
Readme 3.5 MiB
Languages
HTML 60.8%
TypeScript 20.4%
JavaScript 11.3%
CSS 5.2%
Shell 1.6%
Other 0.7%