Real upload progressBuilt on XMLHttpRequest instead of fetch, so you get real 0-100% progress events fetch can't give you.
Retries and cancellationRetry a failed upload or cancel one in flight, with lifecycle callbacks to hook in your own side effects.
Chunked uploads for large filesFiles too big for a single request are split into sequential chunks, each retried independently on failure.
Headless and typedNo UI, no styling opinions — bring your own components. Fully typed API with generics for your response shape.