Comments (6)
@maxogden said:
'idea for downloading huge files:
since the window.saveAs buffers the entire file into memory, causing large files to crash the tab, a workaround would be to use a service worker to download the file using webrtc/http and then proxy that into a local http download. so to the user it appears as a standard download in their download manager UI, as opposed to now where it buffers into memory with no progress UI provided by the browser and then saves all at once'
from dat.land-roadmap.
i like service worker idea^^. am still wondering if the service worker will hit memory limits tho. was thinking about a simple workaround for this yesterday that might help with memory limits. for a different project, i did something similar to this by simply batching the data in increments and writing into a temp file.
service worker will also depend on https, so i'll add that to dat.land issues.
from dat.land-roadmap.
it'd be useful if there was a browser-compatible module that accepted a data stream (i.e., zip-stream
) and proxied it to the browser's download manager UI
dat.haus could handle downloads differently than the browser, but we should be able to use a streams interface for that too i think
from dat.land-roadmap.
this might be helpful:
https://github.com/webrtc/samples/blob/gh-pages/src/content/datachannel/datatransfer/js/main.js#L95
from dat.land-roadmap.
in progress: https://github.com/datproject/dat.land/tree/download-button
from dat.land-roadmap.
I started working on this from the client-side, but ran into issues. It would also not work well with very large .zips. Maybe it would be better to implement this on the server-side?
from dat.land-roadmap.
Related Issues (20)
- a user can see how many seeders & sources there are for a dat HOT 1
- datasets have og tags for facebook
- view current bandwidth usage in app + web HOT 1
- users own dats on web are auto synced to app HOT 4
- user can mirror somebody elses data from the website to the app by clicking button
- desktop app can sync a folder live HOT 4
- I should be able to share some files from my desktop through my browser without logging into something else HOT 1
- a user visits dat.land homepage and understands the use cases HOT 3
- app has way to get hash link, offline friendly
- dat.land bug-free and feature complete in firefox
- optimize webrtc peer discovery all the way up the stack
- devs can use dat.land extension for Chrome tools HOT 3
- User should see a message when using an incompatible browser. HOT 1
- User should understand the 'health' of a dataset HOT 1
- message dat.land user when an archive is not (currently) available (404) HOT 3
- user can login using the desktop app to auto sync their dats from web
- dat team has a private portal to manage the database
- create new dat page is triggered by button instead of home page
- listed/unlisted option in create new dat
- A user logs into their account on the web app
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dat.land-roadmap.