https://github.com/victorabarros/termgifforge
Your Commands, Captured in Motion. On-the-Fly Terminal GIF Effortlessly Generation
https://github.com/victorabarros/termgifforge
gif golang terminal vhs
Last synced: 9 months ago
JSON representation
Your Commands, Captured in Motion. On-the-Fly Terminal GIF Effortlessly Generation
- Host: GitHub
- URL: https://github.com/victorabarros/termgifforge
- Owner: victorabarros
- License: mit
- Created: 2025-01-24T21:01:02.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-08-31T00:41:59.000Z (11 months ago)
- Last Synced: 2025-09-11T22:53:17.434Z (11 months ago)
- Topics: gif, golang, terminal, vhs
- Language: Go
- Homepage: https://victor.barros.engineer/termgif
- Size: 96.7 KB
- Stars: 10
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TermGIFforge 👾
[](https://goreportcard.com/report/github.com/victorabarros/termgifforge) 
**Turn your terminal recordings into captivating GIFs effortlessly.**
Ideal for tutorials, documentation, and sharing terminal workflows.
Use this API to present creative ways of your software commands.
## Table of Contents
- [TermGIFforge 👾](#termgifforge-)
- [Table of Contents](#table-of-contents)
- [Instructions](#instructions)
- [How to run](#how-to-run)
- [Locally w/ docker 🐳](#locally-w-docker-)
- [Troubleshooting](#troubleshooting)
- [Contributing](#contributing)
- [Support](#support)
- [References](#references)
## Instructions
**TermGIFforge** uses the [VHS](https://github.com/charmbracelet/vhs) to generate the GIFs, [here you'll find the command references](https://github.com/charmbracelet/vhs?tab=readme-ov-file#vhs-command-reference) to generate your own GIFs.
Try:
- `http://terminalgifapi.com/api/v1/gif?commands=["Type \"echo 'The Magic Happens Here'\"","Enter","Sleep 2s"]`
- `http://terminalgifapi.com/api/v1/gif?commands=[
"Set FontSize 50",
"Set TypingSpeed 75ms",
"Type \"echo \"",
"Set TypingSpeed 500ms",
"Type \"'YEY\"",
"Set TypingSpeed 75ms",
"Type \"!!!'\"",
"Sleep 100ms",
"Enter",
"Sleep 2s"]`
- `http://terminalgifapi.com/api/v1/gif?commands=["Type \"echo 'Welcome to VHS!'\"","Enter","Type \"ls\"","Sleep 100ms","Enter","Sleep 2s"]`
## How to run
### Locally w/ docker 🐳
Then, from browser or [Bruno](./zarf/bruno/), open:
- [http://localhost:9001/api/v1/gif?commands=\["Type \\"echo Hi\\"","Enter","Sleep 2s"\]](http://localhost:9001/api/v1/gif?commands=["Type%20\"echo%20Hi\"","Enter","Sleep%202s"])
## Troubleshooting
- How to encode the URL to use in the HTML tag?
- Simply enter your URL to the browser and it'll parse it to you.
- How to force image (cache) update in README.rst on GitHub?
- run `curl -X PURGE {url of cached badge image}` and refresh the page [(reference)](https://stackoverflow.com/questions/26898052/how-to-force-image-cache-update-in-readme-rst-on-github).
## Contributing
Contributions are welcome! Feel free to open issues or fork the repo and submit pull requests to enhance the project.
## Support
## References
- https://github.com/charmbracelet/vhs
---
Made in Brazil