React to this post
Thanks for reading! I’m Lean, and I like making software projects. I also keep a visual & interactive programming blog! Oh, and before you go, sign the guestbook! See you around! —Lean
portabl.ink is a tool to create self-contained web pages in a link. Use portabl.ink to share portable prose, decentralised documents, pocket prototypes, and more!
Hint: To open a portable link, use the context menu to open the link in a new tab. Or drag the link itself into your tab bar!
portabl.ink works by using data URLs. Within a data URL, the tool bundles both the compressed data and the instructions needed to decompress and bootstrap that data. This produces a self-contained, compressed document in a single portable link.
Code is on GitHub.
Much of a portable link’s limitations come from being a data URL, which can sometimes make links tricky to use. The following lists some issues and their workarounds:
Sometimes, the best way to use a portable link is to paste it into the browser’s address bar.
The core link bundling function can be used as a library.
import pack from "https://portabl.ink/pack.js"
, or download pack.js.
// example_usage.js
import pack from "./pack.js";
async function copyLink(element) {
const url = await pack(element.innerHTML);
navigator.clipboard.writeText(url);
}
More on GitHub.
For fun
Similar projects include itty.bitty, meml.ink, selfedit, and SingleFile.
Thanks for reading! I’m Lean, and I like making software projects. I also keep a visual & interactive programming blog! Oh, and before you go, sign the guestbook! See you around! —Lean