Coder Social home page Coder Social logo

datahero-file-upload-'s Introduction

File Upload Demo

Author

Jinglun Dong 

Version

  • v0.2.1 Fixed a bug which is related to regular expression. Fixed a bug when input file is less than 5 words.
  • v0.2.0 Implemented the five most frequent words function. Rewrite the line and word count using Node.js.
  • v0.1.1 If there is no file information update, there is no content reload on browse view.
  • v0.1.0 Added "delete button" back to browse view. Deactivate the ajax call when load index view first time.
  • v0.0.9 Fixed a bug which crashes the server when different users delete files asynchronously.
  • v0.0.8 Seperated server to app server and web server.
  • v0.0.7 Fixed a bug which related to uploading empty directory to github.

AWS DEMO

Description

This demo is based on a jQuery plug-in called "jQuery-File-Upload". 
Two servers needed app server app.js, web server web.js. Web server used express frame work.
File Upload widget with multiple file selection, drag drop support, progress bars and preview images for jQuery.

Features

  • The maximum file size for uploads in this demo is 1 GB.
  • Only text files (.txt) are allowed in this demo.
  • Uploaded files will be saved on public/files.
  • In the browse view, current uploading fils(which are not finish yet) will appears with line and word count unkown.
  • The metadata of uploaded files will be saved on public/meta as JSON format.
  • jQuery.tmpl() is used to update the content on index page.
  • jQuery.ajax is used to update the browse view.
  • Express is used for the web server.
  • Use HashMap and min-heap to calculate the most frequent words, using Node.js.
  • Please refer to the project website and documentation for more information related to jQuery file upload plugin.

How to run

  • For the dependency, please use "$npm install".
  • Create an app server by "$node ./app.js".
  • A web server is also needed, by "$node ./web.js".
  • Open http://localhost:8080/

Problem not solved

  • Only test on Chrome version 22.0.1229.79 and Firefox version 15.0.1.
  • The function which computes the line and word number of uploaded file is not completely asynchronized.
  • If multiple large file(several GB) are uploaded at the same time, the progress bar may not fade out smoothly. One possible reason is calculating number of lines and words leads to huge amount of CPU utilization and I/O for large file.

Git

License

Released under the MIT license.

datahero-file-upload-'s People

Contributors

jinglundong avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

hitechito

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.