Skip to content

eduard-fomin/test-task

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

Тестовое задание Junior

Здесь находится описание тестового задания на позицию Junior разработчика в компанию XXX.

Задача

Создать одностраничное приложение файловый менеджер с поддержкой текстовых файлов и директорий с использованием фронтенд и бекенд фреймворков с возможностью добавления/удаления/обновления файлов, директорий. Выложить решение в публичный git репозиторий.

Общие требования

  • Дизайн на усмотрение разработчика.
  • Структура директорий хранится в БД, в качестве СУБД использовать PostgreSQL.
  • Вся информация должна сохраняться при перезагрузке страницы.
  • Использовать для фронта Angular, для бекенда Symfony.

Критерии приёмки

Показано правильное использование:

  • стандартного функционала фреймворков;
  • пакетных менеджеров;
  • применение стандартных пакетов/бандлов/модулей;
  • применение подхода REST API.

Требования задачи

Всё, что не указано в требованиях, остаётся на усмотрение исполнителя задачи.

Список с директориями и текстовыми файлами в текущей директории:

Тип Название Удалить Редактировать
dir .. - -
dir Directory 1 delete edit
file File 1 delete edit
file File 2 delete edit
- new file new dir trash
  • Последняя строка представляет собой список действий: создание файла в текущей директории, создание директории в текущей директории, переход в корзину.
  • При отображении всегда должна быть сортировка по типу, потом по названию: сначала директории отсортированные по названию, потом файлы названию.
  • Нажатие на название директории открывает сожержимое директории.
  • Нажатие на название файла открывает файл на редактирование.
  • Файл содержит в себе название файла и текстовое содержимое.
  • Нажатие на delete перемещает директорию/файл в корзину.
  • Нажатие на new dir позволяет создать директорию в текущей директории.
  • Нажатие на new file позволяет создать файл в текущей директории.
  • Нажатие на .. открывает родительскую директорию текущей директори.
  • Нажатие на trash открывает корзину удалённых файлов и директорий.

Корзина

Тип Название Восстановить Удалить
dir .. - -
dir Directory 2 restore delete
file File 3 restore delete
  • Нажатие на restore восстанавливает директорию(и всё её содержимое)/файл.
  • Нажатие на delete удаляет директорию(и всё её содержимое)/файл.
  • При отображении всегда должна быть сортировка по типу, потом по названию: сначала директории отсортированные по названию, потом файлы названию.
  • Если директория в которую происходит удаление файла/директории удалена, то восстанавливать в корень.

Добавление/обновление файлов/директорий

  • У файла должны быть редактируемое название и текстовое содержимое.
  • У директории должно быть редактируемое название.

Для Backend/Fullstack

  • Для решения использовать СУБД PostgreSQL.

Для Frontend

  • В качесте хранилища использовать Firebase.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published