The Stoplight Elements Alternative
Stoplight Elements is the embeddable piece of the larger Stoplight platform — a genuinely capable web
component (<elements-api>) that a lot of teams reach for because it’s free, self-hostable, and backed by
a company that also sells API design and mocking tools.
Where Elements still wins
If you’re already using Stoplight for API design, mocking, or governance, Elements is the natural choice — it shares components and conventions with the rest of that platform, and the “router” modes (hash, memory, history) give you flexibility for embedding inside existing app shells and multi-page docs sites.
Where it falls short
That platform lineage is also the tax you pay if you’re not using the rest of Stoplight. Elements ships as two separate assets — a script and a stylesheet — that need to be kept in version lockstep, and as a React app packaged into a web component, it’s heavier than a purpose-built OpenAPI viewer needs to be. There’s also no equivalent to a global command palette for jumping around a large spec.
GetMan is intentionally standalone: one script tag with styles included, no platform account, no design workflow to opt into — just a spec URL in, an interactive explorer out.
Elements shows up most often inside internal developer portals built on the Stoplight platform — if that’s your use case but you don’t need the rest of the platform, see internal API documentation and self-hosted API docs for the narrower alternative.
Feature comparison
| Feature | GetMan | Stoplight Elements |
|---|---|---|
| Setup | One script tag, styles auto-injected | Separate JS + CSS tags |
| Try it out (live requests) | ||
| Dark mode | Built-in, follows system preference | Theme prop configuration |
| Command palette (⌘K) | ||
| Ties into a larger platform | No — standalone | Built for the Stoplight platform |
| License | MIT | Apache 2.0 |
Migrate in 3 steps
Swap the embed code and point GetMan at the same OpenAPI spec you're already serving.
Stoplight Elements
<script src="https://unpkg.com/@stoplight/elements/web-components.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/@stoplight/elements/styles.min.css" />
<elements-api
apiDescriptionUrl="https://your-api.com/openapi.json"
router="hash"
/>
GetMan
<div id="api-docs" style="height: 100vh"></div>
<script src="https://cdn.getman.dev/latest/getman-ui.js"></script>
<script>
GetMan.launch(
document.getElementById('api-docs'),
{ url: 'https://your-api.com/openapi.json' }
);
</script>
FAQ
Do I need a Stoplight account to use Elements?
No — the <elements-api> web component itself is open source and works standalone. But its design, docs, and defaults assume you're plugged into the broader Stoplight platform (mocking, design-first workflows), which is more than most teams need for just rendering a spec.
Why does GetMan only need one script tag when Elements needs two?
Elements ships its component styles as a separate stylesheet you have to link manually. GetMan's single script injects the required styles and fonts itself, so there's one tag to add and one thing to keep in sync with the CDN version.
Is Elements heavier than GetMan?
Elements is a React application compiled down to a web component, which carries more weight than a purpose-built embed. If all you need is 'render this spec, let people try requests,' that overhead buys you platform integration you may never use.
See GetMan next to your own spec
Paste any OpenAPI or Swagger URL and see it rendered live — no signup, no install.
Open the explorer