[{"data":1,"prerenderedAt":408},["ShallowReactive",2],{"project-16078572":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":36,"aspects":37,"strip":44,"post_text":47,"what":48,"said":79,"maker_in_thread":165,"shape":174,"grid":178,"attempts":370,"same_week":371,"maker_shows":18,"maker_hidden":400,"reader_version":401,"card":402},"16078572","Ipfs-dropzone","A subclass of Dropzone.js that publishes to IPFS","title","Show HN: Ipfs-dropzone, a subclass of Dropzone.js that publishes to IPFS","https:\u002F\u002Fgithub.com\u002Ffiatjaf\u002Fipfs-dropzone","github.com","fiatjaf",1515160881,2018,109,80,397,2155,19,"notable","dev_tools","javascript upload library","library",[24,25,26,27,28],"ipfs","dropzone.js","file upload","peer-to-peer","decentralized storage","curious",0.167,{"positive":32,"neutral":33,"mixed":34,"critical":35},8,32,1,2,43,{"execution":38,"pricing":40,"idea":41,"design":43},{"positive":39,"critical":39},0,{"positive":35,"critical":39},{"positive":42,"critical":35},6,{"positive":39,"critical":39},[45,39,39,39,39,45,45,45,45,46,45,45,46,34,46,45,45,45,45,45,45,45,45,45,39,45,46,45,45,45,39,39,39,45,39,39,39,46,45,46],3,5,null,{"problem":47,"audience":47,"pricing":47,"motivation":47,"time_to_build":47,"stack":49,"openness":77,"stage":78,"team_size":78},[50,61,66,70],{"value":51,"source":52,"evidence":53},"JavaScript","inferred",[54,57],{"id":55,"by":11,"text":56},"16083181","The code is amazingly simple: https:\u002F\u002Fgithub.com\u002Ffiatjaf\u002Fipfs-dropzone\u002Fblob\u002F8d7d8808ba578a265aa92e14912959c712903cc4\u002Findex.js If someone knows where to plug into Uppy's upload…",{"id":58,"by":59,"text":60},"16079506","DiThi","> I don't know how to publish this package in a way all JS transpilers and bundlers out there can understand. Please help me. Don't do this: ``` module.exports = IPFSDropzone ```…",{"value":62,"source":52,"evidence":63},"Dropzone.js",[64],{"id":65},"post",{"value":67,"source":52,"evidence":68},"IPFS",[69],{"id":65},{"value":71,"source":72,"evidence":73},"Browserify","maker",[74],{"id":75,"by":11,"text":76},"16083208","Thank you. But here are my concerns: * If I go ES6 I'll require all people importing it to also use an ES6 module bundler -- which means Babel only, or Rollup, which never works.…","open_source","unknown",{"praise":80,"objections":97,"requests":119,"questions":131,"alternatives":149},[81,93],{"value":82,"source":83,"evidence":84},"Makes sense and is cool as a demo of IPFS","commenter",[85,89],{"id":86,"by":87,"text":88},"16084829","zubairq","I have to say that DropZone is supercool and this project makes a lot of sense. We also use Dropzone.js to store files and their Hash values at VisiFile. A demo is here:…",{"id":90,"by":91,"text":92},"16079838","senoroink","Really cool demo. One suggestion is to make the dropzone more obvious. I didn't realize you had to scroll down to find the dropzone.",{"value":94,"source":72,"evidence":95},"Code is amazingly simple",[96],{"id":55,"by":11,"text":56},[98,108],{"value":99,"source":83,"evidence":100},"Doubts persistence and scalability of content kept alive only by pinning",[101,105],{"id":102,"by":103,"text":104},"16079967","DougN7","I'm having a hard time imagining this at scale. I have a few thousand web pages on my site, blog posts, etc. Most of it won't be seen in any given day. So I have to pin it as…",{"id":106,"by":103,"text":107},"16081363","Which essentially means you node is now a web server with all the responsibilities that entails (keep backups, always connected, etc). It feels fragile - I can't imagine pinning…",{"value":109,"source":83,"evidence":110},"Hosting cost and who pays for pinning is unclear",[111,115],{"id":112,"by":113,"text":114},"16078975","proaralyst","One thing I've failed to find out about IPFS: who pays for hosting? The user? Or is it donated by some peers?",{"id":116,"by":117,"text":118},"16079211","reconbot","They seem to be using https:\u002F\u002Fwww.eternum.io to \"pin\" the file (keep a copy of the file alive). Since eternum is a paid service they might unpin after a while but it's up to…",[120,124],{"value":121,"source":83,"evidence":122},"Make the dropzone more obvious in the demo layout",[123],{"id":90,"by":91,"text":92},{"value":125,"source":83,"evidence":126},"Add to Uppy",[127],{"id":128,"by":129,"text":130},"16082569","kvz","Wondering if anybody would be up for adding this to uppy.io",[132,139],{"value":133,"source":83,"evidence":134},"How do content updates work when hashes change",[135],{"id":136,"by":137,"text":138},"16080445","Paul-ish","> It also means you don't need to trust the server to send you the correct content, since everything is automatically checked against its content hash. This is the confusing part…",{"value":140,"source":83,"evidence":141},"How does IPFS persistence and pinning work",[142,146],{"id":143,"by":144,"text":145},"16079223","wolfgang42","This is the #1 thing I see people confused about with IPFS. Basically, there's 3 ways for content to become available: 1. You add the files to your own node. This is how content…",{"id":147,"by":144,"text":148},"16079456","It looks like ipfs-dropzone is running an in-browser node, which would go away as soon as you close the tab (since it's just a web page like any other). Content on IPFS stays…",[150,158],{"value":151,"source":83,"evidence":152},"Eternum pinning service",[153,154],{"id":116,"by":117,"text":118},{"id":155,"by":156,"text":157},"16079483","StavrosK","I can recommend https:\u002F\u002Fwww.eternum.io, because it's the best (also I built it, so I'd know).",{"value":159,"source":83,"evidence":160},"BitTorrent",[161],{"id":162,"by":163,"text":164},"16078992","mbrock","It's just like BitTorrent.",{"comments":46,"answered":34,"key":166},[167,168,171],{"id":75,"text":76},{"id":169,"text":170},"16086855","Yes.",{"id":172,"text":173},"16083360","There was someone (victorbjelkholm) talking about the zoom-out limits of https:\u002F\u002Ffilemap.xyz\u002F on IRC and I couldn't reply there: I've arbitrarily imposed these limits because the…",{"commenters":36,"max_depth":175,"maker_replies":46,"first_comment_mins":176,"lifespan_hours":177},10,64,74,[179,181,185,188,191,194,197,200,203,205,207,210,212,213,215,217,219,222,226,229,232,234,237,239,241,243,246,247,250,253,256,257,259,261,263,265,268,271,272,276,278,281,282,285,286,289,291,294,296,299,301,304,307,308,310,312,315,317,319,321,324,327,329,331,334,337,339,342,344,346,349,352,354,356,359,361,362,365,368,369],[58,39,45,180,59,39],"maker\u002Fneutral\u002Fexecution",[182,39,39,183,184,39],"16079764","commenter\u002Fneutral\u002Fnone","SEJeff",[186,39,39,183,187,39],"16079795","toddmatthews",[189,39,39,183,190,39],"16080218","mhluongo",[192,39,39,183,193,39],"16080315","bringtheaction",[195,39,39,183,196,39],"16081922","hinkley",[198,39,39,183,199,39],"16082350","hetspookjee",[201,39,39,202,196,39],"16082610","other\u002Fneutral\u002Fnone",[204,39,39,183,59,39],"16080382",[206,39,39,183,196,39],"16081917",[208,39,45,180,209,39],"16081627","allover",[211,39,39,183,59,39],"16085114",[75,39,39,180,11,34],[214,39,45,180,59,39],"16085129",[112,34,45,216,113,39],"project\u002Fneutral\u002Fpricing",[162,34,45,218,163,39],"project\u002Fneutral\u002Fidea",[220,34,45,218,221,39],"16079027","jstanley",[223,34,39,224,225,39],"16079226","commenter\u002Fneutral\u002Fidea","rco8786",[227,34,39,224,228,39],"16079291","ashark",[230,34,46,231,221,39],"16079295","project\u002Fpositive\u002Fidea",[102,34,34,233,103,39],"project\u002Fcritical\u002Fidea",[235,34,46,231,236,39],"16080237","biggerfisch",[238,34,45,218,103,39],"16081317",[240,34,45,218,144,39],"16081375",[242,34,46,231,156,39],"16080245",[244,34,46,231,245,39],"16080367","ryukafalz",[106,34,34,233,103,39],[248,34,39,224,249,39],"16081624","y4mi",[251,34,39,202,252,39],"16081804","bergie",[254,34,46,255,196,39],"16082368","project\u002Fpositive\u002Fpricing",[136,34,45,218,137,39],[258,34,45,218,144,39],"16080660",[260,34,45,218,137,39],"16081029",[262,34,45,218,144,39],"16081108",[264,34,45,218,196,39],"16082177",[266,34,45,218,267,39],"16079030","diggan",[269,34,45,218,270,39],"16079087","samschooler",[116,34,45,216,117,39],[273,34,45,274,275,39],"16079216","project\u002Fneutral\u002Fexecution","kpcyrd",[169,34,39,277,11,34],"project\u002Fneutral\u002Fnone",[279,34,39,183,280,39],"16079122","kakarot",[143,34,45,218,144,39],[283,34,45,218,284,39],"16079359","robto",[147,34,45,218,144,39],[287,34,45,216,288,39],"16079814","roland-s",[290,34,45,218,193,39],"16080358",[292,34,45,216,293,39],"16080438","prophesi",[295,34,39,202,193,39],"16080469",[297,34,39,202,298,39],"16080774","alwillis",[300,34,39,202,293,39],"16080786",[302,34,45,218,303,39],"16080361","zeta0134",[305,34,45,218,306,39],"16079395","toomuchtodo",[155,34,46,255,156,39],[309,34,39,183,306,39],"16079487",[311,34,39,183,156,39],"16079501",[313,34,45,216,314,39],"16080684","sharemywin",[316,34,45,216,156,39],"16080747",[318,34,45,216,314,39],"16097406",[320,34,45,216,156,39],"16097605",[322,34,45,218,323,39],"16079651","amelius",[325,34,39,202,326,39],"16079700","placeybordeaux",[328,34,39,202,323,39],"16082049",[330,34,39,202,144,39],"16082274",[332,34,39,202,333,39],"16082332","Fnoord",[335,34,39,336,193,39],"16080337","other\u002Fneutral\u002Fidea",[338,34,39,336,144,39],"16080525",[340,34,45,277,341,39],"16081208","pythonaut_16",[343,34,45,274,144,39],"16081406",[345,34,39,202,341,39],"16081615",[347,34,39,202,348,39],"16081683","AgentME",[350,34,39,183,351,39],"16091781","yjftsjthsd-h",[353,34,39,183,348,39],"16093553",[355,34,39,183,351,39],"16094754",[357,34,39,358,293,39],"16079610","other\u002Fneutral\u002Fpricing",[172,35,39,360,11,34],"project\u002Fneutral\u002Fprivacy",[86,45,46,231,87,39],[90,363,45,364,91,39],4,"project\u002Fmixed\u002Fdesign",[366,363,39,367,11,34],"16083191","maker\u002Fneutral\u002Fdesign",[128,46,46,231,129,39],[55,46,39,274,11,34],[],[372,377,382,386,391,396],{"id":373,"name":374,"points":375,"category":376},"16070394","PAST",362,"security_privacy",{"id":378,"name":379,"points":380,"category":381},"16090977","A simple Go web server with logging, tracing, health check",318,"languages",{"id":383,"name":384,"points":385,"category":20},"16086800","Eel",201,{"id":387,"name":388,"points":389,"category":390},"16108701","Hooks Data API",145,"data",{"id":392,"name":393,"points":394,"category":395},"16095477","Pushup alarm",134,"consumer_social",{"id":397,"name":398,"points":399,"category":381},"16117047","Nerv",133,false,"v2",{"id":403,"name":5,"line":6,"ai":400,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":404,"top":18,"kw":405,"maker":11,"domain":10,"tier":19,"attempts":39,"strip":406,"url":9,"mix":407,"praise":82,"objection":99,"sub":21},16078572,0.17,[24,25,26,27,28],"3000033335335153333333330353330003000535",[32,33,34,35],1794036562364]