Introducing DTube: a decentralized video platform using STEEM and IPFS by daviddplayer

View this thread on steempeak.com
· @daviddplayer ·
Introducing DTube: a decentralized video platform using STEEM and IPFS
<html>
<p><img src="https://steemitimages.com/0x0/https://ipfs.io/ipfs/QmWJNhrmzWLB6GhBiqb92vWo4b46nPmhRUzb6vQEu1BFgb" width="1128" height="527"/>Dear STEEM community,I am really excited to finally bring this project to the public. Introducing...<br>
<br>
<br>
</p>
<h1><a href="https://dtube.video/">DTUBE.VIDEO</a></h1>
<h1>What is DTube?</h1>
<p>DTube is an application fully written in javascript, that runs in the browser, that allows you to upload and watch videos on top of the IPFS Network. Moreover, it uses STEEM as a database and enables earning rewards from your uploads.This might ring a bell for those who remember the SteemQ project announcement, which made almost five thousand dollars in rewards, but never got released and ended up being rebranded - It's still not functional after more than a year, and even the current alpha uses a back-end server for everything and is therefore still centralized. I am sure I wasn't the only person disappointed by SteemQ.I opted for a different approach. Build something first - talk after. If you are wondering, I did everything by myself (and the help of open source libraries of course) and it took about 4 months to reach what I have now, starting from scratch.A huge part of this article will be technical and maybe not so interesting to some people, but I believe a big part of my followers are interested in this kind of discussions, so I will explain how it works. Sorry for the incoming walls of text :)</p>
<h1>How to use DTube</h1>
<h3>Logging in</h3>
<ol>
  <li>Enter your STEEM username</li>
  <li>Enter your Private Posting Key, you can find it like so:<br>
