All Projects → filegator → Filegator

filegator / Filegator

Licence: mit
Powerful Multi-User File Manager

Projects that are alternatives of or similar to Filegator

File Storage
File storage abstraction for Yii2
Stars: ✭ 116 (-80.24%)
Mutual labels:  files, storage, filesystem, file
Diskover Web
Web file manager, disk space usage, storage search engine and file system analytics for diskover
Stars: ✭ 121 (-79.39%)
Mutual labels:  file-manager, storage, filesystem, filemanager
Uploadcare Widget
Uploadcare Widget, an ultimate tool for HTML5 file upload supporting multiple file upload, drag&drop, validation by file size/file extension/MIME file type, progress bar for file uploads, image preview.
Stars: ✭ 183 (-68.82%)
Mutual labels:  files, file, uploader
Chonky
😸 A File Browser component for React.
Stars: ✭ 313 (-46.68%)
Mutual labels:  files, filesystem, file
Copy Webpack Plugin
Copy files and directories with webpack
Stars: ✭ 2,679 (+356.39%)
Mutual labels:  files, filesystem, file
Chibisafe
Blazing fast file uploader and awesome bunker written in node! 🚀
Stars: ✭ 657 (+11.93%)
Mutual labels:  files, file, uploader
Pyfiling
Python script that organizes files in a folder or directory according to file type/extension.
Stars: ✭ 12 (-97.96%)
Mutual labels:  file-manager, filesystem, filemanager
FireFiles
Powerful Android File Manager for everything that runs on Android OS (Android TV, Android Watch, Mobile, etc)
Stars: ✭ 37 (-93.7%)
Mutual labels:  storage, filesystem, file
PHP-FileUpload
Simple and convenient file uploads — secure by default
Stars: ✭ 53 (-90.97%)
Mutual labels:  files, filesystem, file
vue-fs
A Vue file management client, complete with a node/express/FS backend.
Stars: ✭ 40 (-93.19%)
Mutual labels:  filemanager, filesystem, file-manager
files
Useful methods to manage files and directories
Stars: ✭ 27 (-95.4%)
Mutual labels:  files, filesystem, file
replace-in-files
Replace text in one or more files or globs.
Stars: ✭ 21 (-96.42%)
Mutual labels:  files, filesystem, file
Flydrive
☁️ Flexible and Fluent framework-agnostic driver based system to manage storage in Node.js
Stars: ✭ 275 (-53.15%)
Mutual labels:  storage, filesystem
Video Hub App
Official repository for Video Hub App
Stars: ✭ 272 (-53.66%)
Mutual labels:  file-manager, filemanager
Glusterfs
Gluster Filesystem : Build your distributed storage in minutes
Stars: ✭ 3,437 (+485.52%)
Mutual labels:  storage, filesystem
Gofi
Gofi (gəʊfi:) means Go file indexer.
Stars: ✭ 291 (-50.43%)
Mutual labels:  file, filemanager
Shrine
File Attachment toolkit for Ruby applications
Stars: ✭ 2,903 (+394.55%)
Mutual labels:  storage, filesystem
Juicefs
JuiceFS is a distributed POSIX file system built on top of Redis and S3.
Stars: ✭ 4,262 (+626.06%)
Mutual labels:  storage, filesystem
S5cmd
Parallel S3 and local filesystem execution tool.
Stars: ✭ 565 (-3.75%)
Mutual labels:  storage, filesystem
Xbackbone
A lightweight file manager with full ShareX, Screencloud support and more
Stars: ✭ 359 (-38.84%)
Mutual labels:  uploader, filemanager

Live demo Build Status PHP master Build Status Node master Code Coverage License

FileGator - Powerful Multi-User File Manager

FileGator is a free, open-source, self-hosted web application for managing files and folders.

You can manage files inside your local repository folder (on your server's hard drive) or connect to other storage adapters (see below).

FileGator has multi-user support so you can have admins and other users managing files with different access permissions, roles and home folders.

All basic file operations are supported: copy, move, rename, edit, create, delete, preview, zip, unzip, download, upload.

If allowed, users can download multiple files or folders at once.

File upload supports drag&drop, progress bar, pause and resume. Upload is chunked so you should be able to upload large files regardless of your server configuration.

Screenshot

Sponsors & Backers

FileGator is a free, open-source project. It's an independent project with its ongoing development made possible entirely thanks to the support by these awesome backers. If you'd like to join them, please consider:

Typical use cases

  • share a folder with colleagues, your team, friends or family
  • give students access to upload their work
  • allow workers to upload field data / docs / images
  • use as cloud backup
  • manage cdn with multiple people
  • use as ftp/sftp replacement
  • manage s3 or other 3rd party cloud storage
  • use to quickly zip and download remote files

Demo

https://demo.filegator.io

This is read-only demo with guest account enabled.

  • you can log in as john/john to see John's private files
  • or jane/jane as readonly + download user.

Documentation

Check out the documentation

Features & Goals

  • Multiple storage adapters (Local, FTP, Amazon S3, Dropbox, DO Spaces, Azure Blob and many others via Flysystem)
  • Multiple auth adapters with roles and permissions (Store users in json file, database or use WordPress)
  • Multiple session adapters (Native File, Pdo, Redis, MongoDB, Memcached and others via Symfony)
  • Single page front-end (built with Vuejs, Bulma and Buefy)
  • Chunked uploads (built with Resumable.js)
  • Zip and bulk download support
  • Highly extensible, decoupled and tested code
  • No database required
  • Framework free

Minimum Requirements

  • PHP 7.2+ (with php-zip extension)

See install instructinos for Ubuntu 18.04 or Debian 10.3. Get $100 in (server credits here) so you can play around.

Download precompiled build

Precompiled build is created for non-developers. In this version, the frontend (html, css and javascript) is compiled for you and the source code is removed so the final archive contains only minimum files.

Download & install instructinos

Project setup for development (Linux)

You must have git, php, npm, and composer installed.

git clone https://github.com/filegator/filegator.git
cd filegator
cp configuration_sample.php configuration.php
chmod -R 775 private/
chmod -R 775 repository/
composer install --ignore-platform-reqs
npm install
npm run build

Compiles and hot-reloads

The following command will launch backend and frontend on ports 8081 and 8080:

npm run serve

Once everything is ready visit: http://localhost:8080

Run tests & static analysis

Testing requires xdebug, php-zip and sqlite php extensions.

vendor/bin/phpunit
vendor/bin/phpstan analyse ./backend
npm run lint
npm run e2e

Deployment

Set the website document root to /dist directory. This is also known as 'public' folder.

NOTE: For security reasons /dist is the ONLY folder you want to be exposed through the web. Everything else should be outside of your web root, this way people can’t access any of your important files through the browser.

Show your support

Please ⭐️ this repository if this project helped you!

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

License

Copyright (c) 2019 Milos Stojanovic.

This project is MIT licensed.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].