All checks were successful
continuous-integration/drone/push Build is passing
✨ Major improvements: - Created organized folder structure with utils/, scripts/, backups/, temp/ - Moved Python scripts to scripts/ folder for better organization - Moved utility files (start, stop, update, cli, logs, drone) to utils/ folder - Moved backup files to backups/ folder for cleaner root directory - Added comprehensive README.md files for each new folder - Updated main README.md with new project structure documentation - Enhanced .gitignore with rules for new folders - Added real-time career vacancy counter on homepage - Improved homepage career stats styling with better visibility 🗂️ New folder structure: - utils/ - Project management utilities and tools - scripts/ - Python helper scripts for banners and data - backups/ - Configuration and file backups - temp/ - Temporary files and development data 🎨 UI improvements: - Fixed white text visibility issues on homepage career section - Added dynamic vacancy count from database - Implemented glassmorphism design for career stats card - Better color contrast and hover effects This reorganization makes the project more maintainable and professional.
242 lines
11 KiB
Markdown
242 lines
11 KiB
Markdown
# 🚀 SmartSolTech
|
||
|
||
[](https://drone.smartsoltech.kr/trevor/smartsoltech_site)
|
||
[](https://opensource.org/licenses/MIT)
|
||
[](https://www.python.org/downloads/release/python-3100/)
|
||
[](https://docs.djangoproject.com/en/4.2/)
|
||
|
||
Современная веб-платформа для предоставления IT-услуг с интегрированной системой управления заказами и Telegram-ботом.
|
||
|
||
## 🛠️ Технологический стек
|
||
|
||
<p align="center">
|
||
<img src="https://img.shields.io/badge/Python-3776AB?style=for-the-badge&logo=python&logoColor=white" alt="Python" />
|
||
<img src="https://img.shields.io/badge/Django-092E20?style=for-the-badge&logo=django&logoColor=white" alt="Django" />
|
||
<img src="https://img.shields.io/badge/PostgreSQL-316192?style=for-the-badge&logo=postgresql&logoColor=white" alt="PostgreSQL" />
|
||
<img src="https://img.shields.io/badge/Docker-2496ED?style=for-the-badge&logo=docker&logoColor=white" alt="Docker" />
|
||
<img src="https://img.shields.io/badge/Bootstrap-563D7C?style=for-the-badge&logo=bootstrap&logoColor=white" alt="Bootstrap" />
|
||
<img src="https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black" alt="JavaScript" />
|
||
<img src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white" alt="Telegram" />
|
||
<img src="https://img.shields.io/badge/Drone%20CI-212121?style=for-the-badge&logo=drone&logoColor=white" alt="Drone CI" />
|
||
<img src="https://img.shields.io/badge/HTML5-E34F26?style=for-the-badge&logo=html5&logoColor=white" alt="HTML5" />
|
||
<img src="https://img.shields.io/badge/CSS3-1572B6?style=for-the-badge&logo=css3&logoColor=white" alt="CSS3" />
|
||
</p>
|
||
|
||
## ✨ Основные возможности
|
||
|
||
### 📱 **Веб-платформа**
|
||
- Современный адаптивный интерфейс на Bootstrap 5
|
||
- Система подачи заявок на услуги с QR-кодами
|
||
- Портфолио проектов и услуг
|
||
- Админ-панель для управления контентом
|
||
|
||
### 🤖 **Telegram Bot Integration**
|
||
- Автоматическое уведомление о новых заказах
|
||
- Подтверждение заявок через QR-коды
|
||
- Двусторонняя связь клиент-компания
|
||
- Real-time статусы заказов
|
||
|
||
### 🔧 **DevOps & Автоматизация**
|
||
- Docker контейнеризация
|
||
- CI/CD pipeline с Drone
|
||
- Автоматизированные скрипты развертывания
|
||
- Система резервного копирования
|
||
|
||
## 🚀 Быстрый старт
|
||
|
||
### Требования
|
||
- Docker & Docker Compose
|
||
- Git
|
||
- Python 3.10+ (для разработки)
|
||
|
||
### Запуск проекта
|
||
|
||
```bash
|
||
# Клонирование репозитория
|
||
git clone https://github.com/smartsoltech/smartsoltech.kr.git
|
||
cd smartsoltech.kr
|
||
|
||
# Запуск всех сервисов
|
||
./start
|
||
|
||
# Создание суперпользователя (опционально)
|
||
./cli createsuperuser
|
||
|
||
# Проверка статуса
|
||
./cli status
|
||
```
|
||
|
||
Сайт будет доступен по адресу: http://localhost:8000
|
||
|
||
### Основные команды
|
||
|
||
```bash
|
||
.utils/cli shell # Django shell
|
||
./cli migrate # Применить миграции
|
||
./update # Полное обновление проекта
|
||
./stop # Остановка сервисов
|
||
./logs # Просмотр логов
|
||
```
|
||
|
||
## 📚 Документация
|
||
|
||
| Документ | Описание |
|
||
|----------|----------|
|
||
| [🛠️ Управление скриптами](docs/SCRIPTS_README.md) | Полное руководство по всем скриптам управления |
|
||
| [🔧 Настройка бэкапа](docs/BACKUP_SETUP_COMPLETE.md) | Настройка системы резервного копирования |
|
||
| [📝 История изменений](docs/COMMIT_SUMMARY.md) | Подробная история разработки |
|
||
| [🚀 Развертывание](docs/DEPLOYMENT.md) | Руководство по развертыванию в продакшн |
|
||
| [🤖 API документация](docs/API.md) | Документация REST API |
|
||
|
||
## 🏗️ Архитектура проекта
|
||
|
||
```
|
||
smartsoltech.kr/
|
||
├── 📄 README.md # Основная документация
|
||
├── 📜 LICENSE # Лицензия MIT
|
||
├── 🔧 .drone.yml # CI/CD pipeline конфигурация
|
||
├── 📋 .gitignore # Git исключения
|
||
├── 🐳 Контейнеризация
|
||
│ ├── Dockerfile # Docker образ
|
||
│ ├── docker-compose.yml # Оркестрация сервисов
|
||
│ └── requirements.txt # Python зависимости
|
||
├── 🛠️ bin/ # Скрипты управления
|
||
│ ├── cli.sh # CLI для контейнера
|
||
│ ├── update.sh # Скрипт обновления
|
||
│ ├── start.sh, stop.sh # Управление сервисами
|
||
│ ├── logs.sh # Просмотр логов
|
||
│ └── setup-backup.sh # Настройка backup
|
||
├── 📚 docs/ # Документация
|
||
│ ├── SCRIPTS_README.md # Руководство по скриптам
|
||
│ ├── DEPLOYMENT.md # Развертывание в продакшн
|
||
│ ├── API.md # API документация
|
||
│ └── *.md # Другая документация
|
||
├── 🐍 smartsoltech/ # Django приложение
|
||
│ ├── web/ # Основное веб-приложение
|
||
│ ├── comunication/ # Telegram bot & уведомления
|
||
│ ├── static/ # Статические файлы
|
||
│ ├── media/ # Загруженные файлы
|
||
│ └── manage.py # Django управление
|
||
├── 🎨 frontend/ # Фронтенд ресурсы
|
||
│ ├── assets/ # CSS, JS, изображения
|
||
│ └── *.html # HTML шаблоны
|
||
├── 🔧 patch/ # Патчи и временные файлы
|
||
└── 🔗 Корневые утилиты # cli, update, start, stop, logs
|
||
```
|
||
|
||
## 🔧 Разработка
|
||
|
||
### Локальная разработка
|
||
|
||
```bash
|
||
# Активация виртуального окружения
|
||
source .venv/bin/activate
|
||
|
||
# Установка зависимостей
|
||
pip install -r requirements.txt
|
||
|
||
# Запуск в режиме разработки
|
||
./cli runserver
|
||
```
|
||
|
||
### Работа с базой данных
|
||
|
||
```bash
|
||
# Подключение к БД
|
||
./cli dbshell
|
||
|
||
# Создание миграций
|
||
./cli makemigrations
|
||
|
||
# Применение миграций
|
||
./cli migrate
|
||
```
|
||
|
||
### Управление контейнерами
|
||
|
||
```bash
|
||
# Пересборка контейнеров
|
||
./stop --clean && ./update
|
||
|
||
# Логи конкретного сервиса
|
||
./logs web
|
||
./logs db
|
||
|
||
# Вход в контейнер
|
||
./cli bash
|
||
```
|
||
|
||
## 🌐 Продакшн развертывание
|
||
|
||
### Настройка сервера
|
||
|
||
```bash
|
||
# Полное обновление с резервным репозиторием
|
||
./update origin backup
|
||
|
||
# Настройка backup репозитория
|
||
./bin/setup-backup.sh
|
||
|
||
# Проверка статуса продакшн сервисов
|
||
./cli status
|
||
```
|
||
|
||
## 📂 Структура проекта
|
||
|
||
```
|
||
smartsoltech/
|
||
├── 🐍 smartsoltech/ # Основное Django приложение
|
||
├── 🎨 frontend/ # Статические фронтенд файлы
|
||
├── 🐳 bin/ # Скрипты развертывания
|
||
├── 📋 docs/ # Документация проекта
|
||
├── 🧩 patch/ # Патчи и исправления
|
||
├── 🛠️ utils/ # Утилиты и инструменты
|
||
│ ├── start # Запуск проекта
|
||
│ ├── stop # Остановка сервисов
|
||
│ ├── update # Обновление проекта
|
||
│ ├── cli # CLI интерфейс
|
||
│ ├── logs # Просмотр логов
|
||
│ └── drone # CI/CD бинарий
|
||
├── 🐍 scripts/ # Вспомогательные скрипты
|
||
│ ├── create_hero_banner.py # Создание баннеров
|
||
│ └── hero_script.py # Скрипты для баннеров
|
||
├── 💾 backups/ # Резервные копии
|
||
│ ├── .drone.yml.backup # Бэкап CI конфигурации
|
||
│ └── original_home_modern.html # Оригинал главной страницы
|
||
├── 🗂️ temp/ # Временные файлы
|
||
├── 🐳 docker-compose.yml # Docker конфигурация
|
||
├── 🚀 .drone.yml # CI/CD конфигурация
|
||
├── 📄 requirements.txt # Python зависимости
|
||
└── 📖 README.md # Этот файл
|
||
```
|
||
|
||
### Мониторинг
|
||
|
||
- **Веб-сайт**: http://localhost:8000
|
||
- **Админ-панель**: http://localhost:8000/admin
|
||
- **PgAdmin**: http://localhost:8080
|
||
- **Drone CI**: https://drone.smartsoltech.kr
|
||
|
||
## 🤝 Участие в разработке
|
||
|
||
1. Fork репозитория
|
||
2. Создайте feature ветку: `git checkout -b feature/amazing-feature`
|
||
3. Commit изменения: `git commit -m 'Add amazing feature'`
|
||
4. Push в ветку: `git push origin feature/amazing-feature`
|
||
5. Создайте Pull Request
|
||
|
||
## 📝 Лицензия
|
||
|
||
Этот проект распространяется под лицензией MIT. Подробности в файле [LICENSE](LICENSE).
|
||
|
||
## 📞 Контакты
|
||
|
||
- **Сайт**: [smartsoltech.kr](https://smartsoltech.kr)
|
||
- **Email**: info@smartsoltech.kr
|
||
- **Telegram**: [@smartsoltech](https://t.me/smartsoltech)
|
||
|
||
---
|
||
|
||
<p align="center">
|
||
Сделано с ❤️ командой <strong>SmartSolTech</strong>
|
||
</p> |