{"id":45884096,"url":"https://github.com/x0rzavi/github-readme-terminal","last_synced_at":"2026-03-13T02:01:17.906Z","repository":{"id":212778593,"uuid":"719900617","full_name":"x0rzavi/github-readme-terminal","owner":"x0rzavi","description":"✨ Elevate your GitHub Profile ReadMe with Minimalistic Retro Terminal GIFs 🚀","archived":false,"fork":false,"pushed_at":"2024-11-08T03:31:51.000Z","size":233,"stargazers_count":644,"open_issues_count":3,"forks_count":24,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-06T13:56:01.520Z","etag":null,"topics":["aesthetic","aesthetics","ascii","ascii-art","ascii-art-generator","github-profile-readme","github-readme","github-readme-generator","github-readme-stats","hacktoberfest","linux","minimal","minimalistic","python","retro","shell","terminal","unix"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/x0rzavi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-17T06:21:18.000Z","updated_at":"2025-09-03T05:21:22.000Z","dependencies_parsed_at":"2023-12-30T08:21:31.731Z","dependency_job_id":"9f76940c-23be-4cfb-be8d-66b2de0db249","html_url":"https://github.com/x0rzavi/github-readme-terminal","commit_stats":null,"previous_names":["x0rzavi/github-readme-terminal"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/x0rzavi/github-readme-terminal","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/x0rzavi%2Fgithub-readme-terminal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/x0rzavi%2Fgithub-readme-terminal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/x0rzavi%2Fgithub-readme-terminal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/x0rzavi%2Fgithub-readme-terminal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/x0rzavi","download_url":"https://codeload.github.com/x0rzavi/github-readme-terminal/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/x0rzavi%2Fgithub-readme-terminal/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30454982,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T21:31:01.033Z","status":"online","status_checked_at":"2026-03-13T02:00:07.565Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aesthetic","aesthetics","ascii","ascii-art","ascii-art-generator","github-profile-readme","github-readme","github-readme-generator","github-readme-stats","hacktoberfest","linux","minimal","minimalistic","python","retro","shell","terminal","unix"],"created_at":"2026-02-27T15:00:30.026Z","updated_at":"2026-03-13T02:01:17.900Z","avatar_url":"https://github.com/x0rzavi.png","language":"Python","readme":"\u003cp align=\"center\"\u003e\n    \u003cimg width=\"640\" alt=\"github-readme-terminal\" src=\"https://raw.githubusercontent.com/x0rzavi/github-readme-terminal/main/docs/assets/logo.png\"\u003e\n    \u003cbr\u003e\n    \u003cb\u003e✨ Elevate your GitHub Profile ReadMe with Minimalistic Retro Terminal GIFs 🚀\u003c/b\u003e\n\u003c/p\u003e\n\n# 💻 GitHub ReadME Terminal 🎞️\n\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/github-readme-terminal)\n![PyPI - License](https://img.shields.io/pypi/l/github-readme-terminal)\n[![PyPI - Version](https://img.shields.io/pypi/v/github-readme-terminal)](https://pypi.org/project/github-readme-terminal/)\n\n## 📘 Description\n\nA Python project that empowers you to create visually stunning and unique GIFs for your GitHub Profile ReadME. Unleash your creativity and make your profile stand out from the rest!\n\n## 📸 Showcase\n\n\u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"docs/assets/sample.gif\"\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"docs/assets/sample.gif\"\u003e\n    \u003cimg alt=\"GIFOS\" src=\"docs/assets/sample.gif\"\u003e\n\u003c/picture\u003e\n\n## 🗝️ Key Features\n\n- 👾 **Retro Vibes** – Easily simulate a retro PC booting up into a *nix terminal and then running neofetch to display various details about your GitHub activity.\n- 🖼️ **Unleash Your Creativity** - Craft unique and eye-catching visuals with complete control. Your GitHub profile is your canvas, and github-readme-terminal is your paintbrush!\n- 📈 **Live GitHub Stats** - Keep your profile readme up to date with your latest achievements and contributions with built-in helper functions.\n- 🎨 **Choice of Color Schemes** – 10+ popular color schemes to choose from and full support for ANSI color escape sequences.\n- 🛠️ **TOML-based configuration** - Provides an easy and organized way to customize your terminal simulation.\n\n## 🎯 Motivation\n\n- 🌈 **Customization** is at the heart of the project – no more settling for pre-defined templates. Tailor your GitHub Profile ReadME to reflect your personality.\n- 🌐 Unlike other GitHub user statistic generators, this project offers a **fresh approach** to showcasing your profile information.\n- 🚨 Stand out in the developer community with **visually appealing** GIFs that can potentially make a lasting impression.\n- 📦 **High-level constructs** and functions for simulating various terminal operations provide unparalleled control over your ReadME aesthetic.\n\n## ⚙️ Prerequisites\n\n1. Python \u003e=3.9\n2. [FFmpeg](https://ffmpeg.org/download.html)\n3. [GitHub personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token) (Optional)\n4. [ImgBB API key](https://api.imgbb.com/) (Optional)\n\n## 📦 Installation\n\n⚙️ To install `github-readme-terminal`, you need `pip`:\n\n```bash\npython -m pip install --upgrade github-readme-terminal\n```\n\n\u003e [!NOTE]\n\u003e The package includes only [gohufont-uni-14](https://github.com/hchargois/gohufont). Bring your own fonts, if you need additional ones. Also, refer to [Pillow documentation](https://pillow.readthedocs.io/en/stable/reference/ImageFont.html#module-PIL.ImageFont) if you need to work with bitmap fonts.\n\n## 🪧 Usage\n\nHere is a basic demonstration:\n\n```python\nimport gifos\n\nt = gifos.Terminal(width=320, height=240, xpad=5, ypad=5)\nt.gen_text(text=\"Hello World!\", row_num=1)\nt.gen_text(text=\"With \\x1b[32mANSI\\x1b[0m escape sequence support!\", row_num=2)\ngithub_stats = gifos.utils.fetch_github_stats(\n    user_name=\"x0rzavi\"\n)  # needs GITHUB_TOKEN in .env or as environment variable\nt.delete_row(row_num=1)\nt.gen_text(text=f\"GitHub Name: {github_stats.account_name}\", row_num=1, contin=True)\nt.gen_gif()\nimage = gifos.utils.upload_imgbb(\n    file_name=\"output.gif\", expiration=60\n)  # needs IMGBB_API_KEY in .env or as environment variable\nprint(image.url)\n```\n\nFor advanced usage, please refer [here](https://github.com/x0rzavi/x0rzavi)\n\n## 🛠️ Configuration\n\nTunable options can be set in two locations:\n\n1. Inside TOML files located in `~/.config/gifos/`.\n2. As environment variables.\n\nEnvironment variables override configuration in TOML files\n\n### 📑 TOML configuration file format\n\n```toml\n# gifos_settings.toml\n\n[general]\ndebug = false\ncursor = \"_\"\nshow_cursor = true\nblink_cursor = true\nuser_name = \"x0rzavi\" # for prompt\nfps = 15\ncolor_scheme = \"yoru\"\nloop_count = 0 # infinite loop\n\n[files]\nframe_base_name = \"frame_\"\nframe_folder_name = \"frames\"\noutput_gif_name = \"output\"\n```\n\n```toml\n# ansi_escape_colors.toml\n\n[yoru]\n        [yoru.default_colors]\n        fg = \"#edeff0\"\n        bg = \"#0c0e0f\"\n\n        [yoru.normal_colors]\n        black = \"#232526\"\n        red = \"#df5b61\"\n        green = \"#78b892\"\n        yellow = \"#de8f78\"\n        blue = \"#6791c9\"\n        magenta = \"#bc83e3\"\n        cyan = \"#67afc1\"\n        white = \"#e4e6e7\"\n\n        [yoru.bright_colors]\n        black = \"#2c2e2f\"\n        red = \"#e8646a\"\n        green = \"#81c19b\"\n        yellow = \"#e79881\"\n        blue = \"#709ad2\"\n        magenta = \"#c58cec\"\n        cyan = \"#70b8ca\"\n        white = \"#f2f4f5\"\n```\n\n### 📑 Environment variables format\n\n```bash\nexport GIFOS_GENERAL_DEBUG=true\nexport GIFOS_GENERAL_COLOR_SCHEME=\"catppuccin-mocha\"\nexport GIFOS_CATPPUCCIN-MOCHA_DEFAULT_COLORS_FG=\"white\"\nexport GIFOS_CATPPUCCIN-MOCHA_DEFAULT_COLORS_BG=\"black\"\n# Other variables are named similarly\n```\n\n### 📂 Optional API keys\n\nOptional API keys for modules must be present in `.env` file or declared as environment variables:\n\n1. `GITHUB_TOKEN`\n   - Repository access - All repositories\n   - Repository permissions - Contents: Read-only\n2. `IMGBB_API_KEY`\n\n### 🌈 Color schemes included\n\n- [yoru](https://github.com/rxyhn/yoru#art--colorscheme) - Default\n- [gruvbox-dark](https://github.com/morhetz/gruvbox)\n- [gruvbox-light](https://github.com/morhetz/gruvbox)\n- [rose-pine](https://rosepinetheme.com/)\n- [dracula](https://draculatheme.com/)\n- [nord](https://www.nordtheme.com/)\n- [catppuccin-mocha](https://github.com/catppuccin/catppuccin)\n- [catppuccin-latte](https://github.com/catppuccin/catppuccin)\n- [onedark](https://github.com/navarasu/onedark.nvim)\n- [monokai](https://monokai.pro/)\n- [everblush](https://github.com/Everblush)\n\n## 📃 Roadmap\n\n- [ ] Add proper documentation.\n- [ ] Add GitHub streak statistics.\n- [ ] Properly handle exceptions.\n- [ ] Add unit tests.\n- [ ] Support for more ANSI escape codes.\n- [ ] More in-built color schemes.\n- [ ] More in-built text animations.\n\n## 🌱 Contributing\n\nThis is an open source project licensed under MIT and we welcome contributions from the community. We appreciate all types of contributions, including bug reports, feature requests, documentation improvements, and code contributions.\n\nRead our [Contributing Guidelines](https://github.com/x0rzavi/github-readme-terminal/blob/main/CONTRIBUTING.md) to learn about our development process, how to propose bug fixes and improvements of our Project\n\n\u003ch2\u003eCode Of Conduct📑\u003c/h2\u003e\n\nThis project and everyone participating in it is governed by the [Code of Conduct](https://github.com/x0rzavi/github-readme-terminal/blob/main/CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code.\n\n## 🤝 Acknowledgments\n\n- [liamg/liamg](https://github.com/liamg/liamg) - Inspiration.\n- [anuraghazra/github-readme-stats](https://github.com/anuraghazra/github-readme-stats) - GitHub Stats calculation logic.\n- [hchargois/gohufont](https://github.com/hchargois/gohufont) - Built-in font file.\n- Creators of all the color schemes included in this project.\n\n## ✨ Craft your masterpiece with github-readme-terminal and showcase your unique GitHub profile [here](https://github.com/x0rzavi/github-readme-terminal/discussions/categories/show-and-tell) ✨\n","funding_links":[],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fx0rzavi%2Fgithub-readme-terminal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fx0rzavi%2Fgithub-readme-terminal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fx0rzavi%2Fgithub-readme-terminal/lists"}