Skip to content

Latest commit

 

History

History
69 lines (55 loc) · 5.7 KB

SPECIFICATION.md

File metadata and controls

69 lines (55 loc) · 5.7 KB

Metapanel - специфiкацiя

1. Контекст

Команда має на меті розробити модуль адмін-панелі для серверу Impress

Технологiчний стек проекту:

  • Back-end: NodeJs
  • Front-end: pure JavaScript
  • Database: PostgreSQL

Середовища для розгортання: Heroku + PostgreSQL plagin

Команда:

2. Задачi

Задачi якi вирiшує проект:

  • Адміністрування додатків на базі Impress
  • Демо-сайт показує можливий варіант використання модулю
  • Візуальне редагування прав користувачів, модераторів, додання\видалення адміністраторів
  • Візуальне виведення необхідної статистики з БД у діаграми\карти\графіки\списки\таблиці
  • Редагування\Додавання контенту на сайт модераторами\адміністраторами
  • Виведення у таблицю списку користувачів\модераторів\адміністраторів

Вимоги:

  • Під кожний конкретний сайт легка та тонка кастомізація

3. Функцiональнi вимоги

  1. Авторизацiя
  2. Кастомізація всіх
  3. Списки TODO, прогресс-бари, таски та трекінг процессу виконання завдать модераторами для адміністраторів
  4. Статистичні діаграми\карти\графіки\списки\таблиці які будуть потрібні модераторам\адміністраторам
  5. Таблиці користувачі\модераторів\адміністраторів, та пов'язаний з ними функціонал, відповідний до рівня прав користувача у системі

4. Сценарiї

4.1. Авторизацiя

  1. Користувач заповнює форму з даними
  2. Данi обробляються сервером
  3. У випадку вдалої iдентифiкацiї користувача - йому надається доступ до адмін-панелі в залежності від рівня прав користувача у системі
  4. У випадку невдалої iдентифiкацiї користувача - йому буде вiдображена помилка про необхiднiсть перевiрити коректнiсть введених даних
  5. У випадку якщо користувач не належить до групи модераторів\адміністраторів - йому не надається доступ до адміністрування, та відображається помилка про обмеженність прав доступу

4.2. Редагування прав користувачів у системі

  1. Користувач з рівнем прав адміністратора авторизується в системі
  2. Адміністратор переходить до таблиці користувачів
  3. Адміністратор вибирає киристувача, та надає йому необхідні права за допомогою
  4. Сервер оновлє права користувача в БД, повертає результат
  5. Якщо результат операції успішний, то оновити дані відображені в таблиці адміністратора
  6. Якщо є помилка, то вивести помилку

4.3. Отримання iнформацiї про користувачiв

  1. Користувач з рівнем прав адміністратора чи модератора авторизується в системі
  2. Адміністратор переходить до таблиці користувачів
  3. Сервер выдправляє на інформацію про користувачів
  4. На сторінці рендериться необхідний функціонал для відображення, та роботи з отриманою інформацєю

4.4. Обробка та відображення статистичних данних

  1. Користувач з рівнем прав адміністратора чи модератора авторизується в системі
  2. Зразу ж після успішної авторизації користувач потрапляє до dashboard-сторінки
  3. Сервер надсилає необхідний статистичний контент цієї сторінки, згідно з кастомізаціями, та рівнем доступу авторизованого користувача
  4. Сторінка рендерить графіки\списки тощо та заповнює їх, згідно з даними сервера
  5. Дочекавшись завантаження, користувач має змогу побачити та працювати з даними