📚 Project restructuring and CI/CD setup
✨ Major reorganization: - Move all documentation to docs/ directory - Clean up root directory from temporary files - Add comprehensive project documentation - Implement Drone CI/CD pipeline 📁 Structure changes: - docs/SCRIPTS_README.md - Complete scripts guide - docs/DEPLOYMENT.md - Production deployment guide - docs/API.md - Comprehensive API documentation - patch/ - Temporary and test files - Clean .gitignore with proper exclusions 🚀 CI/CD Pipeline (.drone.yml): - Code quality checks (flake8, black, bandit) - Unit and integration testing - Docker image building and security scanning - Staging deployment automation - Production deployment on tags - Telegram notifications - Scheduled maintenance tasks 📖 Enhanced README.md: - Technology stack badges with icons - Drone CI build status badge - Comprehensive quick start guide - Clear project architecture - Links to all documentation 🔧 Additional improvements: - MIT License added - .gitkeep files for important directories - Improved .gitignore patterns - Professional project presentation 🎯 Result: Clean, professional project structure ready for production
This commit is contained in:
213
README.md
Normal file
213
README.md
Normal file
@@ -0,0 +1,213 @@
|
||||
# 🚀 SmartSolTech
|
||||
|
||||
[](https://drone.smartsoltech.kr/smartsoltech/smartsoltech.kr)
|
||||
[](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
|
||||
./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
|
||||
```
|
||||
|
||||
### Мониторинг
|
||||
|
||||
- **Веб-сайт**: 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>
|
||||
Reference in New Issue
Block a user