TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Markdoc: Stripe's Markdown-based authoring framework

810 pointsby colinclerkabout 3 years ago

39 comments

cdevroeabout 3 years ago
Stripe&#x27;s Docs have been best-in-class for a long time. Obviously, the care and human hours they put into their upkeep is the main reason for the Docs being so good. But, as with any creative endeavor, the tools matter. If the Stripe team didn&#x27;t like the content management system they used to keep the Docs up-to-date they&#x27;d be less likely to do it. As someone that has used their Docs for hours and hours and hours I&#x27;m thankful to their team for how good their Docs are.<p>Very cool of them to open source this. Looks great.
评论 #31343160 未加载
评论 #31350011 未加载
评论 #31342123 未加载
aquilaFieraabout 3 years ago
We get to use Markdoc every day and it is a joy to work with.<p>Shameless plug: we&#x27;re looking for someone to come in and a product manager over the Stripe Docs. Imagine working on docs at the company known for docs. Very fun problems.<p><a href="https:&#x2F;&#x2F;stripe.com&#x2F;jobs&#x2F;listing&#x2F;product-manager-docs&#x2F;3928998" rel="nofollow">https:&#x2F;&#x2F;stripe.com&#x2F;jobs&#x2F;listing&#x2F;product-manager-docs&#x2F;3928998</a>
评论 #31345902 未加载
评论 #31344625 未加载
etchalonabout 3 years ago
I don&#x27;t understand how this is fundamentally different than MDX, which can already mix React components within Markdown.<p>We used it to build the Streamlit docs. I assumed this is how everyone was doing documentation: <a href="https:&#x2F;&#x2F;github.com&#x2F;streamlit&#x2F;docs" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;streamlit&#x2F;docs</a>
评论 #31341426 未加载
评论 #31341713 未加载
_miau_hoch2about 3 years ago
For anyone looking for a doc generation tool:<p>I was lately evaluating several tools like VuePress, Docusaurus and AsciiDoc.<p>I ended up using Mkdocs Material (<a href="https:&#x2F;&#x2F;squidfunk.github.io&#x2F;mkdocs-material&#x2F;" rel="nofollow">https:&#x2F;&#x2F;squidfunk.github.io&#x2F;mkdocs-material&#x2F;</a>). If you haven&#x27;t already, have a look. I think it is pretty impressive. From tags, tabs to the fantastic built-in search ...
评论 #31365793 未加载
评论 #31344516 未加载
ksajadiabout 3 years ago
I&#x27;m not sure what the difference is between this and a bunch of other ones like Jekyll or Middleman? Is it in the render phase? What am I missing?
评论 #31342594 未加载
评论 #31342321 未加载
andrerpenaabout 3 years ago
OMG. I was just about to start my own Markdown parser because I needed custom elements and I was finding too hard to work with existing &quot;customizable&quot; Markdown parsers.<p>Also, I needed a React renderer for React-Native and I was also about to write my own.<p>By the looks of it, I will be able to just use Markdoc.<p>Thank you Stripe!
评论 #31349506 未加载
评论 #31345975 未加载
评论 #31348213 未加载
评论 #31345020 未加载
评论 #31344979 未加载
评论 #31344585 未加载
oellegaardabout 3 years ago
It looks like a static site generator - but at the same time it appears you cannot actually generate a static site from it, but you need to run a node.js server.<p>What separates this from any of the existing markdown static site generators?
polutroposabout 3 years ago
This is amazing. Does this power the Stripe API reference pages? <a href="https:&#x2F;&#x2F;stripe.com&#x2F;docs&#x2F;api" rel="nofollow">https:&#x2F;&#x2F;stripe.com&#x2F;docs&#x2F;api</a><p>Or is this only for <a href="https:&#x2F;&#x2F;stripe.com&#x2F;docs" rel="nofollow">https:&#x2F;&#x2F;stripe.com&#x2F;docs</a>, <a href="https:&#x2F;&#x2F;stripe.com&#x2F;docs&#x2F;payments" rel="nofollow">https:&#x2F;&#x2F;stripe.com&#x2F;docs&#x2F;payments</a>, etc?
评论 #31342643 未加载
alberthabout 3 years ago
So what&#x27;s the workflow for this?<p>Because this seems to be run locally, vs something hosted like a CMS.<p>You locally have a NodeJS app running, you draft a new page, it renders it for you in HTML&#x2F;CSS, and then you upload the rendered output to your web server?<p>(Sorry for the naive question)
评论 #31342631 未加载
todd3834about 3 years ago
So it’s been a few hours and I really love this library! I integrated it into a React&#x2F;esbuild application and it is working great. The React&#x2F;Prism example for code highlighting took a little work. They have an example but it is a little buried. Their example wasn’t working for me but it was enough for me to get my own working without react-prism.<p>Shameless plug: If anyone is interested, I published my esbuild plugin so you don’t have to transform on the server if you want to just import a markdown file.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;toddw&#x2F;esbuild-markdoc-plugin" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;toddw&#x2F;esbuild-markdoc-plugin</a>
bwwabout 3 years ago
Shameless plug: for REST APIs, I&#x27;ve written a tool called Instaunit which combines HTTP API integration tests with documentation generation, since these two things must always be maintained in lockstep.<p>It&#x27;s got a ways to go before it generates output that looks as good as Stripe&#x27;s documentation, but it makes it dead simple to create API documentation that&#x27;s guaranteed to be in sync with your service, because it was generated by your tests when they ran.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;instaunit&#x2F;instaunit" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;instaunit&#x2F;instaunit</a>
评论 #31344772 未加载
dragonshabout 3 years ago
Good for people who like to work with non-standard markdown. Not sure why companies do not use RestructuredText (rst), which is a proper specification [0] and has been very successful in the area of documentation.<p>In order to generate a print quality documentation from this markdoc format will be a huge task. RestructuredText already has strong support for Latex output.<p>Now people have plain markdown, gitbook and now markdoc with its own set of non standard extensions. Hopefully rst format can catch up among JavaScript developers.<p>So far haven’t seen a complete documentation tool like Python Sphinx [1].<p>[0] <a href="https:&#x2F;&#x2F;docutils.sourceforge.io&#x2F;docs&#x2F;ref&#x2F;rst&#x2F;restructuredtext.html" rel="nofollow">https:&#x2F;&#x2F;docutils.sourceforge.io&#x2F;docs&#x2F;ref&#x2F;rst&#x2F;restructuredtex...</a><p>[1] <a href="https:&#x2F;&#x2F;www.sphinx-doc.org&#x2F;en&#x2F;master&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.sphinx-doc.org&#x2F;en&#x2F;master&#x2F;</a>
评论 #31342156 未加载
评论 #31342955 未加载
评论 #31347732 未加载
openbrianabout 3 years ago
See also HedgeDoc <a href="https:&#x2F;&#x2F;hedgedoc.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;hedgedoc.org&#x2F;</a> which is collaborative and supports tables.
blutackabout 3 years ago
Does anyone know of tooling like this but not for only making websites?<p>I have an asciidoc based chain that mostly works for generating both PDF manuals and standalone html docs but it&#x27;s a bit of a faff to install and set up especially for non-technical users.<p>My dream is something like pandoc but with one or more diagram libraries integrated, native PDF output and all wrapped up in a single binary, maybe with a nice web UI&#x2F;editor built into the binary. Oh, and if it could manage multiple documents and versioning that would be great too. Looking for a Fossil SCM kind of feel?<p>Closest thing I&#x27;ve used would probably be LyX but that&#x27;s almost too capable!<p>I do appreciate this is a really hard thing to do and I&#x27;m wondering what toolchains other people are using?
评论 #31342050 未加载
评论 #31343040 未加载
评论 #31342361 未加载
评论 #31342498 未加载
评论 #31346170 未加载
评论 #31347629 未加载
评论 #31342011 未加载
评论 #31343058 未加载
评论 #31342160 未加载
zellynabout 3 years ago
One curiosity: I was trying to figure out how the diagram at the top of <a href="https:&#x2F;&#x2F;markdoc.io&#x2F;docs&#x2F;render" rel="nofollow">https:&#x2F;&#x2F;markdoc.io&#x2F;docs&#x2F;render</a> was generated.<p>The items inside the diagram seem curiously absent from the source of the page: <a href="https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;markdoc&#x2F;docs&#x2F;main&#x2F;pages&#x2F;docs&#x2F;render.md" rel="nofollow">https:&#x2F;&#x2F;raw.githubusercontent.com&#x2F;markdoc&#x2F;docs&#x2F;main&#x2F;pages&#x2F;do...</a><p>Instead, when the `diagram` tag is defined, it maps the &quot;type&quot; parameter to a particular diagram: <a href="https:&#x2F;&#x2F;github.com&#x2F;markdoc&#x2F;docs&#x2F;blob&#x2F;main&#x2F;components&#x2F;Diagram.js" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;markdoc&#x2F;docs&#x2F;blob&#x2F;main&#x2F;components&#x2F;Diagram...</a><p>Any reason it is done that way, rather than specifying the diagram in the source of the document using mermaid, pikchr, etc? Even inlining the SVG seems like it would be better for keeping everything together.
评论 #31342771 未加载
majkinetorabout 3 years ago
I am glad to know there are those that put so much thought into documentation. Documentations is just another service, and deserves all the same methodology: CI&#x2F;CD, automatic tests, components and reuse, different environments etc.<p>As far as I can see, you can get similar workflow with combination of existing tools. I created this docker image that combines them for very easy consumption and created thousands of pages of technical, functional and user documentation with it:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;majkinetor&#x2F;mm-docs" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;majkinetor&#x2F;mm-docs</a>
epaulsonabout 3 years ago
How does this compare to DocFX? One thing I think Microsoft does very well is the Azure documentation. It&#x27;s consistently structured across services, but even better, it&#x27;s also all just a bunch of Markdown and for any page, you can open a Github issue right from that page. And because it&#x27;s in Github, you can see the history of a page, which has been helpful to see when options change or when limitations were clarified.<p>I think MSFT just uses stock DocFX for the Azure docs site, but I&#x27;m not sure.
d4rkp4tternabout 3 years ago
Does this have functionality to auto-generate docs from (python) docstrings? Currently using Sphinx with RTD (ReadTheDocs) theme for this, and quite happy with it, though the setup took a lot of hunting around for examples. Wondering if this is the best auto-doc approach for python these days. For context, I am developing a code base with the intention of later open sourcing it, so wanted to have it properly documented from the start.
ABraidottiabout 3 years ago
I&#x27;ve been thinking about using this or Docusaurus to start a blog. Does anyone have an opinion on which of the two is better&#x2F;easier&#x2F;etc?
评论 #31343635 未加载
评论 #31351006 未加载
andrerpenaabout 3 years ago
I&#x27;m a bit confused. Following the React tutorials <a href="https:&#x2F;&#x2F;markdoc.io&#x2F;docs&#x2F;render#react" rel="nofollow">https:&#x2F;&#x2F;markdoc.io&#x2F;docs&#x2F;render#react</a> I was able to render my own react components on custom tags, which I wanted. Nice! But I&#x27;m not being able to define how to render my own components for Markdown tags like paragraph or heading :(
评论 #31345973 未加载
alphangabout 3 years ago
From the docs, it looks like they&#x27;re emphasizing the <i>document format</i> part, and less so the <i>authoring system</i> (which would make me think of SSG&#x2F;CI&#x2F;etc).<p>It also looks like there are functions, but they&#x27;re considerably shaved down compared to JavaScript&#x2F;etc.<p>I wonder if this will get more adoption in the TW community and by various static site generators.
seanwilsonabout 3 years ago
How well does this scale to hundreds of pages? I found Jekyll and others can start to slow down here during page generation where it can take several seconds to generate not that many pages, especially if you&#x27;re using a lot of template features. It&#x27;s part of the reason Hugo is my default as it&#x27;s so fast.
fellowniusmonkabout 3 years ago
&quot;side-by-side&quot; is a module that seems to be used extensively throughout this projects documentation, as well as in stripes documentation. I don&#x27;t see where it is defined anywhere, do they have a library of these common helpers? I looked but I guess my searchfu isn&#x27;t what it used to be.
评论 #31343964 未加载
schemescapeabout 3 years ago
Are relative links supported?<p>The landing page uses <i>root-relative</i> links and the FAQ&#x2F;examples don&#x27;t seem to cover links in depth.<p>I like relative links because my editor (VS Code) will auto-complete relative links... but many Markdown-based tools don&#x27;t handle the Markdown-source-to-output-HTML translation.
IshKebababout 3 years ago
This looks nice but you might want to have an example of the custom syntax on the front page because as far as I can tell that is the main thing this adds, and currently the front page doesn&#x27;t make it sound different to anything else.
mikelabattabout 3 years ago
It was good to read &quot;Why not AsciiDoc?&quot; in their FAQ: <a href="https:&#x2F;&#x2F;markdoc.io&#x2F;docs&#x2F;faq" rel="nofollow">https:&#x2F;&#x2F;markdoc.io&#x2F;docs&#x2F;faq</a>
gamblerabout 3 years ago
<a href="https:&#x2F;&#x2F;technology.reclamation.institute&#x2F;pages&#x2F;cured-html" rel="nofollow">https:&#x2F;&#x2F;technology.reclamation.institute&#x2F;pages&#x2F;cured-html</a>
cercatrovaabout 3 years ago
Lol, I haven&#x27;t seen the text following the mouse cursor (&quot;Try it out&quot;) in a <i>long</i> time. Glad to see some whimsy is still present on the Internet.
meshaneianabout 3 years ago
Solid competitor to <a href="https:&#x2F;&#x2F;hackmd.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;hackmd.io&#x2F;</a> (codimd on github)
lordleftabout 3 years ago
This is an almost breathtaking documentation site.
creakingstairsabout 3 years ago
I’ve been writing a similar thing for my blog. I wish I came across this sooner as this looks like exactly what I had wanted.
annagrigoryan2about 3 years ago
Found this right when I was looking for a quality markdown parser.<p>I guess it&#x27;s my lucky day.
nik736about 3 years ago
Browsing their Docs has this weird, glitchy animation. Where is it coming from?
评论 #31341539 未加载
AtNightWeCodeabout 3 years ago
I have been looking for exactly this. Will test it out for sure.<p>On a side-note, mixing serifs and sans in the way the site does looks like something only a mass murderer would do.
insonabout 3 years ago
Is this a new type of Jinja?
data_dersabout 3 years ago
is this jinja? the {% %} makes it look like jinja to me?
评论 #31342007 未加载
评论 #31341856 未加载
fedeb95about 3 years ago
the pointer is annoying though
dragonwriterabout 3 years ago
Name collision with:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;haghish&#x2F;markdoc" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;haghish&#x2F;markdoc</a>
评论 #31347172 未加载
dallasgutauckisabout 3 years ago
Add a newline after the title frontmatter and type &quot;u&quot;
评论 #31341555 未加载
评论 #31341485 未加载
评论 #31341583 未加载