{"id":26940496,"url":"https://github.com/joanroig/metrix","last_synced_at":"2025-10-12T13:47:22.576Z","repository":{"id":285464833,"uuid":"958229245","full_name":"joanroig/metrix","owner":"joanroig","description":"📊 Metrix generates customizable retro-style GIFs, showcasing GitHub metrics for your GitHub README profile.","archived":false,"fork":false,"pushed_at":"2025-10-02T01:45:48.000Z","size":5520,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-02T03:31:29.485Z","etag":null,"topics":["ffmpeg","github","github-actions","github-api","github-metrics","github-profile","metrics","pillow","profile-readme","readme-generator","readme-profile","readme-stats","readme-template","stats"],"latest_commit_sha":null,"homepage":"https://joanroig.github.io/metrix-gallery","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/joanroig.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-31T21:20:11.000Z","updated_at":"2025-05-04T21:43:50.000Z","dependencies_parsed_at":"2025-05-01T03:19:10.873Z","dependency_job_id":"e01d836e-5fe8-4ebb-8268-8f086f6e01fc","html_url":"https://github.com/joanroig/metrix","commit_stats":null,"previous_names":["joanroig/metrix"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/joanroig/metrix","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joanroig%2Fmetrix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joanroig%2Fmetrix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joanroig%2Fmetrix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joanroig%2Fmetrix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joanroig","download_url":"https://codeload.github.com/joanroig/metrix/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joanroig%2Fmetrix/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279011459,"owners_count":26084947,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-12T02:00:06.719Z","response_time":53,"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":["ffmpeg","github","github-actions","github-api","github-metrics","github-profile","metrics","pillow","profile-readme","readme-generator","readme-profile","readme-stats","readme-template","stats"],"created_at":"2025-04-02T15:18:50.259Z","updated_at":"2025-10-12T13:47:22.569Z","avatar_url":"https://github.com/joanroig.png","language":"Python","readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://joanroig.github.io/metrix-gallery\"\u003e\n  \u003cimg alt=\"Metrix Generated Header\" src=\"https://raw.githubusercontent.com/joanroig/metrix/metrix-header-only/metrix-header.gif\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eMetrix generates customizable retro-style GIFs showcasing GitHub metrics for your GitHub README profile.\u003c/strong\u003e\u003cbr/\u003e\n  Choose your color combination with the \u003ca href=\"https://joanroig.github.io/metrix-gallery\"\u003eMetrix Gallery\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/joanroig/metrix/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/joanroig/metrix?\u0026include_prereleases\u0026label=version\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/joanroig/metrix/actions\"\u003e\u003cimg alt=\"GitHub Actions Status\" src=\"https://img.shields.io/github/actions/workflow/status/joanroig/metrix/metrix-header.yml?branch=main\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/joanroig/metrix/blob/main/LICENSE\"\u003e\u003cimg alt=\"MIT License\" src=\"https://img.shields.io/github/license/joanroig/metrix?color=blue\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/joanroig/metrix/issues\"\u003e\u003cimg src=\"https://img.shields.io/github/issues/joanroig/metrix\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/joanroig/metrix/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/joanroig/metrix\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ctable align=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#classic\"\u003e\u003cimg src=\"img/metrix-classic.gif\" width=\"240px\" /\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#red\"\u003e\u003cimg src=\"img/metrix-red.gif\" width=\"240px\" /\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#blue\"\u003e\u003cimg src=\"img/metrix-blue.gif\" width=\"240px\" /\u003e\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#classic\"\u003e\u003cb\u003eClassic\u003c/b\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#red\"\u003e\u003cb\u003eRed\u003c/b\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#blue\"\u003e\u003cb\u003eWhite-Blue\u003c/b\u003e\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#yellow-noglitch\"\n        \u003e\u003cimg src=\"img/metrix-yellow-noglitch.gif\" width=\"240px\"\n      /\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#gold-customtext\"\n        \u003e\u003cimg src=\"img/metrix-gold-customtext.gif\" width=\"240px\"\n      /\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#purple-torvalds\"\n        \u003e\u003cimg src=\"img/metrix-purple-torvalds.gif\" width=\"240px\"\n      /\u003e\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#yellow-noglitch\"\u003e\u003cb\u003eYellow No-Glitch\u003c/b\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#gold-customtext\"\u003e\u003cb\u003eGold Custom Text\u003c/b\u003e\u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#purple-torvalds\"\u003e\u003cb\u003ePurple Torvalds\u003c/b\u003e\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## 📋 Usage Guide\n\nFollow these steps to integrate Metrix into your GitHub profile:\n\n1.  **Create a New Repository**  \n    Create a new repository to host your profile README. For guidance, refer to GitHub's documentation on [setting up and managing your profile README](https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme).\n\n2.  **(Optional) Generate and Add a Personal Access Token (classic / PAT)**  \n    By default, the action will only display public data. To also include private repository data, follow these steps:\n\n    1. Create a PAT token from [GitHub's Token Settings](https://github.com/settings/tokens) with the following permissions:\n\n       - **repo**: Full control of private repositories\n       - **read:org**: Read org and team membership, and org projects\n       - **read:user**: Read all user profile data\n\n    2. In your repository, navigate to **Settings \u003e Secrets and variables** and add a new repository-secret:\n\n       - Name the secret `PAT_TOKEN`\n       - Paste the PAT token value generated in the previous step\n\n3.  **Enable Workflow Permissions**  \n    In your repository settings, go to **Settings \u003e Actions \u003e General** and enable **\"Read repository contents and packages permissions\"** at the bottom of the page.\n\n    \u003e **_NOTE:_** If you do not enable this permission, you must add the following permissions block to your workflow YAML under the jobs section:\n\n    ```yaml\n    jobs:\n      generate:\n        runs-on: ubuntu-latest\n        permissions:\n          contents: write\n    ```\n\n4.  **Add the Metrix GIF to Your README**  \n     Create a new `README.md` with this content:\n\n    ```markdown\n    \u003cp align=\"center\"\u003e\n      \u003ca href=\"https://github.com/joanroig/metrix\" title=\"View Metrix on GitHub\"\u003e\n        \u003cimg src=\"metrix.gif\"/\u003e\n      \u003c/a\u003e\n      \u003cbr/\u003e\n      \u003csub\u003eInfographic generated with \u003ca href=\"https://github.com/joanroig/metrix\"\u003ejoanroig/metrix\u003c/a\u003e\u003c/sub\u003e\n    \u003c/p\u003e\n    ```\n\n    Or add the following to your `README.md` file:\n\n    ```markdown\n    [![metrix](metrix.gif)](https://github.com/joanroig/metrix)\n    ```\n\n    You can see a live example here: https://github.com/joanroig/joanroig/blob/main/README.md\n\n5.  **Create a GitHub Action**  \n    In your repository, create a new file at `.github/workflows/metrix.yml` and paste the following content:\n\n    ```yaml\n    name: Generate Metrics GIF\n\n    on:\n      # Run manually from the Actions tab\n      workflow_dispatch:\n      # Run on schedule (adjust as needed)\n      schedule:\n        - cron: \"0 0 * * 0\" # Weekly on Sundays at midnight\n\n    jobs:\n      generate:\n        runs-on: ubuntu-latest\n        steps:\n          - name: Checkout Repository\n            uses: actions/checkout@v4\n\n          - name: Generate Metrix\n            uses: joanroig/metrix@main\n            with:\n              GITHUB_TOKEN: ${{ secrets.PAT_TOKEN || secrets.GITHUB_TOKEN }}\n              GITHUB_USERNAME: ${{ github.actor }}\n              # You can add more customization parameters here\n\n          - name: Commit and Push Metrix GIF\n            run: |\n              git config --global user.name \"github-actions[bot]\"\n              git config --global user.email \"github-actions[bot]@users.noreply.github.com\"\n              git add metrix.gif\n              git commit -m \"Update GitHub Metrix GIF\" || echo \"No changes to commit\"\n              git push\n            shell: bash\n    ```\n\n    You can find an example with all the default configuration in the [metrix-complete.yml](.github/workflows/metrix-complete.yml) file.\n\n6.  **Run the Action**  \n    Your action is now set up! Commit the changes and manually trigger the action to generate the metrics GIF.\n\n7.  **Customize Your Metrix**  \n    Customize your Metrix by adding parameters to your action from the [parameters](#parameters) section below. You can also use the [metrix-complete.yml](.github/workflows/metrix-complete.yml) as a baseline for your configuration.\n\n## 🖼️ Showcase\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://joanroig.github.io/metrix-gallery\"\u003e\n    \u003cimg alt=\"Showcase\" src=\"https://raw.githubusercontent.com/joanroig/metrix-gallery/main/showcase.gif\"\u003e\n  \u003c/a\u003e\n  \u003cbr/\u003e\n  \u003csub\u003eChoose your theme with the \u003ca href=\"https://joanroig.github.io/metrix-gallery\"\u003eMetrix Gallery\u003c/a\u003e\u003c/sub\u003e\n\u003c/p\u003e\n\nBelow are example themes with their corresponding configurations. To use any of these examples, copy the configuration snippet and add it to your GitHub action file:\n\n---\n\n### \u003ca id=\"classic\"\u003e\u003c/a\u003e Classic\n\n\u003e Notice that looping is deactivated by default!\n\n![classic](img/metrix-classic.gif)\n\n```yaml\nwith:\n  GITHUB_USERNAME: \"joanroig\"\n  BACKGROUND_COLOR: \"black\"\n  TEXT_COLOR: \"limegreen\"\n```\n\n---\n\n### \u003ca id=\"red\"\u003e\u003c/a\u003e Red\n\n![red](img/metrix-red.gif)\n\n```yaml\nwith:\n  GITHUB_USERNAME: \"joanroig\"\n  BACKGROUND_COLOR: \"black\"\n  TEXT_COLOR: \"red\"\n  LOOP: \"true\"\n```\n\n---\n\n### \u003ca id=\"blue\"\u003e\u003c/a\u003e White over blue\n\n![blue](img/metrix-blue.gif)\n\n```yaml\nwith:\n  GITHUB_USERNAME: \"joanroig\"\n  BACKGROUND_COLOR: \"blue\"\n  TEXT_COLOR: \"white\"\n  LOOP: \"true\"\n```\n\n---\n\n### \u003ca id=\"yellow-noglitch\"\u003e\u003c/a\u003e Yellow over a shaded dark color with disabled glitches\n\n![yellow noglitch](img/metrix-yellow-noglitch.gif)\n\n```yaml\nwith:\n  GITHUB_USERNAME: \"joanroig\"\n  BACKGROUND_COLOR: \"shade-dark\"\n  TEXT_COLOR: \"yellow\"\n  GLITCHES: \"false\"\n  LOOP: \"true\"\n```\n\n---\n\n### \u003ca id=\"gold-customtext\"\u003e\u003c/a\u003e Gold over dark gold, with custom texts\n\n![gold customtext](img/metrix-gold-customtext.gif)\n\n```yaml\nwith:\n  GITHUB_USERNAME: \"joanroig\"\n  BACKGROUND_COLOR: \"darkgoldenrod\"\n  TEXT_COLOR: \"gold\"\n  ACTIVITY_TEXT: \"I worked a lot lately...\"\n  TEXT: |\n  {username} is booting up.......\n  -----------------------------\n\n  Joined GitHub: {created_at}\n  Followed by: {followers} Users\n  Owner of: {total_repos} Repos\n\n  Total Commits: {total_commits}\n  Total Stars: {total_stars}\n\n  Data updated: {updated_date}\n  LOOP: \"true\"\n```\n\n---\n\n### \u003ca id=\"purple-torvalds\"\u003e\u003c/a\u003e Yellow over purple, with data from another user, reduced activity days, and custom activity text\n\n![purple-torvalds](img/metrix-purple-torvalds.gif)\n\n```yaml\nwith:\n  GITHUB_USERNAME: \"torvalds\"\n  TEXT_COLOR: \"yellow\"\n  BACKGROUND_COLOR: \"purple\"\n  ACTIVITY_TEXT: \"Last two weeks were intense:\"\n  ACTIVITY_DAYS: \"14\"\n  LOOP: \"true\"\n```\n\n---\n\n### \u003ca id=\"customsize\"\u003e\u003c/a\u003e A gif with a custom size, a bigger font size, only text, a custom cursor and a generative text color shade based on a random light background color\n\n![customsize](img/metrix-customsize.gif)\n\n```yaml\nwith:\n  FONT_SIZE: \"29\"\n  BACKGROUND_COLOR: \"random-light\"\n  TEXT_COLOR: \"shade\"\n  TEXT: \"The size of the gif\\ncan be customized!\"\n  TYPING_CHARACTER: \"|\"\n  ACTIVITY: \"false\"\n  LOOP: \"true\"\n  WIDTH: \"580\"\n  HEIGHT: \"80\"\n```\n\n---\n\n### \u003ca id=\"header\"\u003e\u003c/a\u003e Header (as seen at the top of this README)\n\n![header](https://raw.githubusercontent.com/joanroig/metrix/metrix-header-only/metrix-header.gif)\n\n```yaml\nwith:\n  FONT_SIZE: \"36\"\n  BACKGROUND_COLOR: \"random-dark\"\n  TEXT_COLOR: \"shade-light\"\n  TEXT: \"Metrix\"\n  ACTIVITY: \"False\"\n  FPS: \"30\"\n  LOOP: \"true\"\n  WIDTH: \"272\"\n  HEIGHT: \"58\"\n  GLITCHES: \"false\"\n```\n\n---\n\n## ⚙️ Configuration Parameters\n\nMetrix is highly customizable through GitHub Action arguments. A complete example, including the default parameters, is provided: [metrix-complete.yml](.github/workflows/metrix-complete.yml). Below is the full list of available parameters:\n\n| **Parameter**      | **Description**                                                                                                                                                                 | **Example/Options**                                                                       |\n| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |\n| GITHUB_TOKEN       | GitHub token used for authentication. Defaults to `PAT_TOKEN` if available.                                                                                                     | `${{ secrets.PAT_TOKEN \\|\\| secrets.GITHUB_TOKEN }}`                                      |\n| GITHUB_USERNAME    | GitHub username to display the metrics for.                                                                                                                                     | `${{ github.actor }}`                                                                     |\n| LOG_LEVEL          | Application log level.                                                                                                                                                          | `'NOTSET'`, `'DEBUG'`, `'INFO'`, `'WARNING'`, `'ERROR'`, `'FATAL'`                        |\n| FFMPEG_LOG_LEVEL   | FFmpeg log level.                                                                                                                                                               | `'DEBUG'`, `'VERBOSE'`, `'INFO'`, `'WARNING'`, `'ERROR'`, `'FATAL'`, `'PANIC'`, `'QUIET'` |\n| FONT_SIZE          | Font size for the main text. Note: Not tested, may cause rendering issues.                                                                                                      | `'20'`                                                                                    |\n| SYMBOL_FONT_SIZE   | Font size for symbols. Note: Not tested, may cause rendering issues.                                                                                                            | `'20'`                                                                                    |\n| FONT_PATH          | Path to the primary font file. Note: Not tested, may cause rendering issues.                                                                                                    | `'assets/MxPlus_IBM_BIOS.ttf'`                                                            |\n| SYMBOL_FONT_PATH   | Path to the symbol font file. Note: Not tested, may cause rendering issues.                                                                                                     | `'assets/MxPlus_IBM_BIOS.ttf'`                                                            |\n| BACKGROUND_COLOR   | Background color. Options include CSS color names, hex codes, 'random', 'random-light', 'random-dark', 'complementary', 'contrasting', 'shade', 'shade-light', or 'shade-dark'. | `'red'`,`'#6e2e2a'`,`'random-dark'`,`'contrasting'`, `'shade-light'`, etc                 |\n| TEXT_COLOR         | Color of the text. Same options as BACKGROUND_COLOR.                                                                                                                            | `'blue'`,`'#c4a5a3'`,`'random'`, `'complementary'`, ``'shade'`, etc                       |\n| MINIMUM_CONTRAST   | Minimum contrast ratio between text and background (1 to 21).                                                                                                                   | `'2'`                                                                                     |\n| TEXT               | Text content for the Metrix display. Use variables for dynamic data. See [Text Variables](#variables) below.                                                                    | `'I'm {username}`\u003cbr\u003e`I love {preferred_languages[1]},`\u003cbr\u003e` I have {total_stars} stars'` |\n| TYPING_CHARACTER   | Character used for the typing effect.                                                                                                                                           | `'█'`                                                                                     |\n| ACTIVITY           | Enable or disable the activity section.                                                                                                                                         | `'true'` or `'false'`                                                                     |\n| ACTIVITY_TEXT      | Text to display for the activity section.                                                                                                                                       | `'Last month commit activity:'`                                                           |\n| ACTIVITY_DAYS      | Number of days for the activity chart.                                                                                                                                          | `'29'`                                                                                    |\n| FPS                | Frames per second for the GIF.                                                                                                                                                  | `'50'`                                                                                    |\n| LOOP               | Enable or disable infinite looping of the GIF.                                                                                                                                  | `'true'` or `'false'`                                                                     |\n| WIDTH              | Width of the generated GIF.                                                                                                                                                     | `'608'`                                                                                   |\n| HEIGHT             | Height of the generated GIF.                                                                                                                                                    | `'342'`                                                                                   |\n| GLITCHES           | Enable or disable glitches in the GIF.                                                                                                                                          | `'true'` or `'false'`                                                                     |\n| MAX_GLITCHES       | Maximum number of glitches that can occur simultaneously.                                                                                                                       | `'4'`                                                                                     |\n| GLITCH_PROBABILITY | Probability of a glitch occurring in a frame (0 to 100).                                                                                                                        | `'3'`                                                                                     |\n| OUTPUT_FILE_PATH   | Path for the generated GIF.                                                                                                                                                     | `'metrix.gif'`                                                                            |\n\n### \u003ca id=\"variables\"\u003e\u003c/a\u003e📝 Text Variables (Curated GitHub API Data)\n\n| **Variable**                                          | **Description**                                                                      | **Example Replacement**            |\n| ----------------------------------------------------- | ------------------------------------------------------------------------------------ | ---------------------------------- |\n| `{username}`                                          | GitHub username                                                                      | `'joanroig'`                       |\n| `{separator}`                                         | Custom separator for formatting                                                      | `'------------------------------'` |\n| `{updated_date}`                                      | Date of the latest update                                                            | `'2025-04-05'`                     |\n| `{total_repos}`                                       | Total number of repositories                                                         | `'42'`                             |\n| `{total_commits}`                                     | Total number of commits                                                              | `'500'`                            |\n| `{total_stars}`                                       | Total number of stars across repositories                                            | `'150'`                            |\n| `{total_forks}`                                       | Total number of forks                                                                | `'30'`                             |\n| `{total_watchers}`                                    | Total number of watchers                                                             | `'100'`                            |\n| `{total_open_issues}`                                 | Total number of open issues                                                          | `'10'`                             |\n| `{preferred_languages}` or `{preferred_languages[X]}` | Preferred programming languages, where X can be set to a number to limit the results | `'TypeScript, Python, JavaScript'` |\n| `{preferred_topics}` or `{preferred_topics[X]}`       | Preferred topics, where X can be set to a number to limit the results                | `'API, Hacking'`                   |\n| `{preferred_licenses}` or `{preferred_licenses[X]}`   | Preferred license types, where X can be set to a number to limit the results         | `'MIT','GPL'`                      |\n\n#### Extended Text Variables (Raw GitHub API Data)\n\nThese variables are sourced directly from the GitHub User API data without any transformations, except for the reformatting of dates. Please note that this data may change over time, and the variables listed were the ones available at the time of writing:\n\n| **Variable**                  | **Description**                            | **Example**                         |\n| ----------------------------- | ------------------------------------------ | ----------------------------------- |\n| `{login}`                     | GitHub login name                          | `'joanroig'`                        |\n| `{id}`                        | Unique GitHub user ID                      | `'123456789'`                       |\n| `{node_id}`                   | Node identifier                            | `'MDQ6VXNlcjEyMzQ1Njc4OQ=='`        |\n| `{type}`                      | Type of account (e.g., \"User\")             | `'User'`                            |\n| `{user_view_type}`            | User view type (e.g., \"private\")           | `'private'`                         |\n| `{site_admin}`                | Site administrator status (Boolean)        | `'false'`                           |\n| `{name}`                      | Display name                               | `'Joan Roig'`                       |\n| `{company}`                   | Company name (if provided)                 | `'Company Inc.'`                    |\n| `{blog}`                      | Blog URL                                   | `'https://blog.example.com'`        |\n| `{location}`                  | User location                              | `'Barcelona, Spain'`                |\n| `{email}`                     | Email address (if provided)                | `'joan@example.com'`                |\n| `{hireable}`                  | Hireable status (if provided)              | `'true'`                            |\n| `{bio}`                       | Biography                                  | `'Software developer and musician'` |\n| `{twitter_username}`          | Twitter username                           | `'@joanroig'`                       |\n| `{public_repos}`              | Count of public repositories               | `'35'`                              |\n| `{public_gists}`              | Count of public gists                      | `'5'`                               |\n| `{followers}`                 | Number of followers                        | `'200'`                             |\n| `{following}`                 | Number of users followed                   | `'150'`                             |\n| `{created_at}`                | Date the GitHub account was created        | `'2015-05-17'`                      |\n| `{updated_at}`                | Date the GitHub account was last updated   | `'2025-04-05'`                      |\n| `{private_gists}`             | Count of private gists                     | `'10'`                              |\n| `{total_private_repos}`       | Total number of private repositories       | `'10'`                              |\n| `{owned_private_repos}`       | Count of owned private repositories        | `'5'`                               |\n| `{disk_usage}`                | Disk usage in kilobytes                    | `'50000'`                           |\n| `{collaborators}`             | Number of collaborators                    | `'10'`                              |\n| `{two_factor_authentication}` | Two-factor authentication status (Boolean) | `'true'`                            |\n\n## 🛠️ Development Setup\n\n### Requirements\n\n- **Conda** or **Miniconda** (alternatively, only Python)\n- **FFmpeg**\n- **VSCode** (optional, for debugging and development)\n\n### Setup\n\n1. Clone this repository and open it in your IDE (e.g., **VSCode**).\n2. Add your **PAT** token to the `.github_token` file.\n3. If you have **Conda** installed, run `rebuild_env.ps1` to set up the Conda environment, then execute `run.ps1` to start the application. Otherwise, read the two scripts to run the commands using Python.\n\n### Running and Debugging with VS Code\n\nThe project includes preconfigured launch settings in the `.vscode/launch.json` file that make it easy to run Metrix:\n\n1. **Python: Debug** - Runs the main application with a default configuration\n   - Renders a standard Metrix GIF with GitHub user stats\n   - Sets appropriate environment variables for colors, fonts, and display settings\n\nTo run the application:\n\n1. Open the Debug panel in VS Code (Ctrl+Shift+D or click the debug icon in the sidebar)\n2. Select \"Python: Debug\" from the dropdown at the top\n3. Click the green play button or press F5\n\nFor running test scripts and bulk generation tools, see the [tests documentation](src/tests/README.md).\n\n## 🙏 Credits\n\nFonts by **VileR**: [Oldschool PC Fonts](https://int10h.org/oldschool-pc-fonts/fontlist/)\n\n## 📄 License\n\nThis project is licensed under the [MIT License](LICENSE).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoanroig%2Fmetrix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoanroig%2Fmetrix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoanroig%2Fmetrix/lists"}