Skip to content HtmlpressStatic site generator HtmlpressStatic site generator

Change theme

Keyboard shortcuts

Mintlify vs Htmlpress

Updated

Mintlify is a commercial docs platform. Content is authored in MDX in a Git repository; Mintlify hosts the rendered site, search, and analytics. Pricing is per-editor, with a free tier for open-source projects.

At a glance

Axis Htmlpress Mintlify
Language / runtime Rust (single binary, no runtime) Author in MDX; runtime is Mintlify's hosted stack (not public)
UI framework None (plain HTML + CSS, htmlpress-* web components) React (per Mintlify's docs)
Build tool htmlpress binary Mintlify CLI (preview) + hosted build
Content format HTML and Markdown pages Markdown + MDX
License MIT, self-hosted Proprietary, hosted-only
Output model Prerendered static Hosted on Mintlify infrastructure

Architecture

htmlpress is one Rust binary, installed from npm (gethtmlpress), PyPI or crates.io. It wraps each HTML page in one layout with a navigation and a theme; there is no bundler, no UI framework and no plugin API. Every built-in file — the layout, the styles, the scripts and each component — can be escaped: a file at the same path under .htmlpress/ replaces it. The source and the output are both yours.

Mintlify is a hosted SaaS. You commit MDX + a mint.json config to a Git repo; Mintlify pulls it on push, builds, and serves the result from <your-subdomain>.mintlify.app or a custom domain. The build pipeline and runtime are managed and not user-installable.

Content layout is unconstrained on the htmlpress side: it scans by glob (include/exclude in htmlpress.yaml, every .html file by default), and a page's URL follows its file path below the glob's base, so docs/**/*.html serves docs/guide.html at /guide/. There's no required docs/ folder. The navigation is built from the folders and each page's <meta name="order">; a folder's index.html names its group. Mintlify expects the file tree to match the navigation block in mint.json; routes mirror file paths under the configured content root.

Content surface

Mintlify accepts Markdown + MDX with frontmatter and component embedding. It ships a fixed set of components (<Card>, <Accordion>, <Tabs>, <Steps>, …) that authors compose in MDX. You don't write your own React components for the docs UI — you use Mintlify's primitives.

htmlpress pages are plain semantic HTML, styled by the theme from the elements themselves. Richer blocks are htmlpress-* custom elements (htmlpress-callout, htmlpress-tabs, htmlpress-filetree, htmlpress-cards, …), whose CSS and JS are linked only on pages that use the tag. A project adds its own tag with .htmlpress/components/<name>/<name>.html, which replaces the tag at build time. The built-in ones (htmlpress-cards + htmlpress-card, htmlpress-tabs, htmlpress-filetree) produce the same kind of UI and can each be escaped.

Mintlify's mint.json configures navigation, branding, and integrations in one declarative file. htmlpress uses htmlpress.yaml for site-level settings and each page's <head> for its own.

Feature matrix

Capability Htmlpress Mintlify
Versioning Partial (a section or a deploy per version) Yes (built-in)
Internationalization (i18n) Yes (translations, language picker, 7 bundled UI languages) Yes (built-in)
Search Yes (built-in, client-side) Yes (built-in, AI-powered)
AI chat / agents No (agent files: llms.txt, Markdown copies, skills) Yes (built-in)
Analytics No (bring your own via head scripts) Yes (built-in dashboard)
OpenAPI rendering No Yes (built-in)
Blog No Yes (changelog/news pages)
Sitemap Yes (with site set) Yes
RSS No Yes (changelog feeds)
Themes Escapes in .htmlpress/ + --htmlpress-* tokens Theming via mint.json
Custom routes Any .html file; extra layouts in .htmlpress/layouts/ No (content-only)
Self-host Yes No

Output & deployment

htmlpress writes every page to static HTML in .htmlpress/build/, along with robots.txt, a sitemap.xml when site is set, a Markdown copy of each page, llms.txt and the agent skills under .well-known/agent-skills/. The base key serves the site under a sub-path. See Deployment for host guides.

Mintlify deploys are handled by Mintlify. You don't build or host the output yourself; the platform serves the rendered site from its CDN and provisions TLS, domains, and previews. Disconnecting from Mintlify means re-authoring or migrating the content elsewhere.

See also

Created with ❤ and Htmlpress

Actions

Edit on GitHubView as Markdown

Contents