HTTP-based
Built as a layer on top of the popular HTTP protocol, tus can easily be integrated into applications using existing libraries, proxies and firewalls, and can be used directly from any website.
People are sharing more and more photos and videos every day. Mobile networks remain fragile however. Platform APIs are also often a mess and every project builds its own file uploader. There are a thousand one-week projects that barely work, when all we need is one real project. One project done right.
We are the ones who are going to do this right. Our aim is to solve the problem of unreliable file uploads once and for all. tus is a new open protocol for resumable uploads built on HTTP. It offers simple, cheap and reusable stacks for clients and servers. It supports any language, any platform and any network.
It may seem to be an impossible dream. Perhaps that is because no-one has managed to solve it yet. Still, we are confident and we are going to give it our best shot. Join us on GitHub and help us make the world a better place. Say "No!" to lost cat videos! Say "Yes!" to tus!
HTTP-based
Built as a layer on top of the popular HTTP protocol, tus can easily be integrated into applications using existing libraries, proxies and firewalls, and can be used directly from any website.
Production-ready
tus is ready for use in production. It has undergone numerous rounds of improvements and received valuable feedback from people working at Vimeo, Google and multiple other well-known companies.
Open source
tus is brought to you by the people behind Transloadit but the source code to all of our implementations, this website and even the protocol itself is accessible to everyone under MIT license, directly from our GitHub organization.
Minimalistic design…
The specification only requires a very small set of features to be implemented by clients and servers. tus embraces simplicity, fast development and iteration speed for everyone.
…yet still extensible
tus nevertheless features a sizable list of extensions that introduce additional functionality, such as parallel uploading or checksums and expiration. All of these may be implemented according to your preferences.
Community-owned
We believe in an open and accessible evolution of this protocol. At any stage since the beginning of tus, feedback has been appreciated and integrated. We look forward to your contributions as well.
Additionally, there are many other projects built and maintained by our community.
pcfreak30 commented on handler: support HTTP range requests in GET /:upload in tus/tusd
timabbott opened issue Is there a way to avoid races involving `tusd` deleting files from storage? on on tus/tusd
wongak commented on Data race fix for context slog.Logger in tus/tusd
kindacoder is now watching tus/tus-js-client
phenom-world is now watching tus/tus-js-client
Acconut commented on handler: support HTTP range requests in GET /:upload in tus/tusd
Acconut commented on Upgrade log/slog in tus/tusd
Acconut closed issue Upgrade log/slog on on tus/tusd
chayutzee is now watching tus/tus-js-client
donnywals created a new tag in tus/TUSKit: 3.4
donnywals published 3.4.0 in tus/TUSKit
donnywals pushed 1 commit to tus/TUSKit
donnywals created a new tag in tus/TUSKit: 3.4
donnywals pushed 2 commits to tus/TUSKit
github-actions pushed 1 commit to tus/draft-digest-fields-problem-types
pcfreak30 commented on handler: support HTTP range requests in GET /:upload in tus/tusd
pcfreak30 commented on A redis based lock for distribued tusd instances in tus/tusd
pcfreak30 opened issue Upgrade log/slog on on tus/tusd
mkabatek commented on How to avoid 409 Conflict errors, and avoiding duplicating fingerprints. in tus/tus-js-client
mkabatek commented on How to avoid 409 Conflict errors, and avoiding duplicating fingerprints. in tus/tus-js-client