Planktos

Serving Websites Peer-to-Peer in the Browser

What is Planktos?

Planktos enables websites to serve their static content peer-to-peer by having active users serve assets to other users. This allows website owners to significantly reduce hosting costs for static content, scale in real-time without provisioning more web servers, and prevent user impact during an outage.

How it works

1. Planktos bundles your website's static files into a torrent
2. HTTP requests are intercepted by the Planktos service worker
3. Requested files are downloaded from other online users via BitTorrent

Use Cases

Static Websites (aka The Blog Use Case): Small websites with only static files can use Planktos to stay up if their web servers go down, auto-scale in response to increased traffic, and reduce bandwidth costs. Since these websites have all of their files served by Planktos, return users can load the website even if it's web servers are unreachable!

Video Streaming Websites: Large websites with a lot of static video content can use Planktos to reduce the bandwidth to their servers and CDN. Instead of using a lot of server capacity, these websites can utilize their users to serve their video content to other users.

Benefits of using Planktos

peer-to-peer

Planktos uses WebTorrent to convert users of your website into seeders, enabling them to serve static content to other users. This reduces server bandwidth and makes your website more resilient.

Simple & Easy Integration

Using Planktos is as simple as including the Planktos install script and using the Planktos command line interface to bundle your website's static files into a torrent.

Avoid downtime

Planktos can serve your website even if your web servers go down. Any users that visited your website prior to an outage will still be able to access it.

Auto Scaling

Since Planktos turns users of your website into seeders, any increase in demand is also an increase in supply; with more users, downloads get faster.

Customizable

Planktos has sensible defaults and a simple interface for customization, allowing you to tweak it to your needs.

Supports top browsers

Planktos supports Chrome and Firefox with no plugins needed. When Planktos encounters an unsupported browser it gracefully falls back to default settings.

Secure

All files downloaded from peers are cryptographically verified as required by the BitTorrent specification.

Supports all file types

Whether it's HTML, CSS, Javascript, images, videos, or something else it all works with Planktos.

Improved Caching

Once files are downloaded, they are persisted to disk and used for any subsequent requests. Since Planktos stores file hashes, there is no need for the browser to ask your web server if any files have changed.

Learn More About Planktos

Get Started How It Works

Disclaimer: Planktos is still in alpha, so production use is not recommended yet.

Open Source

Planktos is open source and free to use. Stop by the GitHub page if you want to hack on Planktos, report a bug, or submit a feature request.

A special thanks to Feross and other contributors of WebTorrent, which this project makes extensive use of.