# Useful dev apps The followings are useful apps for developers available on `choco` (Windows) and other package managers (probably): ## Tools ### System utils | App | What | How to install | | ------------- | ---------------------------------- | ----------------------------- | | ChocolateyGUI | GUI for `choco` | `choco install chocolateygui` | | [AutoHotKey] | Programmable hotkeys and shortcuts | `choco install autohotkey` | [AutoHotKey]: https://www.autohotkey.com ### Media | App | What | How to install | | ------------ | ----------------------------------------------- | -------------------------- | | [webp] | Convert images to WebP | `choco install webp` | | [youtube-dl] | Download videos from youtube and other websites | `choco install youtube-dl` | [webp]: https://developers.google.com/speed/webp [youtube-dl]: https://ytdl-org.github.io/youtube-dl/index.html ### Development tools | App | What | How to install | | -------- | ----------------------------------------- | ---------------------- | | [ngrok] | Reverse proxy for exposing local services | `choco install ngrok` | | [protoc] | Protocol Buffer compiler | `choco install protoc` | [ngrok]: https://ngrok.com/ [protoc]: https://developers.google.com/protocol-buffers ### Shell utils | App | What | How to install | | -------- | ---------------------------------- | ---------------------- | | [fzf] | Fuzzy finder, see [better-cli] | `choco install fzf` | | [jq] | Query JSON using selectors | `choco install jq` | | [pandoc] | Convert between markup/doc formats | `choco install pandoc` | | sudo | "sudo"-like shell helper | `choco install sudo` | [fzf]: https://github.com/junegunn/fzf [better-cli]: https://git.fromouter.space/Hamcha/stuff/src/branch/master/better-cli.md [jq]: https://stedolan.github.io/jq/ [pandoc]: https://pandoc.org/ ### Programming languages and runtimes | App | How to install | | ---------------- | ----------------------- | | [deno] | `choco install deno` | | [elixir] | `choco install elixir` | | [erlang] | `choco install erlang` | | [LLVM] | `choco install llvm` | | [nvm] (Node) | `choco install nvm` | | [php] | `choco install php` | | [Python] 2.x[^1] | `choco install python2` | | [Python] 3.x[^1] | `choco install python3` | | [yarn] | `choco install yarn` | | [zig] | `choco install zig` | [nvm]: https://github.com/nvm-sh/nvm [yarn]: https://yarnpkg.com/ [php]: https://www.php.net/ [deno]: https://deno.land/ [elixir]: https://elixir-lang.org/ [erlang]: https://erlang.org/ [LLVM]: https://llvm.org/ [Python]: https://www.python.org/ [zig]: https://ziglang.org/ [^1]: You might want to [disable their builtin alias to the Windows Store versions](https://git.fromouter.space/Hamcha/stuff/src/branch/master/better-cli.md) ### Docker / Kubernetes | App | What | How to install | | ---------------- | -------------------------------------------------- | ------------------------------- | | [Docker CLI] | Docker CLI for remote docker | `choco install docker-cli` | | [Docker Compose] | Docker Compose CLI | `choco install docker-compose` | | [Kubernetes CLI] | kubectl CLI for remote k8s | `choco install kubernetes-cli` | | [Helm] | Kubernetes package manager | `choco install kubernetes-helm` | | [Kustomize] | K8S templating | `choco install kustomize` | | [Minikube] | Run kubernetes locally (on HyperV or [VirtualBox]) | `choco install minikube` | | [Skaffold] | Kubernetes dev and deploy tool | `choco install skaffold` | [Docker CLI]: https://docs.docker.com/engine/reference/commandline/cli/ [Docker Compose]: https://docs.docker.com/compose/ [Kubernetes CLI]: https://kubernetes.io/docs/reference/kubectl/overview/ [Helm]: https://helm.sh/ [Kustomize]: https://kustomize.io/ [Minikube]: https://github.com/kubernetes/minikube [VirtualBox]: https://www.virtualbox.org/ [Skaffold]: https://skaffold.dev/ ## FAQ ### Why not just use installers Package management is not just convenient for installing, you can also upgrade all your packages with `choco upgrade PACKAGENAME`! If you use ChocolateyGUI, you can check see all your installed packages, which ones have upgrades available and update all of them with one click! ### What if I need particular options Some packages (like `php`) have special flags (like `/DontAddToPath`).