{"id":23084094,"url":"https://github.com/devboidesigns/herokutools","last_synced_at":"2025-08-16T01:31:49.841Z","repository":{"id":266502580,"uuid":"898438488","full_name":"DevboiDesigns/herokutools","owner":"DevboiDesigns","description":"herokutools ⚒️ is a command-line interface (CLI) wrapper designed to simplify and streamline the process of interacting with your Heroku app. This tool provides a set of easy-to-use commands that help you interact with your Heroku apps more efficiently.","archived":false,"fork":false,"pushed_at":"2025-01-06T18:38:42.000Z","size":219,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-09T07:48:25.546Z","etag":null,"topics":["heroku-cli","npm-package"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/herokutools","language":"TypeScript","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/DevboiDesigns.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-12-04T11:52:47.000Z","updated_at":"2025-01-03T20:24:20.000Z","dependencies_parsed_at":"2024-12-04T16:23:28.255Z","dependency_job_id":"c4294ba4-7862-47d6-87cc-f17df635badd","html_url":"https://github.com/DevboiDesigns/herokutools","commit_stats":null,"previous_names":["devboidesigns/herokutools"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/DevboiDesigns/herokutools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevboiDesigns%2Fherokutools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevboiDesigns%2Fherokutools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevboiDesigns%2Fherokutools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevboiDesigns%2Fherokutools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DevboiDesigns","download_url":"https://codeload.github.com/DevboiDesigns/herokutools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DevboiDesigns%2Fherokutools/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270656410,"owners_count":24623381,"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-08-15T02:00:12.559Z","response_time":110,"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":["heroku-cli","npm-package"],"created_at":"2024-12-16T15:48:41.073Z","updated_at":"2025-08-16T01:31:49.831Z","avatar_url":"https://github.com/DevboiDesigns.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Heroku Tools\n\n**A CLI Wrapper for Everyday Commands**\n\n[![NPM Downloads](https://img.shields.io/npm/v/:herokutools)](https://www.npmjs.com/package/herokutools)\n[![NPM Downloads](https://img.shields.io/npm/dw/:herokutools)](https://www.npmjs.com/package/herokutools)\n[![NPM License](https://img.shields.io/npm/l/:herokutools)](LICENSE)\n[![Stars](https://img.shields.io/github/stars/devboidesigns/herokutools)](https://github.com/DevboiDesigns/herokutools)\n\n`herokutools` is a command-line interface (CLI) wrapper designed to simplify and streamline the process of interacting with your Heroku app. This tool provides a set of easy-to-use commands that help you interact with your Heroku apps more efficiently.\n\n- [HerokuCLI](https://devcenter.heroku.com/articles/heroku-cli-commands)\n\n## Features\n\n- Fetch logs for your Heroku apps with a single command.\n- Support for multiple Heroku apps through environment variables.\n- Easy setup and installation.\n- Built with TypeScript and Commander.js for robust and type-safe command handling.\n\n## Prerequisites\n\nBefore using `herokutools`, ensure that you have the following:\n\n- A Heroku account. If you don't have one, you can sign up at [Heroku](https://signup.heroku.com/).\n- At least one Heroku app. You can create a new app using the Heroku Dashboard or the Heroku CLI.\n\nWithout a Heroku account and app, you will not be able to use the features provided by this tool.\n\n## Install\n\n- Install the package globally:\n\n```sh\nnpm i -g herokutools\n```\n\n## Environment Variables Documentation\n\n`herokutools` uses environment variables to manage configurations for different Heroku apps. These environment variables allow you to set default values that the tool will use when no specific options are provided.\n\n**Available Environment Variables**\n\n- `HEROKU_TOOL_APP_1`: The default Heroku app name used when no options are provided.\n- `HEROKU_TOOL_APP_2`: The Heroku app name used when -i 2 is specified.\n- `HEROKU_TOOL_APP_3`: The Heroku app name used when -i 3 is specified.\n\n**Setting Environment Variables**\n\nYou can set these environment variables in your shell configuration file (e.g., `.bashrc`, `.zshrc`, `.bash_profile`, etc.) or directly in your terminal session.\n\n**\u003csup\u003eExample: Setting Environment Variables in `.bashrc` or `.zshrc`\u003c/sup\u003e**\n\n```sh\nexport HEROKU_TOOL_APP_1=my-default-app\nexport HEROKU_TOOL_APP_2=my-second-app\nexport HEROKU_TOOL_APP_3=my-third-app\n```\n\nAfter adding these lines, reload your shell configuration:\n\n```sh\nsource ~/.bashrc  # or source ~/.zshrc\n```\n\n**\u003csup\u003eExample: Setting Environment Variables in the Terminal\u003c/sup\u003e**\n\n```sh\nexport HEROKU_TOOL_APP_1=my-default-app\nexport HEROKU_TOOL_APP_2=my-second-app\nexport HEROKU_TOOL_APP_3=my-third-app\n```\n\n**Using Environment Variables in `herokutools`**\n\nWhen you run commands with `herokutools`, it will use the environment variables you have set to determine the default Heroku app names.\n\n**\u003csup\u003eExample: Fetching Logs with `hl`\u003c/sup\u003e**\n\nIf you have set `HEROKU_TOOL_APP_1` to `my-default-app`, running the `hl` command without any options will fetch logs for `my-default-app`:\n\n```sh\nhl\n```\n\nTo fetch logs for the app set in `HEROKU_TOOL_APP_2`, use the `-i` option:\n\n```sh\nhl -i 2\n```\n\n**\u003csup\u003eExample: Scaling and Restarting Dynos with `hd`\u003c/sup\u003e**\n\nTo scale the dynos for the default app (stored in `HEROKU_TOOL_APP_1`) to 2:\n\n```sh\nhd web 2\n```\n\nTo restart the dynos for the default app:\n\n```sh\nhd -r\n```\n\n\u003c!-- **\u003csup\u003eExample: Managing Environment Variables with `he`\u003c/sup\u003e**\n\nTo get the value of an environment variable for the default app:\n\n```sh\nhe -g MY_VAR\n```\n\nTo set the value of an environment variable for the default app:\n\n```sh\nhe -s MY_VAR my_value\n```\n\nTo remove an environment variable for the default app:\n\n```sh\nhe -r MY_VAR\n```\n\nTo list all environment variables for the default app:\n\n```sh\nhe -l\n``` --\u003e\n\n**Notes**\n\n- Ensure that the environment variables `HEROKU_TOOL_APP_1`, `HEROKU_TOOL_APP_2`, and `HEROKU_TOOL_APP_3` are set in your environment to use the index options effectively.\n- The commands use the Heroku CLI internally to manage the apps, so make sure you have the Heroku CLI installed and authenticated.\n\n\u003c!-- ## Coming Soon\n\n### Heroku Scale and Reset Dynos Command\n\nWe are working on adding a command to scale and reset your Heroku dynos. This will allow you to easily manage the number of dynos running for your application and reset them when needed.\n\n### Heroku Set Environment Variables Command\n\nAnother upcoming feature is the ability to set environment variables for your Heroku apps directly from the CLI. This will simplify the process of managing your app's configuration and ensure that your environment variables are always up to date.\n\nStay tuned for these exciting new features! --\u003e\n\n# Commands\n\n## `hl` Command Documentation\n\n![BETA](https://img.shields.io/badge/BETA-8A2BE2)\n\nThe `hl` command is a CLI wrapper for fetching logs from your Heroku apps. It provides an easy way to view logs for your Heroku applications.\n\n### Usage\n\n```sh\nhl [options]\n```\n\n### Options\n\n- `-i, --index [index]`: Index of the app to log. Valid values are `1`, `2`, or `3`. If no index is provided, it defaults to the app name stored in `process.env.HEROKU_TOOL_APP_1`.\n- `-a, --app [app name]`: Logs for your Heroku app. If not provided, it defaults to the saved app name based on the index.\n\n### Examples\n\n#### Default Usage\n\nIf no options are passed, the command will fetch logs for the app name stored in `process.env.HEROKU_TOOL_APP_1`.\n\n```sh\nhl\n```\n\n#### Using Index\n\nTo fetch logs for the app name stored in `process.env.HEROKU_TOOL_APP_2`:\n\n```sh\nhl -i 2\n```\n\n#### Using App Name\n\nTo fetch logs for a specific app name:\n\n```sh\nhl -a my-heroku-app\n```\n\n### Environment Variables\n\n- `HEROKU_TOOL_APP_1`: The default Heroku app name used when no options are provided.\n- `HEROKU_TOOL_APP_2`: The Heroku app name used when `-i 2` is specified.\n- `HEROKU_TOOL_APP_3`: The Heroku app name used when `-i 3` is specified.\n\n## `hd` Command Documentation\n\n![BETA](https://img.shields.io/badge/BETA-8A2BE2)\n\nThe `hd` command is a CLI wrapper for scaling and restarting dynos for your Heroku apps. It provides an easy way to manage the number of dynos running for your application and reset them when needed.\n\n### Usage\n\n```sh\nhd [options] [dyno] [quantity]\n```\n\n### Options\n\n- `-a, --app [app name]`: The Heroku app name. If not provided, it defaults to the saved app name based on the index.\n- `-r, --restart`: Restart the dynos for the specified app.\n\n### Examples\n\n## Scale Dynos\n\nTo scale the dynos for a specific app to 3:\n\n```sh\nhd -a my-heroku-app web 3\n```\n\nTo scale the dynos for the default app (stored in `HEROKU_TOOL_APP_1`) to 2:\n\n```sh\nhd web 2\n```\n\n## Restart Dynos\n\nTo restart the dynos for a specific app:\n\n```sh\nhd -a my-heroku-app -r\n```\n\nTo restart the dynos for the default app (stored in `HEROKU_TOOL_APP_1`):\n\n```sh\nhd -r\n```\n\n### Environment Variables\n\n- `HEROKU_TOOL_APP_1`: The default Heroku app name used when no options are provided.\n- `HEROKU_TOOL_APP_2`: The Heroku app name used when -i 2 is specified.\n- `HEROKU_TOOL_APP_3`: The Heroku app name used when -i 3 is specified.\n\n## `he` Command Documentation\n\n![BETA](https://img.shields.io/badge/BETA-8A2BE2)\n\nThe `he` command is a CLI wrapper for managing environment variables for your Heroku apps. It provides an easy way to get, set, and remove environment variables.\n\n### Usage\n\n```sh\nhe [options] [key] [value]\n```\n\n### Options\n\n- `-a, --app [app name]`: The Heroku app name. If not provided, it defaults to the saved app name based on the index.\n- `-s, --set [key] [value]`: Set the value of an environment variable.\n- `-r, --remove [key`]: Remove an environment variable.\n\n### Examples\n\n#### Get Environment Variable\n\nTo get all environment variables for a specific app:\n\n```sh\nhe -a my-heroku-app -g\n```\n\nTo get the value of an environment variable for the default app (stored in HEROKU_TOOL_APP_1):\n\n```sh\nhe\n```\n\n#### Set Environment Variable\n\nTo set the value of an environment variable for a specific app:\n\n```sh\nhe -a my-heroku-app MY_VAR=my_value\n```\n\nTo set the value of an environment variable for the default app (stored in HEROKU_TOOL_APP_1):\n\n```sh\nhe MY_VAR=my_value\n```\n\n#### Remove Environment Variable\n\nTo remove an environment variable for a specific app:\n\n```sh\nhe -a my-heroku-app -r MY_VAR\n```\n\nTo remove an environment variable for the default app (stored in HEROKU_TOOL_APP_1):\n\n```sh\nhe -r MY_VAR\n```\n\n## `htr` Command Documentation\n\n![BETA](https://img.shields.io/badge/BETA-8A2BE2)\n\nThe `he` command is a CLI wrapper for transferring a heroku app to a different user.\n\n### Usage\n\n```sh\nhe [options] [key] [value]\n```\n\n### Options\n\n- `-a, --app [app name]`: The Heroku app name. If not provided, it defaults to the saved app name based on the index.\n- `-e, --email \u003cemail\u003e`: Get the value of an environment variable.\n\n## Notes\n\n- Ensure that the environment variables `HEROKU_TOOL_APP_1`, `HEROKU_TOOL_APP_2`, and `HEROKU_TOOL_APP_3` are set in your environment to use the index options effectively.\n- The command uses the `heroku logs -a \u003capp_name\u003e --tail` command internally to fetch and display the logs in real-time.\n\n## First Stable Version\n\nWe are excited to announce that the first stable version of `herokutools` will be `1.0.0`. This release will include all the core features, including fetching logs, scaling and restarting dynos, and setting environment variables for your Heroku apps.\n\nStay tuned for the release, and thank you for your support and feedback during the beta phase!\n\nFor more information, refer to the [source code](https://github.com/DevboiDesigns/herokutools).\n\n![GitHub commit activity](https://img.shields.io/github/commit-activity/m/devboidesigns/herokutools)\n\n\u003csup\u003eInspiration by: [ctsrc](https://github.com/ctsrc) and his [repotools](https://crates.io/crates/repotools)\u003c/sup\u003e\n\n## Star on GitHub 🤩\n\nIf you like this tool please take a moment to\n[star this project on GitHub](https://github.com/devboidesigns/herokutools#start-of-content).\n\n[![GitHub stars](https://img.shields.io/github/stars/devboidesigns/herokutools?style=social)](https://github.com/devboidesigns/herokutools#start-of-content)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevboidesigns%2Fherokutools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevboidesigns%2Fherokutools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevboidesigns%2Fherokutools/lists"}