Сделал для себя прикольную (на мой взгляд) штуку - веб-файловый менеджер, который по сути является оберткой над FTP.
Идея в том, что пользователь заходит в веб файл-менеджер, вводит данные от FTP и получает доступ к своим файлам, согласно своим правам. Таким образом все заморочки с правами решаются и настраиваются один раз на стороне FTP-сервера.
Я знаю, что есть Filestash, он хороший и удобный, и умеет все что надо. Кроме того, что… не умеет копировать и перемещать папки и файлы. Не умеет делать работу, которую файловый менеджер должен делать по умолчанию. Поэтому, я решил сделать свой вариант. Ну, как сделать. Навайбкодить за пару вечеров)))
Но мой проект получился именно тем, что мне надо и что я хочу видеть в подобном продукте.
Его фичи:
- Просмотр, создание, удаление папок/файлов
- Drag-and-drop загрузка
- Скачивание через браузер
- Move / Copy с подтверждением перезаписи
- Свойства файлов
- Тёмная/светлая тема (auto/light/dark)
- Многоязычность (i18n), автоопределение языка
- SessionStorage — авторизация, сортировка, тема сохраняются между F5
- Поддержка мобильных устройств
- Возможность разворачивания в standalone или в Docker*
- Работа через реверс-прокси
Мне кажется получилось интересно, поэтому что-то типа предварительной версии выкладываю на суд общественности. Выкладываю по принципу “как есть”. Мои тесты показали, что продукт вполне стабилен.
Что возможно будет дальше:
- Поддержка других бэкэндов доступа к файлам. Пока планируется как минимум WebDAV и SMB. В теории, архитектурно логика работы с файлами максимально абстрагирована от FTP.
- Простой редактор файлов и простая гляделка картинок и видео.
- Различные виды списка файлов
Чего не будет точно:
- Поддержки онлайн-редактирования файлов Office
Пока просто архивом, в будущем планируется миграция на гитхаб.
Обращаю внимание, что если задать в config/config.yaml адрес сервера и порт, то он не будет появлсяться на странице входа.
*Docker рекомендуемый способ установки
