Hacker News new | comments | ask | show | jobs | submit login
Show HN: DPAGE – build and publish webpages on the decentralized internet (dpage.io)
161 points by brisky 33 days ago | hide | past | web | favorite | 30 comments

Hi, one of the DPAGE creators here. We’re a team of two guys who used to work at Wix (website builder). We felt that there are not many good options if you want to quickly set up a minimalistic webpage or publish some content online. So we built dpage. With dpage you can edit your pages in a dropbox paper-inspired editor and give them human readable urls. We want it to be good for personal homepages, keeping and sharing your notes, snippets and embedded content (e.g. youtube videos, twitter posts, or github gists).

In terms of tech, it’s built on top of Blockstack’s decentralized infrastructure. You log into DPAGE using a decentralized id, and your data is stored on Blockstack's decentralized storage hub (Gaia). At any point you can run your own storage hub and store your data on your own server.

DPAGE doesn’t store user data, it connects to user’s storage hub from the browser when user logs into the app. Gaia storage hubs are usually publicly accessible, but all private information is end-to-end encrypted with the private keys associated with the user’s Blockstack id.

As a result, there’s no vendor lock-in with DPAGE, users can bring their data with them to other apps, they have complete control over their data. For example, if Facebook was built this way, a user who doesn’t like FB could seamlessly start using another app and keep all their contacts and messages.

We realize that it might be harder to monetize a product, when you can’t lock-in users into your app. You basically voluntarily open yourself up to the competition. On the other hand, the total value that the product can create for the world is much greater if the data is controlled by the users and they can permission other apps to use it. Imagine all the innovation that could happen if all the data on Facebook was open to developers (with the permission of users who own the data).

We’d love to hear your thoughts or feedback about the idea or the app.

Nice, I think this is what the web needs, a Unix approach so tools can be built on top and hosts are interchangeable. Coming from wix I assume you know Carrd.co? It would be nice to start checking your editor without login as well (they do that) saving later to an id, a draft mode.

How is this different than using containers across different cloud providers? Is it just a WYSWYG webpage editor that you can run from your own machine?

Also, what's your plan to handle illegal content? You're on major cloud providers now, but they've shown that they will reject some customers who have harmful/illegal user-generated content. Anything marketed as decentralized tends to attract flies like honey.

