Explore documentation and examples for files' upload and its custom integration into Meteor.js application
Browse documentation directory or navigate using lost of links below.
Meteor-Files library features and highlights
- Event-driven API
- TypeScript Definitions
- Upload / Read files in Cordova app: Cordova support (Any with support of
FileReader
) - File upload:
- Upload via HTTP or DDP, read about difference
- Ready for small and large files (optimized RAM usage)
- Pause / Resume upload
- Auto-pause when connection to server is interrupted
- Parallel multi-stream async upload (faster than ever)
- Support of non-Latin (non-Roman) file names
- Use third-party storage:
- AWS S3 Bucket Integration
- DropBox Integration
- GridFS using
GridFSBucket
- GridFS using
gridfs-stream
(legacy) - Google Drive
- Google Cloud Storage Integration
- any other with JS/REST API
- Get upload speed
- Get remaining upload time
- Serving files (download):
- Custom download
route
- Download compatible with small and large files, including progressive (
chunked
) download - Correct
mime-type
andContent-Range
headers - Correct
206
and416
responses - Following RFC 2616
- Control access to files
- Files CRC check (integrity check)
- Serve public files with a server like nginx
- Custom download
- Write to file system (
fs.
):- Automatically writes files on FS and special Collection
path
, collection name, schema, chunk size and naming function is under your control- Support for file subversions, like thumbnails, audio/video file formats, revisions, and etc.
- Store wherever you like:
- You may use
Meteor-Files
as temporary storage - After file is uploaded and stored on FS you able to
mv
orcp
its content, see 3rd-party storage integration examples
- You may use
- Subscribe on files (collections) you need
FilesCollection
Constructor [Isomorphic]insert()
[Client] - Upload file(s) from client to serverwrite()
[Server] - WriteBuffer
to FS and FilesCollectionload()
[Server] - Write file to FS and FilesCollection from remote URLaddFile()
[Server] - Add local file to FilesCollection from FSfindOne()
[Isomorphic] - Find one file in FilesCollection; ReturnsFileCursor
find()
[Isomorphic] - Create cursor for FilesCollection; ReturnsFile__s__Cursor
remove()
[Isomorphic] - Remove files from FilesCollection and "unlink" (e.g. remove) from FSunlink()
[Server] - "Unlink" (e.g. remove) file from FSlink()
[Isomorphic] - Generate downloadable linkcollection
[Isomorphic] -Meteor.Collection
instance- Template helper
fileURL
[Client] - Generate downloadable link in a template - Initialize FilesCollection
FileCursor
Class - Instance of this class is returned from.findOne()
methodremove(callback)
- {undefined} - Remove documentlink()
- {String} - Returns downloadable URL to Fileget(property)
- {Object|mix} - Returns current document as a plain Objectfetch()
- {[Object]}- Returns current document as plain Object in Arraywith()
- {FileCursor} - Returns reactive version of current FileCursor
FilesCursor
Class - Instance of this class is returned from.find()
methodfetch()
- {[Object]} - Returns all matching document(s) as an Arraycount()
- {Number} - Returns the number of documents that match a queryremove(callback)
- {undefined} - Removes all documents that match a queryforEach(callback, context)
- {undefined} - Callcallback
once for each matching documenteach()
- {[FileCursor]} - Returns an Array ofFileCursor
made for each document on current Cursorobserve(callbacks)
- {Object} - Functions to call to deliver the result set as it changesobserveChanges(callbacks)
- {Object} - Watch a query. Receive callbacks as the result set changes- See all methods
- Default Collection Schema
- Simplest upload app
- Simplest streaming app
- Simplest download button
- Fully-featured file sharing app — live: files.veliov.com
docs
Third-party storage (AWS S3, DropBox, GridFS and Google Storage)code-sample
File subversions - Create video file with preview and multiple formatscode-sample repo
cURL/POST upload by @noris666tutorial
MUP/Docker Persistent Storage - Deploy via MeteorUp to Docker container with persistentstoragePath
tutorial
React.js usage - React with a progress bar and component with links to view, re-name, and delete the filestutorial
Migrating from CollectionFS/CFS - Live conversion from the depreciated CFS to Meteor-Files (Amazon S3 specifically, but applies to all)tutorial
GettingFilesCollection
instance - Retrieve the FilesCollection by it's underlyingMongo.Collection
instancetutorial
Migrating / moving GridFS stored files - Three step way of moving/copying/syncing GridFS-stored files between multiple Meteor applicationstutorial
GridFS streaming - Implement206
partial content response- Post-processing:
tutorial
Create Thumbnailstutorial
Image post-processing using AWS Lambdacode-sample
Resize, create thumbnail
pyfiles
(meteor-python-files) Python Client for Meteor-Files packagemeteor-autoform-file
- Upload and manage files with autoForm