Languages
Woof aims to support the following languages / programs
There are three levels of support:
- None
- Dogfooding (it works on my machine)
- Complete (works everywhere with supporting test suite)
Buildless
| Language | Current Support | Official Download | Replaces |
|---|---|---|---|
| NodeJS | Dogfooding | Official | asdf-node, n, nvm, nvm.fish, nvmw, avn, fnm, nave, nodist, nodenv, nodebrew |
| Deno | Dogfooding | Official | asdf-deno, justjavac/dvm, ghosind/dvm |
| Go | Dogfooding | Official | asdf-golang, gvm, stefanmaric/g, voidint/g, goenv, goup, oo |
| Crystal | Dogfooding | Official | asdf-crystal, crenv |
| Nim | Dogfooding | Official | asdf-nim, choosenim |
| Dart | Dogfooding | Official | asdf-dart, dvm |
| Zig | Dogfooding | Official | asdf-zig |
| Haxe | Dogfooding | Official | asdf-haxe, jasononeil/hvm, dpeek/hvm |
| Neko | Dogfooding | Official | asdf-neko |
| Elm | Dogfooding | Official | asdf-elm |
| Julia | Dogfooding | Official | asdf-julia, juliavm |
| kubectl | Dogfooding | Official | asdf-kubectl, kubenvz, kerl |
| Cue | Dogfooding | Official | asdf-cue,cue-lang |
| gleam | Dogfooding | Official | asdf-gleam |
| Solidity | Dogfooding | Official | asdf-solidity, svm |
| Peco | Dogfooding | Official | asdf-peco |
| fstar | Dogfooding | Official | asdf-fstar |
| Please | Dogfooding | Official | asdf-please |
| Lean | Dogfooding | Official | asdf-lean |
| Ninja | Dogfooding | Official | asdf-ninja |
| gh | Dogfooding | Official | |
| V | Dogfooding | Official | |
| Earthly | Dogfooding | Official | |
| Hashicorp Boundary | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Consul | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Levant | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Nomad | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Packer | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Sentinel | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Serf | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Terraform | Dogfooding | Official | asdf-hashicorp, tfenfv, terraenv |
| Hashicorp Vagrant | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Vault | Dogfooding | Official | asdf-hashicorp |
| Hashicorp Waypoint | Dogfooding | Official | asdf-hashicorp |
Buildfull
This requires a modification to the Module API
| Language | Current Support | Official Download | Replaces |
|---|---|---|---|
| PHP | None | Official | asdf-php, phpenv, phpbrew, php-version |
| Python | None | Official | asdf-python, pyenv, p, pvm |
| Swift | None | Official | asdf-swift, swiftenv |
| Ruby | None | Official | asdf-ruby, rvm, rbenv, chruby, frum |
| erlang | None | Official | asdf-erlang |
| Elixir | None | Official | asdf-elixir, exenv, kiex |
| Meson | None | Official | asdf-meson |
| HHVM | None | Official |
To sort
| Runtime | Current Support | Official Download | Replaces |
|---|---|---|---|
| R | None | Official | asdf-r, renv, Renv |
| Java | None | Official | asdf-java, jenv.be, sdkman, jenv, jabba |
| Groovy | None | Official | asdf-groovy, sdkman-groovy |
| Scala | None | Official | asdf-scala, sdkman-scala |
| Clojure | None | Official | clojure |
| Dotty | None | Official | asdf-dotty, dvm |
| Kotlin | None | Official | asdf-kotlin, kotlin-sdkman |
| GraalVM | None | Official | asdf-graalvm |
| Haskell | None | Official | asdf-haskell |
| Racket | None | Official | asdf-racket |
| sml | None | Official | asdf-sml |
| idris | None | Official | adsf-idris |
| idris2 | None | Official | asdf-idris2 |
| Flutter | None | Official | asdf-flutter, fvm |
| ravi | None | Official | |
| Nelua | None | Official | |
| Odin | None | Official | |
| tl | None | Official | |
| MoonScript | None | Official | |
| Yuescript | None | Official | |
| LuxLang | None | Official | |
| Fennel | None | Official | |
| Hare | None | Official | |
| Eno | None | Official | |
| PureScript | None | Official | |
| Grain | None | Official | |
| Wren | None | Official | |
| Enso | None | Official | |
| Haxe | None | Official | |
| Slice | None | Official | |
| Red | None | Official | |
| Carp | None | Official | |
| vyper | None | Official | |
| Mint | None | Official | |
| Melody | None | Official | |
| Coconut | None | Official | |
| Ballerina | None | Official | |
| Odin | None | Official | |
| MoonScript | None | Official | |
| EmojiCode | None | Official | |
| artichoke | None | Official | |
| gluon | None | Official | |
| ChaiScript | None | Official | |
| janet | None | Official | |
| P | None | Official | |
| Tidal | None | Official | |
| Peregrine | None | Official | |
| Flix | None | Official | |
| haste-compiler | None | Official | |
| fetlang | None | Official | |
| pocketlang | None | Official | |
| factor | None | Official | |
| oh | None | Official | |
| cito | None | Official | |
| mun | None | Official | |
| Fo | None | Official | |
| Starlark | None | Official | |
| lily | None | Official | |
| curv | None | Official | |
| Ring | None | Official | |
| rescript | None | Official | |
| reason | None | Official | |
| wenyan | None | Official | |
| GoPlus | None | Official | |
| Pony | None | Official | |
| alda | None | Official | |
| elvish | None | Official | |
| unison | None | Official | |
| Gravity | None | Official | |
| gleam | None | Official | |
| Orca | None | Official | |
| Tengo | None | Official | |
| D | None | Official | |
| ispc | None | Official | |
| agda | None | Official | |
| Beef | None | Official | |
| lamdu | None | Official | |
| wasp | None | Official | |
| clojerl | None | Official | |
| Snap | None | Official | |
| anko | None | Official | |
| jakt | None | Official | |
| ngs | None | Official | |
| slang | None | Official | |
| asciidots | None | Official | |
| MetaCall | None | Official | |
| Rt | None | Official | |
| SATySFi | None | Official | |
| ng | None | Official | |
| OneLang | None | Official |
Nuances
.kubectl_version.node-version, and.nvmrc.dvmrc.ruby-versionand.rvmrc.tool-versions
Misc
- fortran
- lua
- Dasel
- C
- C++
- C#
- Objective-C?
- Bash
- OPAM / OCAML
- TypeScript, Less, imba, bhai, (via npm)
- wasm
Out of Scope
- Rust because
rustupis actually good - Codename to version mapping (few languages do this and its easy to forget codenames)