100 lines
4.0 KiB
Markdown
100 lines
4.0 KiB
Markdown
план разработки сайта для отдела радиофотоники с учётом ваших требований: гибкость, простое администрирование, удобство для пользователей и расширяемость.
|
||
|
||
---
|
||
|
||
## 🔹 Общая архитектура
|
||
|
||
* **Frontend**: React + Next.js.
|
||
* **Backend**: Go (REST API).
|
||
* **База данных**: PostgreSQL (рекомендую) для хранения публикаций, сотрудников, РИДов и т. д.
|
||
* **Хранение файлов**:о в файловом хранилище (например, MinIO, S3-совместимое хранилище сам реши какой удобно для быстрой разработки).
|
||
* **Админ-панель**: веб-интерфейс для редакторов и администраторов.
|
||
* **Аутентификация**: JWT (для API) + роли ( редактор с логином ), (Наблюдатель без логина).
|
||
|
||
|
||
|
||
## 🔹 Основные разделы
|
||
|
||
1. **Главная страница**
|
||
|
||
* Основная информаци о лабораторри миссия ссылки на ключевые разделы.
|
||
2. **Публикации и Новости**
|
||
|
||
* Список публикаций
|
||
* Возможность прикрепить PDF/ опубликовать новость редактору.
|
||
* Предпросмотр pdf
|
||
3. **РИДы (результаты интеллектуальной деятельности)**
|
||
|
||
* Каталог патентов, разработок, программ.
|
||
* Сортировка, фильтры.
|
||
4. **Проекты**
|
||
* Список проектов
|
||
* Связанные с проектом РИДы публикации новости партнеры
|
||
5. **Наши партнеры**
|
||
|
||
* Информация о сотрудничестве, ссылки на проекты.
|
||
6. **Сотрудники**
|
||
|
||
* Список сотрудников (фото, должность, контакты, публикации).
|
||
7. **Контакты**
|
||
|
||
* Адрес, карта (Google/Yandex Maps), форма обратной связи.
|
||
8. **Студентам**
|
||
|
||
* Учебные материалы, методички (PDF), ссылки на расписание, инструкции.
|
||
|
||
---
|
||
|
||
## 🔹 Функционал редактора
|
||
|
||
* Панель управления (добавление публикаций/новостей, сотрудников, документов).
|
||
* Drag-and-drop загрузка файлов.
|
||
* WYSIWYG редактор для текстов (например, tiptap или CKEditor).
|
||
|
||
|
||
---
|
||
|
||
## 🔹 Технический стек (рекомендация)
|
||
|
||
* **Backend (Go)**:
|
||
|
||
* `Gin` или `Echo` для API.
|
||
* `GORM` для работы с БД.
|
||
* `JWT` для аутентификации.
|
||
* **Frontend (Next.js)**:
|
||
|
||
* TailwindCSS или shadcn/ui для быстрой верстки.
|
||
* Axios/React Query для работы с API.
|
||
* **DB**: PostgreSQL.
|
||
* **Файлы**: MinIO или просто папка на сервере с URL-доступом.
|
||
|
||
---
|
||
|
||
## 🔹 Этапы разработки
|
||
|
||
1. **Проектирование**
|
||
|
||
* Схема БД (публикации, сотрудники, пользователи, файлы, разделы).
|
||
* Проработка API.
|
||
2. **MVP**
|
||
|
||
* Базовый backend на Go с CRUD для публикаций, сотрудников и файлов.
|
||
* Frontend: главная + 2–3 раздела + авторизация.
|
||
3. **Админ-панель**
|
||
|
||
* Интерфейс редактирования контента.
|
||
* Загрузка документов и картинок.
|
||
4. **UI и улучшения**
|
||
|
||
* Поиск и фильтры.
|
||
* Оптимизация картинок.
|
||
* Роли пользователей.
|
||
5. **Запуск**
|
||
|
||
* Деплой на сервер (Docker).
|
||
* Настройка SSL (Let's Encrypt).
|
||
|
||
---
|
||
|
||
|