All Projects → moxiecode → Plupload

moxiecode / Plupload

Licence: agpl-3.0
Plupload is JavaScript API for building file uploaders. It supports multiple file selection, file filtering, chunked upload, client side image downsizing and when necessary can fallback to alternative runtimes, like Flash and Silverlight.

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to Plupload

Spring Boot File Upload Download Rest Api Example
Spring Boot File Upload / Download Rest API Example
Stars: ✭ 300 (-94.57%)
Mutual labels:  file-upload
React Uploady
Modern file uploading - components & hooks for React
Stars: ✭ 372 (-93.26%)
Mutual labels:  file-upload
Pomf
Simple file uploading and sharing
Stars: ✭ 535 (-90.31%)
Mutual labels:  file-upload
Efo
EFO是一个基于SpringBoot和Vue构建的文件分享系统,包括文件的上传与下载,文件的权限管理,远程文件管理等功能。
Stars: ✭ 327 (-94.08%)
Mutual labels:  file-upload
Dropit
DropIt is a File Uploader built with nodejs, Upload, get a link, and share your files with anyone easily.
Stars: ✭ 367 (-93.35%)
Mutual labels:  file-upload
Slate
WIP - An open source Filecoin storage and retrieval client that makes it easy to collect, organize, and share data anywhere.
Stars: ✭ 383 (-93.06%)
Mutual labels:  file-upload
Dropzone
Dropzone is an easy to use drag'n'drop library. It supports image previews and shows nice progress bars.
Stars: ✭ 16,097 (+191.61%)
Mutual labels:  file-upload
Ffsend
📬 Easily and securely share files from the command line. A fully featured Firefox Send client.
Stars: ✭ 5,448 (-1.3%)
Mutual labels:  file-upload
Spring Boot Projects
该仓库中主要是 Spring Boot 的入门学习教程以及一些常用的 Spring Boot 实战项目教程,包括 Spring Boot 使用的各种示例代码,同时也包括一些实战项目的项目源码和效果展示,实战项目包括基本的 web 开发以及目前大家普遍使用的线上博客项目/企业大型商城系统/前后端分离实践项目等,摆脱各种 hello world 入门案例的束缚,真正的掌握 Spring Boot 开发。
Stars: ✭ 4,022 (-27.14%)
Mutual labels:  file-upload
React Native Background Upload
Upload files in your React Native app even while it's backgrounded. Supports Android and iOS, including camera roll assets.
Stars: ✭ 504 (-90.87%)
Mutual labels:  file-upload
Material Ui Dropzone
A Material-UI file upload dropzone
Stars: ✭ 328 (-94.06%)
Mutual labels:  file-upload
Uguu
Simple lightweight temporary file hosting.
Stars: ✭ 359 (-93.5%)
Mutual labels:  file-upload
Cc
一个基于angular5.0.0+ng-bootstrap1.0.0-beta.8+bootstrap4.0.0-beta.2+scss的后台管理系统界面(没基础的同学请先自学基础,谢谢!)
Stars: ✭ 416 (-92.46%)
Mutual labels:  file-upload
Vue File Upload
vue.js ,vue-loader 上传文件,vue-file-upload,vue上传文件组件
Stars: ✭ 317 (-94.26%)
Mutual labels:  file-upload
Laravel Mediable
Laravel-Mediable is a package for easily uploading and attaching media files to models with Laravel 5.
Stars: ✭ 541 (-90.2%)
Mutual labels:  file-upload
Ajaxfileupload
A jQuery plugin that simulates asynchronous file uploads.
Stars: ✭ 291 (-94.73%)
Mutual labels:  file-upload
Filemanager
React based FileManager for browser ( + FS REST API for Node.js and Express)
Stars: ✭ 378 (-93.15%)
Mutual labels:  file-upload
Cj Upload
Higher order React components for file uploading (with progress) react file upload
Stars: ✭ 589 (-89.33%)
Mutual labels:  file-upload
Kodexplorer
A web based file manager,web IDE / browser based code editor
Stars: ✭ 5,490 (-0.54%)
Mutual labels:  file-upload
Filestash
🦄 A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze, ...
Stars: ✭ 5,231 (-5.24%)
Mutual labels:  file-upload

Plupload

Plupload is a cross-browser multi-runtime file uploading API. Basically, a set of tools that will help you to build a reliable and visually appealing file uploader in minutes.

