eventials / Go Tus
Licence: mit
A pure Go client for the tus resumable upload protocol
Stars: ✭ 105
Projects that are alternatives of or similar to Go Tus
Uploadcare Php
PHP API client that handles uploads and further operations with files by wrapping Uploadcare Upload and REST APIs.
Stars: ✭ 77 (-26.67%)
Mutual labels: upload, uploader
Angular File Uploader
Angular file uploader is an Angular 2/4/5/6/7/8/9/10 + file uploader module with Real-Time Progress Bar, Responsive design, Angular Universal Compatibility, localization and multiple themes which includes Drag and Drop and much more.
Stars: ✭ 92 (-12.38%)
Mutual labels: upload, uploader
filestack-ios
Official iOS SDK for Filestack - API and content management system that makes it easy to add powerful file uploading and transformation capabilities to any web or mobile application.
Stars: ✭ 44 (-58.1%)
Mutual labels: upload, uploader
Chibisafe
Blazing fast file uploader and awesome bunker written in node! 🚀
Stars: ✭ 657 (+525.71%)
Mutual labels: upload, uploader
google-music-manager-uploader
Google Music Manager Uploader module / Easily upload MP3 (folder) to Google Music
Stars: ✭ 21 (-80%)
Mutual labels: upload, uploader
lolisafe
Blazing fast file uploader and awesome bunker written in node! 🚀
Stars: ✭ 181 (+72.38%)
Mutual labels: upload, uploader
Cakephp File Storage
Abstract file storage and upload plugin for CakePHP. Write to local disk, FTP, S3, Dropbox and more through a single interface. It's not just yet another uploader but a complete storage solution.
Stars: ✭ 202 (+92.38%)
Mutual labels: upload, uploader
Gphotos Uploader Cli
Command line tool to mass upload media folders to your google photos account(s) (Mac OS / Linux)
Stars: ✭ 502 (+378.1%)
Mutual labels: upload, uploader
ShareX-CDN
Basic image, text & file uploader CDN for ShareX
Stars: ✭ 22 (-79.05%)
Mutual labels: upload, uploader
blobUpload
Uses file slice to upload large files. Newer version https://github.com/apivideo/uploadavideoApps. From api.video (https://api.video)
Stars: ✭ 19 (-81.9%)
Mutual labels: upload, uploader
Droply Js
Droply JS, a new responsive and cross browser chunk uploader with DragDrop and File Preview capabilities (HTML5/CSS3)
Stars: ✭ 50 (-52.38%)
Mutual labels: upload, uploader
react-native-tus-client
React Native client for the tus resumable upload protocol.
Stars: ✭ 38 (-63.81%)
Mutual labels: upload, uploader
React Images Uploading
The simple images uploader applied Render Props pattern that allows you to fully control UI component and behaviors.
Stars: ✭ 80 (-23.81%)
Mutual labels: upload, uploader
Vue Transmit
Vue.js drag & drop uploader based on Dropzone.js
Stars: ✭ 209 (+99.05%)
Mutual labels: upload, uploader
ic-firebase-uploader
This component is a multi-file uploader for firebase
Stars: ✭ 21 (-80%)
Mutual labels: upload, uploader
Uploadcare Widget
Uploadcare Widget, an ultimate tool for HTML5 file upload supporting multiple file upload, drag&drop, validation by file size/file extension/MIME file type, progress bar for file uploads, image preview.
Stars: ✭ 183 (+74.29%)
Mutual labels: upload, uploader
Vue Upload Component
Vue.js file upload component, Multi-file upload, Upload directory, Drag upload, Drag the directory, Upload multiple files at the same time, html4 (IE 9), `PUT` method, Customize the filter
Stars: ✭ 2,422 (+2206.67%)
Mutual labels: upload, uploader
angular-material-datatransfer
A HTML5 datatransfer UI for handling upload and download of multiple simultaneous files.
Stars: ✭ 13 (-87.62%)
Mutual labels: upload, uploader
go-tus
A pure Go client for the tus resumable upload protocol
Example
package main
import (
"os"
"github.com/eventials/go-tus"
)
func main() {
f, err := os.Open("my-file.txt")
if err != nil {
panic(err)
}
defer f.Close()
// create the tus client.
client, _ := tus.NewClient("https://tus.example.org/files", nil)
// create an upload from a file.
upload, _ := tus.NewUploadFromFile(f)
// create the uploader.
uploader, _ := client.CreateUpload(upload)
// start the uploading process.
uploader.Upload()
}
Features
This is not a full protocol client implementation.
Checksum, Termination and Concatenation extensions are not implemented yet.
This client allows to resume an upload if a Store is used.
Built in Store
Store is used to map an upload's fingerprint with the corresponding upload URL.
Name | Backend | Dependencies |
---|---|---|
MemoryStore | In-Memory | None |
LeveldbStore | LevelDB | goleveldb |
Future Work
- [ ] SQLite store
- [ ] Redis store
- [ ] Memcached store
- [ ] Checksum extension
- [ ] Termination extension
- [ ] Concatenation extension
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].