Retour au classement

filegator/filegator

PHPfilegator.io

Powerful Multi-User File Manager

filefilesystemuploaderamazon-s3storagestorage-managerfile-managerfilemanagerfilesfileserver
Croissance des étoiles
Étoiles
3k
Forks
443
Croissance hebdomadaire
Issues
196
1k2k3k
juin 2019oct. 2021mars 2024juil. 2026
ArtefactsPackagistcomposer require filegator/filegator
README

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:

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.

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

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

Limitations

  • Symlinks are not supported by the underlying Flysystem
  • File ownership is not supported (chown)
  • Too many files in the same directory can negatively impact performance

Docker

Check out the official docker image with instructions on how to use it

Docker quick start:

docker run --rm -p 8080:8080 filegator/filegator
visit: http://127.0.0.1:8080 login as admin/admin123

Download & Installation

See install instructions. Get $100 in (server credits here) so you can play around.

Project setup for development (Docker)

git clone https://github.com/filegator/filegator.git
cd filegator
docker compose -f docker-compose-dev.yml up

Once everything is ready visit: http://localhost:8080 and login as admin/admin123, Ctrl+c to stop.

See docker-compose-dev.yml for more informations about configurations and dependencies.

Project setup for development (Linux)

You must have git, php, node (v14), 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
npm run serve

Once everything is ready visit: http://localhost:8080 and login as admin/admin123

Run tests & static analysis

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

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

Deployment

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

NOTE: For security reasons filegator/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. If you run the script from the root folder, you will see the message 'Development mode' as a security warning.

Show your support

Please ⭐️ this repository if this project helped you!

Security

If you discover a security vulnerability, please report it privately via GitHub Security Advisories instead of using the public issue tracker:

https://github.com/filegator/filegator/security/advisories

License

Copyright (c) 2019 Milos Stojanovic.

This project is MIT licensed.

Dépôts similaires
Blankj/AndroidUtilCode

:fire: Android developers should collect the following utils(updating).

JavaMavenApache License 2.0androidapp
blankj.com/2016/07/31/android-utils-code/
33.7k10.6k
cloudreve/cloudreve

🌩 Self-hosted file management and sharing system, supports multiple storage providers

GoGo ModulesGNU General Public License v3.0file-sharingfile
cloudreve.org
28.4k3.9k
cloudreve/Cloudreve

🌩支持多家云存储的云盘系统 (Self-hosted file management and sharing system, supports multiple storage providers)

GoGo ModulesGNU General Public License v3.0file-sharingfile
cloudreve.org
22.5k3.5k
react-dropzone/react-dropzone

Simple HTML5 drag-drop zone with React.js.

TypeScriptnpmMIT Licensereactdrag-and-drop
react-dropzone.js.org
11k802
bensadeh/tailspin

🌀 A log file highlighter

Rustcrates.ioMIT Licensetaillog
7.9k136
mahmoud/boltons

🔩 Like builtins, but boltons. 250+ constructs, recipes, and snippets which extend (and rely on nothing but) the Python standard library. Nothing like Michael Bolton.

PythonPyPIOtherpythonutilities
boltons.readthedocs.org
6.9k406
kimlimjustin/xplorer

Xplorer, a customizable, modern file manager

TypeScriptnpmGNU Affero General Public License v3.0xplorerfile-xplorer
xplorer.space
5.6k373
sindresorhus/file-type

Detect the file type of a file, stream, or data

JavaScriptnpmMIT Licensenodejsjavascript
4.3k395
piskvorky/smart_open

Utils for streaming large files (S3, HDFS, gzip, bz2...)

PythonPyPIMIT Licensepythons3
3.5k389
TheWaWaR/simple-http-server

Simple http server in Rust (Windows/Mac/Linux)

Rustcrates.ioMIT Licensestaticfile
3.4k216
elvishew/xLog

Android logger, pretty, powerful and flexible, log to everywhere, save to file, all you want is here.

JavaMavenApache License 2.0androidlog
3.3k443
vortex-data/vortex

An extensible, state-of-the-art framework for columnar compression, and the fastest FOSS columnar file format. Formerly at @spiraldb, now an Incubation Stage project at LFAI&Data, part of the Linux Foundation.

Rustcrates.ioApache License 2.0arrayarrow
vortex.dev
3.1k190