UI polish: global modern styles; Admin button pinned top-left across app and generated pages; index redirects to login for guests

This commit is contained in:
2025-09-03 14:37:36 +03:00
commit 85eaf6a99a
7 changed files with 468 additions and 0 deletions

51
README.md Normal file
View File

@@ -0,0 +1,51 @@
# Flask UUID Pages Admin (SQLite)
Минималистичное Flaskприложение с SQLite:
- Админка доступна только пользователю `ruslan` с паролем `utOgbZ09ruslan` (по умолчанию).
- В админке можно вставлять HTML и публиковать страницы.
- Для каждой страницы генерируется UUIDссылка `/p/<uuid>`.
- Неавторизованный пользователь не видит админку и главную страницу (404). Страницы по UUID доступны всем, у кого есть ссылка.
## Запуск локально
1. Создайте и активируйте виртуальное окружение (опционально):
Windows PowerShell:
```powershell
python -m venv .venv
.venv\\Scripts\\Activate.ps1
```
2. Установите зависимости:
```powershell
pip install -r requirements.txt
```
3. (Опционально) Переопределите настройки через переменные окружения:
```powershell
$env:SECRET_KEY = "your-strong-secret-key"
$env:ADMIN_USERNAME = "ruslan"
$env:ADMIN_PASSWORD = "utOgbZ09ruslan"
```
4. Запустите сервер разработки:
```powershell
python app.py
```
## Маршруты
- `/login` — форма входа в админку.
- `/admin` — админ‑панель (только для авторизованных, иначе 404).
- `/p/<uuid>` — просмотр опубликованной страницы по UUID.
- `/` — редирект в админку для авторизованных, иначе 404.
## Замечания по безопасности
- HTML хранится и отдаётся как есть. Предполагается, что контент вводит доверенный админ.
- В продакшне обязательно задайте `SECRET_KEY` и используйте HTTPS; настройте защищённые cookies.