Rich Filemanager
Rich Filemanager is an open-source file manager released under MIT license.
Based on the @simogeo Filemanager, with a lot of improvements and new features:
- Drag-and-drop support
- Clipboard feature: copy, cut, paste, clear
- Selectable files & folders support (mouse dragging & Ctrl key)
- Multiple actions support for selected files & folders: move, delete, download
- Before and After callback functions for some actions
- Double or single click setup to open files & folders
- Lazy loading of images thumbnails
- Integration with AWS S3 storage
- Integration with Imperavi Redactor WYSIWYG editor
- Multiple & chunked uploads support - based on jQuery-File-Upload
- New design of multiple upload window; New upload controls for each previewed file (start, abort, resume, delete, etc.)
- Filetree: allow to open and display multiple subfolders at a time
- Online MS Office documents viewer - based on Google Docs Viewer
- Extended list of previewed file types via ViewerJS
- New viewers to preview: "html" files (iframe), "md" files (markdown-it), etc.
- CodeMirror editor now compatible with most of viewers
- Standardized API that follows JSON API best practices to create connectors for any server-side language
- Independent client and server sides. Can be located on different servers.
- Independent configuration files for client and server sides.
- Client-side configuration options may be overwritten with server-side ones using PHP connector.
- Implemented plugins system for PHP connector (server-based)
- Added new "Type" column in the list view
- Added ability to limit max size of the storage (root folder)
- Implemented natural sorting on the client-side
To see the full list check out changelog file.
Demo
Filemanager live example: http://fm.devale.pro
Compatibility
Filemanager is designed to interact with a number of programming languages via connectors.
The actual connectors are: PHP, Java, ASHX, ASP, NodeJs & Python 3 Flask.
You are still able you to download unsupported v0.8 from archive (CFM, lasso, PL, JSP and Python WSGI)
Browser compatibility:
Installation and Setup
Documentation
Filemanager is highly documented on the wiki pages. API, see below.
Main features
- Available in more than 20 languages.
- Highly customizable
- Can work as standalone application
- Easy integration with WYSIWYG editors like CKEditor, TinyMCE, Imperavi Redactor and so on.
- Easy integration with AWS S3 storage to manipulate your files on remote S3 server.
- Easy integration with colorbox jquery plugin or HTML simple textfield
- 2 view modes: grid and list
- Drag-and-drop support
- Clipboard feature: copy, cut, paste, clear
- Single file actions: upload, modify, move, delete, download
- Single folder actions: create, modify, move, delete, download (zip archive)
- Selectable support for files & folders (mouse dragging & Ctrl key)
- Multiple actions support for selected files & folders: move, delete, download
- Support user permissions - based on session
- Handle system permissions
- Ability to pass config user file in URL
- Multiple & chunked uploads support - based on jQuery-File-Upload
- Online text / code edition - based on codeMirror
- Online PDF & OpenOffice documents viewer - based on viewerJS
- Online MS Office documents viewer - based on Google Docs Viewer
- Several server-side language connectors available. PHP, Java, ASHX, ASP, NodeJs & Python 3 Flask up-to-date
- Standardized API that follows JSON API best practices to create connectors for any server-side language
- Independent client and server sides. Can be located on different servers.
- Opening a given folder
- Opening exclusively a given folder
- Passing parameters to the FM
- File types and patterns restrictions
- Video and audio player relying on web browser capabilities
- Textbox Search filter
- Thumbnails generation
- Image auto-resize
- File size limit
- File exclusion based on name and patterns
- Prevent files overwriting (or not)
- Copy direct file URL
- CSS Themes - Please, share your themes with others !
- and more ...
Screenshot
Contribution
Any contribution is greatly appreciated.
You can become a maintainer for any of existent connectors, or create new one for your server side language.
Check the details in API section.
MIT LICENSE
Released under the MIT license.