tus / tus-resumable-upload-protocol

Open Protocol for Resumable File Uploads
https://tus.io
MIT License
1.5k stars 102 forks source link

More 1.0 implementations #67

Open kvz opened 9 years ago

kvz commented 9 years ago

Now that the protocol is stabilizing, we're looking to have more 1.0 implementations. A few ideas to kick things off:

panjunyong commented 9 years ago

We have implemented a Python server and a Python client. We will release it as soon as possible. :-)

FuGangqiang commented 9 years ago

the python implementation for tus protocol 1.0.0 is here: tusfilter: https://github.com/everydo/tusfilter tusclient: https://github.com/everydo/tusclient

but still need more tests.

kvz commented 9 years ago

the python implementation for tus protocol 1.0.0 is here: tusfilter: https://github.com/everydo/tusfilter

Thanks! It looks though like quite some extensions still need to be implemented as well? https://github.com/everydo/tusfilter/blob/master/tusfilter.py

I'm no Python expert, but would it make sense if tusfilter would be called a flask project more than a standalone server? I'm not sure exactly how standard the Flask microframework is within Python, but I feel the official tus implementations should be able to require little outside of the standard library so that it could be integrated with Flask, or Django, or run standalone. As said, my Python fu here is extremely limited so honestly seeking for advice.

That said, we can definitely list your projects among the http://tus.io/implementations.html already!

FuGangqiang commented 9 years ago

tusfilter is a wsgi filter, middleware, it can be integrated with Flask, Bottle, Django and Pyraimd, ...

the example used flask, it also can be intergrated with others

kvz commented 9 years ago

I see, thanks for clarifying this so quickly already

FuGangqiang commented 9 years ago

tusfilter and tusclient is still at the very early stage, I'll implement the other extensions and add more documents later in spare time.

Acconut commented 9 years ago

From looking at the project, your work looks amazing. Thank all of you for putting effort into these libraries. :+1:

kvz commented 9 years ago

A Node.js (CoffeeScript?) server. We could probably base it on @vayam's brewtus?

This is being tackled in https://github.com/tus/tus-node-server by Vimeo's @bhstahl. It will be ES6 JS.

choonkeat commented 9 years ago

A Client test suite that can be used to run automated tests against servers, to see if they are 100% tus 1.0 compatible (in Go?)

+1 though currently i'm just using https://github.com/tus/tus-js-client to test https://github.com/choonkeat/attache/pull/10

kvz commented 9 years ago

Thanks for sharing - have you considered making this a re-usable gem? If so, we could list it up on the implementation page!

vencax commented 9 years ago

You could check my coffeetus as well

kvz commented 9 years ago

Thanks @vencax, added it to tus.io here https://github.com/tus/tus.io/commit/54f68c9c0e38faa2f2ec226427b2623cbb93c930 :+1:

choonkeat commented 9 years ago

Thanks for sharing - have you considered making this a re-usable gem? If so, we could list it up on the implementation page!

@kvz implemented rubygem https://github.com/choonkeat/attache#rubygem the endpoint is /tus/files :bow:

matthoskins1980 commented 8 years ago

I've got a flask-tus server side implementation. So far it supports the core protocol, along with creation and termination extensions. How do I go about publishing?

BTW - amazing work you guys, this is an awesome project.

Acconut commented 8 years ago

I've got a flask-tus server side implementation. So far it supports the core protocol, along with creation and termination extensions.

That's awesome! :tada:

How do I go about publishing?

This is totally in your hands. In general, we recommend to publish the code using a hoster for version controlled and open sourced projects, such as GitHub, BitBucket or GitLab. In order to allow other people to use your implementation, you have to add a license. While we recommend the MIT license, you are free to choose from multiple solutions (see http://choosealicense.com/). In addition, it's always nice to have a README file which contains basic instructions on how to get the server up and running. Finally, we can add your project to the list of implementation (see http://tus.io/implementations.html)

BTW - amazing work you guys, this is an awesome project.

Thanks :heart:

matthoskins1980 commented 8 years ago

My Flask-Tus server is a Flask python extension. It is located at: https://github.com/matthoskins1980/Flask-Tus

Please add it to any list of server implementation you have, such as http://tus.io/implementations.html

Acconut commented 8 years ago

@matthoskins1980 Thank you a lot for this project. :) I added it to tus.io.

