Практичне завдання (Список завдань які потрібно робити визначаються ментором) Створити веб додаток для зберігання і перегляду файлів Вимоги: 1. Можливість реєстрації та логіну користувача 2. Форма зберігання файлу ( файл має належати користувачеві ), де має бути можливість: A. Обрати файл для завантаження B. Додати (ввести в поле) коментар до файлу C. Можливість встановити дату (рік, місяць, день) коли файл буде автоматично видалено системою. На даний момент потрібно лише дати можливість ввести цю дату 3. Сторінка перегляду списку файлів (показ файлів авторизованого користувача) A. Має бути список файлів, де вказане ім’я файлу B. Кількість файлів (текстове знання на сторінці) C. Можливість перейти на сторінку перегляду файлу (П.4) D. Сортування має бути від файлу який створений останній 4. Сторінка перегляду файлу A. Можливість видалити файл B. Якщо вказана дата видалення файлу, показати її C. Коментар до файлу 5. Генерація посилання перегляду файлу по цьому посиланню A. Можливість створити посилання для прямого перегляду картинки всім користувачам (незалежно від того чи є авторизований) B. Якщо файл видалиться, посилання також має бути видалене C. Записувати скільки раз файл був переглянутий (кожний перегляд, не унікальний) 6. Генерація посилання одноразового перегляду A. Генерувати посилання з токеном для одноразового перегляду B. Можливість генерувати багато таких посилань C. Після того, як за посиланням один раз файл був переглянутий, воно має ставати не активним (можна показати 404 сторінку) 7. АПІ (дизайн АПІ має бути обраний на свій розсуд) A. Створити авторизацію через апі B. Має бути можливість завантажити з АПІ файл по ід C. Має бути можливість завантажити на АПІ файл і отримати ід D. Має бути можливість видалити з АПІ файл по ід E. Можливість згенерувати одноразове посилання на перегляд файлу F. Можливість згенерувати багаторазове посилання на перегляд файлу 8. Сторінка репортів (показ даних у вигляді таблиці або як зручно), показати: A. Кількість переглядів по посиланнях B. Кількість файлів які є C. Кількість файлів які були видалені D. Кількість тимчасових (одноразових) посилань і скільки з них були використані Валідація на те, що це картинка, максимальний розмір 5мб Всі помилки мають бути показані на формі біля полів, або в апі Дата видалення не може бути раніше ніж час який зараз Потрібно оцінити приблизний час на виконання завдання (бажано по окремих пунктах і в загальному на речі, які напряму не вказані в завданні) Дизайн АПІ і фронтенд визначається самостійно, якщо не було сказано іншого Можна використовувати готові рішення у вигляді пакетів, но потрібно буде описати їх необхідність і доцільність До уваги буде братися також, як зроблені коміти та їх назви