Sno Station
Sno Station is your agents' workstation: open-source software that turns the AI agents you already run into one squad on your own machine. Two heads are better than one, and they get better with every
Your week of Substack, stapled into one collection: a PDF, EPUB or HTML file for offline reading. Free, and private by design.
PluginsJavaScript · CSSGitHub @victor-shammasOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Staple — a Chrome extension that staples a week of Substack essays into one PDF, EPUB or HTML file. Open source (MIT); website and releases.
Taken from the repository README
Loading the full README.
Read the full README ↗A Chrome extension that binds a week (or any range) of Substack essays into one print-ready PDF, an EPUB for your e-reader, or a single self-contained HTML file. It uses your own Substack sign-in, so it includes free posts plus any paid posts you subscribe to; paywalled posts you can't read are shown as "preview only" and left out by default.
Install Staple from the Chrome Web Store: https://chromewebstore.google.com/detail/staple/hakeoeghnpkdejinkkbopcmonhigpmdf
chrome://extensions and turn on Developer mode (top right).Staple folder.Be signed in to substack.com in the same Chrome profile if you want Import my subscriptions and paid posts to work.
name.substack.com or a custom domain like theorybrief.com). Custom
domains ask for permission to read that site the first time. The list is
saved; Refresh subscriptions picks up new ones.
.epub (cover, contents, one chapter per post, images
embedded) for Apple Books, Kobo, Calibre or Send to Kindle..html file with the stylesheet inlined and images
embedded — opens in any browser, offline, and prints like the PDF.lib/substack.js — calls Substack's undocumented JSON API with your cookies:
/api/v1/subscriptions/page_v2 (cursor-paginated), {pub}/api/v1/archive, and
substack.com/api/v1/posts/by-id/{id} for bodies. A post counts as
"preview only" when its body has under 80% of its listed word count.lib/clean.js — strips subscribe/share widgets, turns tweets, videos and
embedded posts into static equivalents, and namespaces footnote ids.book.html / book.css — cover, contents, one article per chapter, print
typography (@page size, page numbers). Image scale resizes via Substack's
CDN (w_ parameter) and caps display width.lib/epub-export.js, lib/epub.js, lib/zip.js, epub.css — EPUB 3 (with
NCX fallback) built in the browser: images downloaded and embedded, a cover
drawn on a canvas, zipped with CompressionStream.lib/html-export.js, lib/images.js — standalone HTML export and the image
downloader shared with EPUB.lib/notice.js — the "Substack is rate-limiting — resuming in N s" banner.app.html / app.js — the picker UI. Settings, publications and groups live
in chrome.storage.local.lib/config.js — SUPPORT_URL, the Buy Me a Coffee link shown in the app
footer and for a minute on the finished book page (hidden while empty).docs/ is the public website (home, support, privacy policy), published with
GitHub Pages at https://victorshammas.com/staple/. See docs/README.md.
MIT — see LICENSE.
store/ holds the Chrome Web Store kit: the upload zip, screenshots, promo
tiles, listing and privacy-form text, a privacy policy, and a Notes
announcement draft. Start with store/SUBMISSION.md. Rebuild the zip after
code changes (the command leaves out store/ and this README):
zip -r -X store/staple-1.0.0.zip manifest.json background.js app.html app.css app.js \
book.html book.css book.js epub.css icons lib -x "*.DS_Store"