{"id":28478041,"url":"https://github.com/rosesecurity/terrafetch","last_synced_at":"2025-07-02T18:32:13.494Z","repository":{"id":293935038,"uuid":"983758793","full_name":"RoseSecurity/terrafetch","owner":"RoseSecurity","description":"The Neofetch of Terraform. Let your IaC flex for you.","archived":false,"fork":false,"pushed_at":"2025-06-05T19:42:13.000Z","size":344,"stargazers_count":28,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-26T06:34:40.211Z","etag":null,"topics":["cli","cloud","go","infrastructure","opentofu","terraform"],"latest_commit_sha":null,"homepage":"https://github.com/marketplace/actions/terrafetch","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RoseSecurity.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":"FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"rosesecurity"}},"created_at":"2025-05-14T21:50:10.000Z","updated_at":"2025-06-26T01:25:29.000Z","dependencies_parsed_at":"2025-05-18T03:29:39.588Z","dependency_job_id":"42c6aa40-0821-4569-8282-bed2477dce39","html_url":"https://github.com/RoseSecurity/terrafetch","commit_stats":null,"previous_names":["rosesecurity/terrafetch"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/RoseSecurity/terrafetch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoseSecurity%2Fterrafetch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoseSecurity%2Fterrafetch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoseSecurity%2Fterrafetch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoseSecurity%2Fterrafetch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RoseSecurity","download_url":"https://codeload.github.com/RoseSecurity/terrafetch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoseSecurity%2Fterrafetch/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263193832,"owners_count":23428584,"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","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":["cli","cloud","go","infrastructure","opentofu","terraform"],"created_at":"2025-06-07T17:09:21.680Z","updated_at":"2025-07-02T18:32:13.485Z","avatar_url":"https://github.com/RoseSecurity.png","language":"HCL","funding_links":["https://github.com/sponsors/rosesecurity"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003cimg width=100% height=90% src=\"./docs/img/terrafetch-logo.png\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cem\u003eLet your IaC flex for you.\u003c/em\u003e\n\u003c/p\u003e\n\n## Introduction\n\nTerrafetch is the Neofetch of Terraform—because your infrastructure deserves a little flair. It scans your Terraform repository and displays key statistics like the number of variables, resources, modules, outputs, and more—all in a stylish, terminal-friendly format. Perfect for CLI screenshots, repo intros, or just flexing your infra hygiene.\n\n## Demo\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=100% height=100% src=\"./docs/img/terrafetch-demo.gif\"\u003e\n\u003c/p\u003e\n\n## Installation\n\n### Go\n\nIf you have a functional Go environment, you can install with:\n\n```sh\ngo install github.com/RoseSecurity/terrafetch@latest\n```\n\n### Apt\n\nTo install packages, you can quickly setup the repository automatically:\n\n```sh\ncurl -1sLf \\\n  'https://dl.cloudsmith.io/public/rosesecurity/terrafetch/setup.deb.sh' \\\n  | sudo -E bash\n```\n\nOnce the repository is configured, you can install with:\n\n```sh\napt install terrafetch\n```\n\n### Source\n\n```sh\ngit clone git@github.com:RoseSecurity/terrafetch.git\ncd terrafetch\nmake build\n```\n\n## Usage\n\n\u003e [!IMPORTANT]\n\u003e Do you love the tool but it's missing some information you'd like to see? Head on over to [this discussion](https://github.com/RoseSecurity/terrafetch/discussions/2) and drop a comment or open a new issue!\n\n```sh\n ⨠ terrafetch\n╭─────────────────────────────────────────────────────────────────╮\n│                                    .                            │\n│@#                                  -                            │\n│@@@@@                               Terraform Files:     1315    │\n│@@@@@@@@.                           Documentation:       192     │\n│@@@@@@@@@@ +                   #    Providers:           334     │\n│@@@@@@@@@@ @@@@             @@@@    Module Calls:        748     │\n│@@@@@@@@@@ @@@@@@@.     .@@@@@@@    Resources:           424     │\n│ @@@@@@@@@ @@@@@@@@@@ @@@@@@@@@@    Data Sources:        288     │\n│    +@@@@@ @@@@@@@@@@ @@@@@@@@@@    Variables:           6122    │\n│       .@@ @@@@@@@@@@ @@@@@@@@@@    Sensitive Variables: 16      │\n│           @@@@@@@@@@ @@@@@@@@@@    Outputs:             807     │\n│           @+ -@@@@@@ @@@@@@=       Sensitive Outputs:   22      │\n│           @@@@@ .@@@ @@@.                                       │\n│           @@@@@@@@.                                             │\n│           @@@@@@@@@@                                            │\n│           @@@@@@@@@@                                            │\n│           @@@@@@@@@@                                            │\n│            .@@@@@@@@                                            │\n│                @@@@@                                            │\n│                   %@                                            │\n│                                                                 │\n╰─────────────────────────────────────────────────────────────────╯\n```\n\n## GitHub Action\n\nGive your infrastructure repositories some flair by injecting Terrafetch statistics right into your documentation.\n\n1. Add report markers somewhere in your `README.md` (or any file you point the action at):\n\n```console\n\u003c!-- TER​RAFETCH:START --\u003e\n\u003c!-- TER​RAFETCH:END --\u003e\n```\n\n2. Make sure your repo permissions allow the default `GITHUB_TOKEN` to `contents: write` so the bot can push the updated file.\n\n### Example Workflow\n\n```yaml\nname: Terrafetch\n\non:\n  schedule:\n    - cron: \"0 3 * * *\"   # every night at 03:00\n  workflow_dispatch:        # manual trigger when you need it\n\npermissions:\n  contents: write           # let the action push changes\n\njobs:\n  terrafetch:\n    runs-on: ubuntu-latest\n\n    steps:\n      - uses: actions/checkout@v4\n        with:\n          fetch-depth: 0\n\n      - name: Generate README stats with Terrafetch\n        uses: RoseSecurity/terrafetch@v0.3.0\n        with:\n          terraform_directory: infra\n          output_file: README.md      # file with the START/END markers\n          terrafetch_version: 0.3.0   # \"latest\" also works\n```\n\n3. Enjoy your new and improved documentation (as you can see here)\n\n\u003c!-- TERRAFETCH:START --\u003e\n\u003cdetails\u003e\u003csummary\u003eTerrafetch\u003c/summary\u003e\n\n```console\n╭────────────────────────────────────────────────────────────────╮\n│                                    .                           │\n│@#                                  -                           │\n│@@@@@                               Terraform Files:     54     │\n│@@@@@@@@.                           Documentation:       8      │\n│@@@@@@@@@@ +                   #    Providers:           16     │\n│@@@@@@@@@@ @@@@             @@@@    Module Calls:        19     │\n│@@@@@@@@@@ @@@@@@@.     .@@@@@@@    Resources:           11     │\n│ @@@@@@@@@ @@@@@@@@@@ @@@@@@@@@@    Data Sources:        7      │\n│    +@@@@@ @@@@@@@@@@ @@@@@@@@@@    Variables:           191    │\n│       .@@ @@@@@@@@@@ @@@@@@@@@@    Sensitive Variables: 1      │\n│           @@@@@@@@@@ @@@@@@@@@@    Outputs:             43     │\n│           @+ -@@@@@@ @@@@@@=       Sensitive Outputs:   1      │\n│           @@@@@ .@@@ @@@.                                      │\n│           @@@@@@@@.                                            │\n│           @@@@@@@@@@                                           │\n│           @@@@@@@@@@                                           │\n│           @@@@@@@@@@                                           │\n│            .@@@@@@@@                                           │\n│                @@@@@                                           │\n│                   %@                                           │\n│                                                                │\n╰────────────────────────────────────────────────────────────────╯\n```\n\u003c/details\u003e\n\u003c!-- TERRAFETCH:END --\u003e\n\n## Contributing\n\nFor bug reports \u0026 feature requests, please use the [issue tracker](https://github.com/rosesecurity/terrafetch/issues).\n\nPRs are welcome! We follow the typical \"fork-and-pull\" Git workflow.\n 1. **Fork** the repo on GitHub\n 2. **Clone** the project to your own machine\n 3. **Commit** changes to your own branch\n 4. **Push** your work back up to your fork\n 5. Submit a **Pull Request** so that we can review your changes\n\n\u003e [!TIP]\n\u003e Be sure to merge the latest changes from \"upstream\" before making a pull request!\n\n### Many Thanks to Our Contributors\n\n\u003ca href=\"https://github.com/RoseSecurity/terrafetch/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=RoseSecurity/terrafetch\u0026max=24\" /\u003e\n\u003c/a\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frosesecurity%2Fterrafetch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frosesecurity%2Fterrafetch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frosesecurity%2Fterrafetch/lists"}