Historically, Plupload comes from a dark and hostile age of no HTML5, hence all the alternative fallbacks, like Flash, Silverlight and Java (still in development). It is meant to provide an API, that will work anywhere and in any case, in one way or another. While having very solid fallbacks, Plupload is built with the future of HTML5 in mind.

Table of Contents

Backstory

Plupload started in a time when uploading a file in a responsive and customizable manner was a real pain. Internally, browsers only had the input[type="file"] element. It was ugly and clunky at the same time. One couldn't even change it's visuals, without hiding it and coding another one on top of it from scratch. And then there was no progress indication for the upload process... Sounds pretty crazy today.

It was very logical for developers to look for alternatives and writing their own implementations, using Flash and Java, in order to somehow extend limited browser capabilities. And so did we, in our search for a reliable and flexible file uploader for our TinyMCE's MCImageManager.

Quickly enough though, Plupload grew big. It easily split into a standalone project. With major version 2.0 it underwent another huge reconstruction, basically from the ground up, as all the low-level runtime logic has been extracted into separate File API and XHR L2 pollyfills (currently known under combined name of mOxie), giving Plupload a chance to evolve further.

Structure

Currently, Plupload may be considered as consisting of three parts: low-level pollyfills, Plupload API and Widgets (UI and Queue). Initially, Widgets were meant only to serve as examples of the API, but quickly formed into fully-functional API implementations that now come bundled with the Plupload API. This has been a source for multiple misconceptions about the API as Widgets were easily mistaken for the Plupload itself. They are only implementations, such as any of you can build by yourself out of the API.

Building instructions

Plupload depends on File API and XHR2 L2 pollyfills that currently have their own repository on GitHub. However, in most cases you shouldn't care as we bundle the latest build of mOxie, including full and minified JavaScript source and pre-compiled SWF and XAP components, with every release. You can find everything you may need under js/ folder.

There are cases where you might need a custom build, for example free of unnecessary runtimes, half the original size, etc. The difficult part of this task comes from mOxie and its set of additional runtimes that require special tools on your workstation in order to compile. Consider build instructions for mOxie - everything applies to Plupload as well.

First of all, if you want to build custom Plupload packages you will require Node.js, as this is our build environment of choice. Node.js binaries (as well as Source) are available for all major operating systems.

Plupload includes mOxie as a submodule, it also depends on some other repositories for building up it's dev environment - to avoid necessity of downloading them one by one, we recommended you to simply clone Plupload with git recursively (you will require git installed on your system for this operation to succeed):

git clone --recursive https://github.com/moxiecode/plupload.git

And finalize the preparation stage with: npm install - this will install all additional modules, including those required by dev and test environments. In case you would rather keep it minimal, add a --production flag.

Note: Currently, for an unknown reason, locally installed Node.js modules on Windows, may not be automatically added to the system PATH. So, if jake commands below are not recognized you will need to add them manually:

set PATH=%PATH%;%CD%\node_modules\.bin\

Support

We are actively standing behind the Plupload and now that we are done with major rewrites and refactoring, the only real goal that we have ahead is making it as reliable and bulletproof as possible. We are open to all the suggestions and feature requests. We ask you to file bug reports if you encounter any. We may not react to them instantly, but we constantly bear them in my mind as we extend the code base.

In addition to dedicated support for those who dare to buy our OEM licenses, we got discussion boards, which is like an enormous FAQ, covering every possible application case. Of course, you are welcome to file a bug report or feature request, here on GitHub.

Sometimes it is easier to notice the problem when bug report is accompained by the actual code. Consider providing a Plupload fiddle for the troublesome code.

Contributing

We are open to suggestions and code revisions, however there are some rules and limitations that you might want to consider first.

  • Code that you contribute will automatically be licensed under the AGPL, but will not be limited to AGPL.
  • Although all contributors will get the credit for their work, copyright notices will be changed to Moxiecode Systems AB.
  • Third party code will be reviewed, tested and possibly modified before being released.

These basic rules help us earn a living and ensure that code remains Open Source and compatible with AGPL license. All contributions will be added to the changelog and appear in every release and on the site.

An easy place to start is to translate Plupload to your language.

You can read more about how to contribute at: http://www.plupload.com/contributing

License

Copyright 2016, Ephox.
Released under AGPL-3.0 License.

We also provide commercial license.

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].