frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Meet SDocs - A markdown-first cli-native replacement for Word and GDocs

8•FailMore•19h ago
Hi HN, I’d like to introduce you to SmallDocs (https://sdocs.dev). I wanted to answer the question of what an agent (and therefore markdown) first version of Microsoft Word or Google Docs would look like. The result is a CLI + webapp to instantly and 100% privately preview, share and optionally style markdown files. (Code: https://github.com/espressoplease/SDocs)

The more we work with command line based agents the more `.md` files are part of our daily lives. Their output is great for agents to produce, but a little bit frustrating for humans: Markdown files are slightly annoying to read/preview and fiddly to share/receive. SDocs helps resolve these pain points.

If you `sdoc path/to/file.md` (after `npm i -g sdocs-dev`) it instantly opens in the browser for you to preview (with our hopefully-nice-to-look-at default styling) and you can immediately share the url.

The `.md` files our agents produce contain some of the most sensitive information we have (about codebases, unresolved bugs, production logs, etc.). For this reason 100% privacy is an essential component of SDocs.

To achieve this SDoc urls contain your markdown document's content in compressed base64 in the url fragment (the bit after the `#`):

https://sdocs.dev/#md=GzcFAMT...(this is the contents of your document)...

The cool thing about the url fragment is that it is never sent to the server (see https://developer.mozilla.org/en-US/docs/Web/URI/Reference/F...: "The fragment is not sent to the server when the URI is requested; it is processed by the client").

The sdocs.dev webapp is purely a client side decoding and rendering engine for the content stored in the url fragment. This means the contents of your document stays with you and those you choose to share it with, the SDocs server doesn't access it. (Feel free to inspect/get your agent to inspect our code to confirm this!)

Because `.md` files might play a big role in the future of work, SDocs wants to push the boundaries of styling and rendering interesting content in markdown files. There is much more to do, but to start with you can add complex styling and render charts visually. The SDocs root (which renders `sdoc.md` with our default styles) has pictures and links to some adventurous examples. `sdoc schema` and `sdoc charts` provides detailed information for you or your agent about how how make the most of SDocs formatting.

If you share a SDocs URL, your styles travel with it because they are added as YAML Front Matter - https://jekyllrb.com/docs/front-matter/ - to the markdown file. E.g.:

   styles:

     fontFamily: Lora

     baseFontSize: 17
At work, we've been putting this project to the test. My team and I have found SDocs to be particularly useful for sharing agent debugging reports and getting easily copyable content out of Claude (e.g. a series of bash commands that need to be ran).

To encourage our agents to use SDocs we add a few lines about them in our root "agent files" (e.g. ~/.claude/CLAUDE.md or ~/.codex/AGENTS.md). When you use the cli for the first time there is an optional setup phase to do this for you.

I'm of course very interested in feedback and open to pull requests if you want to add features to SDocs.

Thank you for taking a look!

Comments

moeadham•19h ago
I had not heard of url fragments before. Is there a size cap?
FailMore•15h ago
Ish, but the cap is the length of url that the browser can handle. For desktop chrome it's 2MB, but for mobile Safari its 80KB.

The compression algo SDocs uses reduces the size of your markdown file by ~10x, so 80KB is still ~800KB of markdown, so fairly beefy.

Darkbloom – Private inference on idle Macs

https://darkbloom.dev
153•twapi•3h ago•75 comments

Stop Using Ollama

https://sleepingrobots.com/dreams/stop-using-ollama/
190•Zetaphor•3h ago•34 comments

FSF trying to contact Google about spammer sending 10k+ mails from Gmail account

https://daedal.io/@thomzane/116410863009847575
103•pabs3•3h ago•49 comments

IPv6 traffic crosses the 50% mark

https://www.google.com/intl/en/ipv6/statistics.html?yzh=28197
43•Aaronmacaron•19h ago•22 comments

RedSun: System user access on Win 11/10 and Server with the April 2026 Update

https://github.com/Nightmare-Eclipse/RedSun
56•airhangerf15•3h ago•10 comments

The paper computer

https://jsomers.net/blog/the-paper-computer
113•jsomers•3d ago•23 comments

RamAIn (YC W26) Is Hiring

https://www.ycombinator.com/companies/ramain/jobs/bwtwd9W-founding-gtm-operations-lead
1•svee•17m ago

Moving a large-scale metrics pipeline from StatsD to OpenTelemetry / Prometheus

https://medium.com/airbnb-engineering/building-a-high-volume-metrics-pipeline-with-opentelemetry-...
25•jmarbach•2h ago•6 comments

A Look into NaviDial, Japan's Legacy Phone Service

https://www.tokyodev.com/articles/a-look-into-navidial-japan-s-legacy-phone-service
30•pwim•2h ago•3 comments

Cybersecurity looks like proof of work now

https://www.dbreunig.com/2026/04/14/cybersecurity-is-proof-of-work-now.html
365•dbreunig•1d ago•129 comments

Fast and Easy Levenshtein distance using a Trie

https://stevehanov.ca/blog/fast-and-easy-levenshtein-distance-using-a-trie
34•sebg•3d ago•3 comments

Too much discussion of the XOR swap trick

https://heather.cafe/posts/too_much_xor_swap_trick/
24•CJefferson•2d ago•6 comments

ChatGPT for Excel

https://chatgpt.com/apps/spreadsheets/
179•armcat•9h ago•128 comments

Introduction to spherical harmonics for graphics programmers

https://gpfault.net/posts/sph.html
80•luu•2d ago•7 comments

I made a terminal pager

https://theleo.zone/posts/pager/
117•speckx•8h ago•27 comments

Cal.com is going closed source

https://cal.com/blog/cal-com-goes-closed-source-why
283•Benjamin_Dobell•15h ago•202 comments

Google broke its promise to me – now ICE has my data

https://www.eff.org/deeplinks/2026/04/google-broke-its-promise-me-now-ice-has-my-data
1366•Brajeshwar•13h ago•585 comments

North American English Dialects

https://aschmann.net/AmEng/
13•skogstokig•3h ago•1 comments

Rewriting a 20-year-old Python library

https://www.b-list.org/weblog/2026/mar/23/20-year-library/
6•PaulHoule•4d ago•0 comments

FIXAPL

https://fixapl.netlify.app/
3•tosh•4d ago•0 comments

Sal Khan's AI revolution hasn't happened yet

https://www.chalkbeat.org/2026/04/09/sal-khan-reflects-on-ai-in-schools-and-khanmigo/
43•the-mitr•2h ago•49 comments

Show HN: Libretto – Making AI browser automations deterministic

https://github.com/saffron-health/libretto
93•muchael•15h ago•33 comments

Retrofitting JIT Compilers into C Interpreters

https://tratt.net/laurie/blog/2026/retrofitting_jit_compilers_into_c_interpreters.html
72•ltratt•19h ago•17 comments

The buns in McDonald's Japan's burger photos are all slightly askew

https://www.mcdonalds.co.jp/en/menu/burger/
372•bckygldstn•9h ago•187 comments

Stealth signals are bypassing Iran’s internet blackout

https://spectrum.ieee.org/iran-internet-blackout-satellite-tv
88•WaitWaitWha•5h ago•26 comments

PiCore - Raspberry Pi Port of Tiny Core Linux

http://tinycorelinux.net/5.x/armv6/releases/README
104•gregsadetsky•11h ago•12 comments

Agent - Native Mac OS X coding ide/harness

https://github.com/macOS26/Agent
40•jv22222•6h ago•9 comments

Live Nation illegally monopolized ticketing market, jury finds

https://www.bloomberg.com/news/articles/2026-04-15/live-nation-illegally-monopolized-ticketing-ma...
509•Alex_Bond•12h ago•147 comments

CRISPR takes important step toward silencing Down syndrome’s extra chromosome

https://medicalxpress.com/news/2026-04-crispr-bold-silencing-syndrome-extra.html
135•amichail•14h ago•73 comments

US v. Heppner (S.D.N.Y. 2026) no attorney-client privilege for AI chats [pdf]

https://fingfx.thomsonreuters.com/gfx/legaldocs/xmvjyjekkpr/Rakoff%20-%20order%20-%20AI.pdf
122•1vuio0pswjnm7•17h ago•94 comments