BYTETOOLS

Readme Typing SVG API

Free animated SVG API with no key: generate a typing-and-deleting text animation from URL parameters, embeddable anywhere an image works. Tested example included.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-21

What is the Readme Typing SVG API?

Readme Typing SVG generates an animated typing effect as an SVG from query parameters, with no API key. Because the animation is pure SVG with SMIL, it renders inside an image tag on GitHub and anywhere else static images are allowed.

GitHub strips JavaScript from README files, which is why profile pages that appear to animate are almost always doing it with SVG. This service generates exactly that: a self-contained SVG with the typing and deleting animation baked in, referenced as an ordinary image. No script executes and nothing is blocked.

Every aspect is a query parameter — `lines` holds semicolon-separated strings to cycle through, and `font`, `size`, `color`, `duration`, `pause`, `width`, `height` and `center` control the rest. Text must be URL-encoded, which is where most problems start: an unencoded semicolon or ampersand silently truncates the animation. The project is open source and self-hostable, and the returned SVG carries a source comment identifying it. Note that GitHub's image proxy caches aggressively, so an updated URL may show the old animation for a while.

Quick facts

Base URL
https://readme-typing-svg.demolab.com
Authentication
No API key and no account. Self-hosting is supported and encouraged for heavy use.
Rate limit
No published limit. Images are cached by GitHub's proxy in the common case.
Pricing
Free and open source.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the Readme Typing SVG API

Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.

1. Generate an animated typing SVG

GET https://readme-typing-svg.demolab.com/?lines=Hello+ByteTools

curl
curl 'https://readme-typing-svg.demolab.com/?lines=Hello+ByteTools'
JavaScript (fetch)
const res = await fetch("https://readme-typing-svg.demolab.com/?lines=Hello+ByteTools");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://readme-typing-svg.demolab.com/?lines=Hello+ByteTools", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
<!-- https://github.com/DenverCoder1/readme-typing-svg/ -->
<svg xmlns='http://www.w3.org/2000/svg'
    xmlns:xlink='http://www.w3.org/1999/xlink'
    viewBox='0 0 400 50'
    style='background-color: #00000000;'
    width='400px' height='50px'>

    
                <path id='path0'>
                            <!-- Single line -->
                                <animate id='d0' attributeName='d

Parameters

ParameterTypeRequiredDescription
linesqueryRequiredSemicolon-separated lines to type in sequence. URL-encode the whole value. Hello+ByteTools
fontqueryOptionalGoogle Font family name. Fira+Code
sizequeryOptionalFont size in pixels. 24
colorqueryOptionalText colour as a hex value without the leading hash. 36BCF7
durationqueryOptionalMilliseconds per line. 3000
pausequeryOptionalMilliseconds to pause between lines. 1000
width / heightqueryOptionalSVG dimensions in pixels. 435
center / vCenterqueryOptionalCentre the text horizontally or vertically. true

Response fields

(body)image/svg+xml
The animated SVG, opening with a source comment identifying the project. Self-contained with no external dependencies.
Content-Typeheader
`image/svg+xml`. The animation uses SMIL, so it plays wherever SVG animation is supported.
(embedding)behaviour
Works inside a Markdown image reference, which is the whole point — GitHub strips scripts but renders animated SVG.

What you can build with the Readme Typing SVG API

  • Animate a heading on a GitHub profile README
  • Add a typing effect to a documentation landing page
  • Cycle through a list of technologies or taglines
  • Generate an animated banner without writing any CSS or JavaScript

Common errors and how to fix them

Animation stops after the first line

An unencoded semicolon or ampersand truncated the parameter.

Fix: URL-encode the entire `lines` value. This is by far the most common problem.

Font is ignored

Only Google Fonts families are available, by exact name.

Fix: Use the family name as Google Fonts spells it, with `+` for spaces. Unknown names fall back to a default.

Text is clipped

The SVG has fixed dimensions.

Fix: Increase `width` and `height` to fit your longest line. There is no automatic sizing.

Old animation still showing

GitHub's image proxy caches aggressively.

Fix: Change a parameter to bust the cache, or wait for the proxy to expire it.

Readme Typing SVG API — frequently asked questions

Is Readme Typing SVG free?

Yes, free with no key. It is an open source project and can be self-hosted, which the maintainers encourage for heavy use.

How does animation work inside a GitHub README?

The animation is SMIL inside the SVG itself, so no script executes. GitHub strips JavaScript but renders animated SVG in an image tag, which is what makes this work.

Why does only my first line appear?

Almost certainly an unencoded semicolon or ampersand in the `lines` parameter, which truncates it. URL-encode the whole value.

Can I use a custom font?

Only Google Fonts families, referenced by their exact name with `+` for spaces. Anything unrecognised falls back to the default.

Tools that pair with this API

Readme Typing SVG is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.