svg-term-cli: Share Terminal Sessions as Razor-Sharp Animated SVGs

This repository profile is provided by osrepos.com, an open source repository discovery platform.

svg-term-cli: Share Terminal Sessions as Razor-Sharp Animated SVGs

Summary

svg-term-cli is a powerful command-line tool that transforms asciicast recordings into animated SVG files. This allows developers to share high-quality, scalable terminal sessions in places where traditional video or GIF formats fall short, such as GitHub READMEs or npm registry pages. It provides a superior viewing experience with razor-sharp text and customizable styling.

Repository Information

Analyzed by OSRepos on March 11, 2026

Topics

Click on any tag to explore related repositories

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Introduction

svg-term-cli is a command-line interface tool designed to convert asciicast recordings into animated SVG (Scalable Vector Graphics) files. This innovative approach allows developers to share terminal sessions with exceptional clarity and scalability, making them perfect for documentation, presentations, and web content. Unlike traditional GIF recordings, SVGs maintain their sharpness at any zoom level and can be styled with common terminal color profiles.

Key features include:

  • Render asciicast to animated SVG.
  • Share asciicasts everywhere, without requiring JavaScript players.
  • Style output with various terminal color profiles.

Installation

To get started with svg-term-cli, you first need to install asciinema, which is used for recording terminal sessions.

  1. Install asciinema: Follow the instructions at https://asciinema.org/docs/installation.
  2. Install svg-term-cli: Once asciinema is set up, install svg-term-cli globally via npm:
npm install -g svg-term-cli

Examples

Generating an animated SVG from an existing asciicast is straightforward. Here's an example demonstrating how to create the parrot.svg from asciicast ID 113643, including window decorations:

svg-term --cast=113643 --out examples/parrot.svg --window

You can also pipe asciinema recordings directly into svg-term-cli or specify an input JSON file. The tool offers various options for customization, including output file, dimensions, timeline ranges, and cursor visibility.

Why Use It

The primary rationale behind svg-term-cli is to provide a superior alternative to GIF asciicast recordings, especially in environments where the interactive asciinema player cannot be used. This includes common scenarios like README.md files on GitHub or the npm registry.

GIFs often suffer from pixelation and large file sizes, compromising the readability of terminal text. By contrast, svg-term-cli produces vector-based animations, ensuring that text remains razor-sharp and perfectly legible, even when zoomed in. This significantly enhances the quality and professionalism of your project's documentation.

Links

For more information and related projects, check out these resources:

Related repositories

Similar repositories that may be relevant next.

Flask-Assets: Seamless Asset Management for Flask Applications

Flask-Assets: Seamless Asset Management for Flask Applications

July 26, 2026

Flask-Assets provides robust integration of the `webassets` library with Flask. It simplifies the process of merging, minifying, and compiling CSS and JavaScript files, significantly enhancing web application performance and streamlining development workflows.

PythonFlaskWeb Development
webassets: Asset Management for Python Web Development

webassets: Asset Management for Python Web Development

July 26, 2026

webassets is a robust library designed for asset management in Python web development. It simplifies the process of merging and compressing JavaScript and CSS files, enhancing application performance. This tool is essential for developers looking to optimize their frontend assets efficiently.

PythonWeb DevelopmentAsset Management
Become-A-Full-Stack-Web-Developer: Free Resources for Web Development

Become-A-Full-Stack-Web-Developer: Free Resources for Web Development

July 19, 2026

The Become-A-Full-Stack-Web-Developer repository is an extensive collection of free resources designed to guide aspiring developers through the entire journey of full-stack web development. It covers a wide array of topics, from foundational languages like HTML, CSS, and JavaScript to advanced frameworks such as React and Node.js, alongside databases, APIs, and career preparation. This resource is invaluable for anyone looking to build a strong skill set in modern web development.

Full StackWeb DevelopmentLearning Resources
Awesome Vue: A Curated List of Essential Vue.js Resources and Projects

Awesome Vue: A Curated List of Essential Vue.js Resources and Projects

July 13, 2026

Awesome Vue is a highly popular and meticulously curated list of everything related to Vue.js, from official resources and tutorials to frameworks, components, and real-world applications. It serves as an indispensable guide for developers looking to explore the vast Vue.js ecosystem. With over 73,000 stars, it is a testament to its value within the community.

Vue.jsJavaScriptWeb Development

Source repository

Open the original repository on GitHub.

19 counted GitHub visits

View on GitHub
OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️