DPAGE is not able to remove user data (even if it's illegal), because we don't store it. However, storage hub providers will have the ability remove it.

What dpage can do is deny the access to illegal content by blocking illegal dpage.io urls. But then, a user can pick to use another app that serves the pages created on dpage.

My usual question for decentralized storage system is "who is paying".

The DPAGE page says: "your data are by default stored on a free Blockstack’s Gaia storage hub". When I looked at the Blockstack, their page says "Personal data lockers built on Google, AWS, and Azure."

Does this mean that my data is stored (encrypted) on Google/AWS/Azure, and that Blockstack is currently paying for this? So if Blockstack runs out of money, all the pages are gone?

I wish people would ask this question of IPFS more often. Storage, especially long-term storage, requires incentives! Just look at BitTorrent -- at best, you continue seeding a file after downloading it out of the goodness of your heart, or (more commonly) because you can't be bothered to remove each torrent file after it finishes. In practice, the only way to keep torrent files alive for a long time is out-of-band incentives, primarily in the form of "points" on a private tracker. Even then, seeders have little incentive to seed content that isn't personally valuable to them, since they can get just as many "points" for seeding an equal amount of valuable content. In other words, good luck finding high-quality seeders for your personal photos. Ultimately, if you want someone to store your data, you need to pay them (in traditional currency or otherwise)!

I agree. This is also why Blockstack isn't built on IPFS -- your data is only available as long as someone's pinned it.

Gaia (the Blockstack storage system) will let you use IPFS as your backing store, but at the end of the day it gives users the choice as to where and how their data gets hosted. This way the user can select the best cost/performance trade-offs for hosting and storing their data.

Don't discount human relationships! For example, I have at least few friends who would be willing a small server in their apartment for me (especially since nowdays, such servers are physically small and draw very little power).

In the theoretical case where the personal photos are hosted on IPFS, they could provide storage for me. And since it is IPFS, it would not require much -- even if they get super popular, the outgoing bandwidth is still relatively small.

Going further, imaging a web build on IPFS, where it is considered acceptable and recommended to pin all the sites you link to. So ipfs hacker news pins all the articles that people are linking to, and my browser bookmarks pin all the bookmarked content (possibly via Firefox sync service), and my personal website pins all the outgoing links so they never go broken.

(Note that this likely would not with the videos very well, but I am fine with that -- most of things I bookmark, and most of HN content for that matter, is video-free)

This is all dreams today of course -- there is a number of technical reasons and missing technologies that make that setup non-feasible now. But wouldn't it be nice to have no broken links?

Platforms like Sia, Filecoin, Storj, and Maidsafe do exactly this; they pay their hosters their requisite amount in coins by the hostee.

I guess I should have disclosed that I am the co-founder of Sia. So I may be slightly biased in my opinion of which decentralized storage option is best. :P

> I wish people would ask this question of IPFS more often.

Well, that's what Filecoin is for. Although I'm generally skeptical of cryptocurrency, as well as the scalability of technologies like IPFS. But we'll see.

Blockstack engineer here. The user pays for their storage -- you would supply your own space on a storage provider of your choice (be it a cloud storage provider, your server, a BitTorrent swarm, etc.), and use it as a back-end to your Gaia hub.

The Gaia hub can be run anywhere you want -- on a server, in a service worker in your browser, etc. It's only on the write path, so availability isn't too big of a concern as long as your storage provider handles the read path (which cloud storage does).

The utopian answer would be "everyone else".

My ideal solution would use Layer 3 multicast and Layer 7 anycast heavily where content is initially hosted on your device but scales with popularity by becoming available on the nearest node near the client within the client's multicast group.

I think this problem is difficult because people want decentralization from the start. Why would I pay for hosting or transporting random content I don't care for. I believe IPFS (and bittorrent) have the scale-up decentralization where only one node hosts the content intially with gradual adoption scaling availability. Due to assymetric wan networks and traffic throttling/shaping I think hierarchial grouping of nodes is required,especially when considering low latency applications.

Correct. However, the idea is that you can run your own storage hub on a server of your choice, or, in the future, choose one or more storage providers that you trust and keep your data there (storage providers can't read your encrypted data)

This way you'll be able to pick both: 1) your storage provider 2) the app that works on top of your data

In short, yes. That's exactly what that means. This is a [Block]tech company trying to make a run up.

"Your Blockstack ID that you use to log in is stored on blockchain"

What is this "blockchain" they're talking about? I've read the Blockstack pages and I can only find references to "blockchain", no specification of what or where.

Blockstack engineer here.

Your Blockstack ID is anchored to the Bitcoin blockchain, so everyone else can find (1) your public key and (2) the location(s) where your profile and application data are stored. The naming system is described here: https://docs.blockstack.org/core/naming/introduction.html

It warms my heart to hear that people can use Blockstack and not have to think about blockchains :')

There's probably some really cool tech here, but it's unclear how a new user would start using it. The landing page shows an FAQ and a button saying "Login with Blockstack" that doesn't work when you click it in a normal web browser.

Should I have some other browser installed? Some extension?

Chrome on iOS seems to get far enough to try and create an ID. I didn’t go any farther than that though.

I tried in Safari on MacOS and it fails, because Safari doesn't recognize blockstack:eyJ0eXA... urls. Chrome seems to redirect the user to download their browser here: https://browser.blockstack.org/sign-up.

Hi, Blockstack engineer here. Thank you for the feedback. Can you tell me what browser you are using?

Hey! Sorry for the late reply. I was using Safari on MacOS Mojave.

Firefox on Debian gets nowhere. Just the landing page.

If people are interested in this they may also be interested in Beaker Browser


Why does this need blockchain for?

User IDs and URLs to where users store their data with apps such as DPAGE are on chain to guarantee self-sovereign control of identity and data.

Couldn't I simply cryptographically sign my content instead?

I can't add pictures on the mobile version, is that supposed to be like that?

You should be able to just copy-paste a link to a picture and it should appear below the link. Just like in the desktop version.

Send us an email if you still can't get it working.

This indeed a serious cool product, hope more people realize it.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact