nok1-portal-framework
v1.0.0
Published
Конфигурируемый full-stack портал для демонстрационного экзамена (React + Express + PostgreSQL)
Maintainers
Readme
nok1-portal-framework
Конфигурируемый full-stack портал для демонстрационного экзамена: регистрация, авторизация, заявки пользователя, отзывы, панель администратора.
Стек: React + TypeScript, Express + TypeScript, PostgreSQL, Docker.
По умолчанию настроен под ТЗ «Корочки.есть» — достаточно отредактировать portal.config.json под свою тему.
Быстрый старт (локально)
Требования: Node.js 18+, Docker.
cd nok1_framework
# 1. Поднять PostgreSQL
npm run db:up
# 2. Установить зависимости
npm run setup
# 3. Запуск API + фронтенда
npm run dev- Frontend: http://localhost:5173
- API: http://localhost:3001/api/health
Админ: логин/пароль из portal.config.json (по умолчанию Admin / KorokNET).
Docker (полный стек)
npm run docker:up- Сайт: http://localhost:5173
- API: http://localhost:3001
Установка через npm
Локальная папка:
npm install
npm run setup
npm run db:up
npm run devПосле публикации пакета:
npm install nok1-portal-framework
cd node_modules/nok1-portal-framework
# отредактировать portal.config.json
npm run setup && npm run db:up && npm run devПодробная настройка под своё ТЗ: CUSTOMIZE.md
Страницы (соответствие типовому ТЗ)
| Страница | URL |
|----------|-----|
| Регистрация | /register |
| Авторизация | /login |
| Мои заявки + отзыв | /applications |
| Новая заявка | /applications/new |
| Панель администратора | /admin (после входа Admin) |
Структура проекта
nok1_framework/
├── portal.config.json ← главный файл настройки
├── docker-compose.yaml
├── database/init.sql ← схема БД для ER-диаграммы
├── backend/ ← Express API
├── frontend/ ← React (Vite)
└── CUSTOMIZE.mdGit (экзамен)
Рекомендуемые коммиты:
init: структура проекта и БДfeat: backend auth и заявкиfeat: frontend страницыchore: настройка под ТЗ
API
| Метод | Путь | Описание |
|-------|------|----------|
| GET | /api/config | Конфиг портала |
| POST | /api/auth/register | Регистрация |
| POST | /api/auth/login | Вход |
| GET | /api/applications/mine | Заявки пользователя |
| POST | /api/applications | Создать заявку |
| PATCH | /api/applications/:id/review | Отзыв |
| GET | /api/applications/admin/all | Все заявки (админ) |
| PATCH | /api/applications/admin/:id/status | Смена статуса |
Лицензия
MIT