nzjrs commented 8 years ago

https://github.com/everydo/tusfilter is missing from the list of implementations (http://tus.io/implementations.html)

It is python, but compatible with any wsgi stack.

kvz commented 8 years ago

Thanks @nzjrs, last time @FuGangqiang mentioned it, it was still at an early stage. Is it more mature now you would say?

tusfilter and tusclient is still at the very early stage, I'll implement the other extensions and add more documents later in spare time.

nzjrs commented 8 years ago

I can't say if it is more mature, but I used it and it worked.

On 19 July 2016 at 09:35, Kevin van Zonneveld notifications@github.com wrote:

Thanks @nzjrs https://github.com/nzjrs, last time @FuGangqiang https://github.com/FuGangqiang mentioned it, it was still at an early stage. Is it more mature now you would say?

tusfilter and tusclient is still at the very early stage, I'll implement the other extensions and add more documents later in spare time.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/tus/tus-resumable-upload-protocol/issues/67#issuecomment-233554171, or mute the thread https://github.com/notifications/unsubscribe-auth/AACjowkenvlm7wDQq6k9SmvrZgBLuUJJks5qXH49gaJpZM4GAS6M .

JokerQyou commented 8 years ago

It should be more stable now, and we're using a highly customized fork in production.

kvz commented 8 years ago

Sounds good @JokerQyou @nzjrs @FuGangqiang, if three parties are happily using this v1.0.0 implementation in production, I'm confident this will be useful to others too, and fit to be listed as a community project. Added in https://github.com/tus/tus.io/commit/e2ee99bf557a0826c90a218fe17ad3a2c6a0ed79. Let me know if something needs changing 👍

smatsson commented 8 years ago

I have written a server side implementation in .NET (as a OWIN middleware). Currently it supports the core protocol and the creation extension. Source code available at https://github.com/smatsson/tusdotnet

Could you please add it to the list of implementations?

kvz commented 8 years ago

Hey that's great! Would you to make a PR against the tus.io repo for it?

If not i'll likely get to it myself next week 👌

Sent from mobile, pardon the brevity.

On 27 aug. 2016, at 12:29, Stefan Matsson notifications@github.com wrote:

I have written a server side implementation in .NET (as a OWIN middleware). Currently it supports the core protocol and the creation extension. Source code available at https://github.com/smatsson/tusdotnet

Could you please add it to the list of implementations?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

smatsson commented 8 years ago

@kvz PR sent :)

kvz commented 8 years ago

Merged! 😄

Sent from mobile, pardon the brevity.

On 27 aug. 2016, at 13:16, Stefan Matsson notifications@github.com wrote:

@kvz PR sent :)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

smatsson commented 8 years ago

@kvz Could you please re-publish the site? I was trying to do a PR for the gh-pages branch but I can't seem to run the scripts on my Windows box.

kvz commented 8 years ago

Could you please re-publish the site?

Done!

Acconut commented 7 years ago

@ifedapoolarewaju completed the Python client implementation which is available at https://github.com/ifedapoolarewaju/tus-py-client. :)

dirkmoors commented 7 years ago

I'm working on a Django Rest Framework library for handling TUS uploads: https://github.com/dirkmoors/drf-tus

ifedapoolarewaju commented 7 years ago

@dirkmoors oh nice! Looking good! Might be helpful to explicitly state in the doc and maybe on the readme that it is a tus-server implementation, so it doesn't easily get mistaken for a tus-client implementation. :)

rfelgent commented 7 years ago

Hello people,

I want to let you know, that I am working on Java implementation with Spring Boot. Although the project is at an early stage, I think it is worth to mention it. Any help is welcomed and appreciated ;-)

sb-tus

kvz commented 7 years ago

Thanks for sharing! Once it's in a decent shape let us know so we can add it to the website 💪 👍