</li>
</ol>
<h3>Multi-user login</h3>
<p>Youtube and Facebook have this amazing feature that you can easily have multiple channels linked to your account and switch between them easily. I am sure I am not the only user on STEEM who owns multiple accounts, and having to use different browsers or bots to upvote with all accounts gets boring very quickly. On DTube, you can log in with as many accounts as you want, and switch between them.I don't know why SteemIt still doesn't have this feature.</p>
<h3>Settings</h3>
<p>DTube features a settings menu accessible from anywhere in the app. It allows you to adjust your voting power, filter NSFW contents similarly to SteemIt.com, and tune the IPFS Settings. IPFS Gateway is where the files are loaded from, while the API is what we use for uploading.</p>
<h3>Uploading</h3>
<p>First, you need to be logged-in to be able to access the upload page.<br>
Then just simply add a video, a snap (aka thumbnail), and finally fill the texts for the blockchain and submit!If all goes well, you should be taken to your video after submitting and it should start playing the video between 0 and 30 seconds depending on the gateway and your connection speed.</p>
<h3>Browsing Videos</h3>
<p>There are currently 3 main ways to discover contents on DTube. You can go to the homepage and discover the NEW , HOT and TRENDING categories. They work the same as SteemIt.<br>
You can access a certain user's channel by going directly to <a href="https://dtube.video/c/curator">https://dtube.video/c/curator</a> for my testing account for example.<br>
Finally, you can use the search in the top bar, more information on that later in the article.</p>
<h1>How DTube works</h1>
<h2>Using the <a href="https://steem.io/">STEEM</a> Blockchain as a database</h2>
<p>Because we want <strong>DTube to be truly decentralized</strong>, we cannot have a server running a database and use it to query things. Using a blockchain is a natural solution. STEEM has many advantages over other blockchains. It is fast (3 sec blocks). It is free, anyone can use it without having to deposit some form of currency, and transactions have no fees. Who would want to pay money to upload a video, comment a video, or even upvote? Nobody. As an added bonus, the STEEM blockchain already has a reward-earning mechanism. <br>
</p>
<p>Any video uploaded on DTube becomes a STEEM content, that can earn rewards for 7 days. DTube doesn't use either the title or the body of a content to store information, therefore if you don't want your video upload to appear in your feed, you can edit or delete it, the video would stay intact on DTube. While it would be possible to display nothing on other platforms like steemit.com or busy.org, I believe the current behavior to be fine and will help the platform growth and the users rewards.</p>
<h2>Using <a href="https://ipfs.io/">IPFS</a> as a static file storage</h2>
<p>IPFS is a protocol that enables decentralized file storage. The principle behind it is called Distributed Hash Tables (DHT). The same principle also powers the BitTorrent network. Just like how cryptocurrency uses asymmetrical cryptography, DHT networks will hash contents in order to be able to identify a file. The hash becomes the identifier of a file, and it's as easy as re-hashing a file and making sure the hashes match to ensure the file that was sent to us is the original. <br>
</p>
<p>Why not use Torrent then? Torrent arguably already has more content and is more mainstream. However, Torrent was not built for the web. Some implementations such as <a href="https://webtorrent.io/">WebTorrent</a> are trying to make it work, but it still requires some 'hybrid' clients that would act as bridges in order to transfer files from hard clients such as μTorrent to web clients that run in a browser. Not very convenient, even less efficient. I am sure a lot of you have used <a href="https://github.com/popcorn-official/popcorn-desktop">PopcornTime</a> to watch some 'pirated' content and have enjoyed it, but building something similar that runs inside a browser without having to run hybrid clients to connect people, is sadly impossible. <br>
</p>
<p>IPFS is a younger, open-source, and actively developed protocol. It has a bright future ahead. Using it as the main mean of storage for this project was a no-brainer.&nbsp;</p>
</html>
👍  , , , ,
👎  , , , , , , , ,
properties (23)
post_id11,439,962
authordaviddplayer
permlinkintroducing-dtube-a-decentralized-video-platform-using-steem-and-ipfs
categorydtube
json_metadata"{"app": "steemit/0.1", "format": "html", "links": ["https://dtube.video/", "https://dtube.video/c/curator", "https://steem.io/", "https://ipfs.io/", "https://webtorrent.io/", "https://github.com/popcorn-official/popcorn-desktop"], "image": ["https://steemitimages.com/0x0/https://ipfs.io/ipfs/QmWJNhrmzWLB6GhBiqb92vWo4b46nPmhRUzb6vQEu1BFgb"], "tags": ["dtube", "steemit", "steem", "blog", "introduceyourself"]}"
created2017-08-30 03:20:39
last_update2017-08-30 03:20:39
depth0
children2
net_rshares-171,010,776,595
last_payout2017-09-06 03:20:39
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length5,990
author_reputation-434,287,948,429
root_title"Introducing DTube: a decentralized video platform using STEEM and IPFS"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
author_curate_reward""
vote details (14)
@cheetah ·
Warning! This user is on my black list, likely as a known plagiarist, spammer or ID thief. Please be cautious with this post!
To get off this list, please chat with us in the #steemitabuse-appeals channel in [steemit.chat](http://steemit.chat).
properties (22)
post_id11,439,969
authorcheetah
permlinkcheetah-re-daviddplayerintroducing-dtube-a-decentralized-video-platform-using-steem-and-ipfs
categorydtube
json_metadata{}
created2017-08-30 03:20:48
last_update2017-08-30 03:20:48
depth1
children0
net_rshares0
last_payout2017-09-06 03:20:48
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length244
author_reputation750,854,098,279,735
root_title"Introducing DTube: a decentralized video platform using STEEM and IPFS"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
@guiltyparties ·
![introtagger.png](https://steemitimages.com/DQmWxSxjQm8GkLkCUoBP5mgxTDofhztSsAzjuVwHbogjFPD/introtagger.png)
properties (22)
post_id11,754,064
authorguiltyparties
permlinkre-daviddplayer-introducing-dtube-a-decentralized-video-platform-using-steem-and-ipfs-20170902t143742743z
categorydtube
json_metadata"{"app": "steemit/0.1", "image": ["https://steemitimages.com/DQmWxSxjQm8GkLkCUoBP5mgxTDofhztSsAzjuVwHbogjFPD/introtagger.png"], "tags": ["dtube"]}"
created2017-09-02 14:37:33
last_update2017-09-02 14:37:33
depth1
children0
net_rshares0
last_payout2017-09-09 14:37:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length109
author_reputation113,066,339,794,964
root_title"Introducing DTube: a decentralized video platform using STEEM and IPFS"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000