swiftimg

Host images for a GitHub README — free, hot-linkable, no expiry

GitHub renders Markdown image links from any HTTPS host. swiftimg gives you a permanent direct URL plus the Markdown snippet, so you can drop a screenshot or demo GIF into your README in seconds.

Try swiftimg freeSee the API

Heads-up

GitHub's own user-attachment URLs require you to be signed in to view — fine for issue threads, awkward for a public README. An external host like swiftimg sidesteps that.

Step by step

  1. 1. Upload the image

    Drop the file at /upload — no account required. You'll get a viewer page, a direct image URL, and a Markdown snippet on the share box.

  2. 2. Copy the Markdown snippet

    The viewer page has a one-click copy for Markdown, HTML, and BBCode. Paste the Markdown into your README.md.

    README.md
    ![Screenshot of my app](https://i.swiftimg.com/abc123.png)
  3. 3. Resize on the fly (optional)

    On a Developer plan, append width/format hints to serve a smaller version — handy when a 4K screenshot would dominate the README.

    Resized variant
    ![Screenshot](https://i.swiftimg.com/abc123.png?w=960&fm=webp&sig=...)
  4. 4. Animated demos work too

    GIFs are accepted as-is and auto-converted to animated WebP for grids. In a README you can embed the original GIF URL or the smaller WebP — both unfurl correctly.

GitHub README — FAQ

Will the image URL expire?

No. Uploaded images stay live indefinitely — there's no rolling expiry on free uploads. Use a delete token (saved to the share box on upload) if you ever want to remove it.

Can I use it for private repos?

Yes, but the image URL itself is public. If the screenshot is sensitive, host it in a private bucket instead.

Does GitHub strip image hotlinks?

GitHub proxies external images through camo.githubusercontent.com for privacy. swiftimg URLs work through that proxy — direct delivery from i.swiftimg.com is fine.

See also

Ready to host your GitHub README images?

Start free, then unlock the full API, transforms, signed URLs, and a custom domain on the Developer plan.