
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
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.