# Install janet with Homebrew, apk, dnf, MacPorts, Nix, scoop, winget, zypper

Dynamic language and bytecode vm. Version 1.41.2 via Homebrew; verified 2026-07-06.

## Install

```sh
sudo av install brew:janet
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install janet
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install janet
```

  Evidence: MacPorts ports tree: lang/janet/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add janet
```

  Evidence: Alpine Linux edge package indexes: janet from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- dnf (92%):

```sh
sudo dnf install janet
```

  Evidence: Fedora Rawhide package metadata: janet from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#janet
```

  Evidence: nixpkgs package indexes: janet from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

- zypper (92%):

```sh
sudo zypper install janet
```

  Evidence: openSUSE Tumbleweed package metadata: janet from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Scoop (92%):

```sh
scoop install main/janet
```

  Evidence: Scoop official bucket manifest trees: bucket/janet.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

- winget (92%):

```sh
winget install --id JanetLang.Janet -e
```

  Evidence: Windows Package Manager source index: JanetLang.Janet from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:janet
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/janet>
- **Version:** 1.41.2
- **Source summary:** Dynamic language and bytecode vm
- **Homepage:** <https://janet-lang.org>
- **Repository:** <https://github.com/janet-lang/janet>
- **Upstream docs:** <https://janet-lang.org/api/index.html>
- **License:** MIT
- **Source archive:** <https://github.com/janet-lang/janet/archive/refs/tags/v1.41.2.tar.gz>
- **Last updated:** 2026-07-06T21:43:01Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- janet (cli)
- janet (alias)

## Install behavior

- Post-install hook: defined
- Caveats: When uninstalling Janet, please delete the following manually: - $HOMEBREW_PREFIX/lib/janet - $HOMEBREW_PREFIX/bin/jpm - $HOMEBREW_PREFIX/share/man/man1/jpm.1
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.41.2
- Package-manager updated: 2026-07-06
- Local data: ok
- Upstream repository: https://github.com/janet-lang/janet
- Upstream latest detected: v1.41.2 (current)
## Project history and usage

Janet is a small dynamic programming language and bytecode virtual machine designed for system scripting, automation, and embedding in C or C++ programs. It is a Lisp-family runtime with a REPL, macros, green threads, C FFI, and a deliberately portable implementation.

### Project history

The GitHub repository was created in March 2017 and describes Janet as a dynamic language and bytecode VM. The README positions it between Lua and GNU Guile: easier to embed and port than Python or Guile, richer than Lua, and distributed in a form suitable for embedding into larger programs.

Janet's core grew around a compact but batteries-included runtime: more than 600 core functions and macros, socket networking, threading, subprocesses, filesystem operations, parsing expression grammars, continuations, an event loop, Erlang-style supervision trees, a C FFI, and documentation available inside the REPL.

### Adoption history

Janet adoption is package-manager friendly because the runtime is small, scriptable, and useful without a large ecosystem install. The input package metadata records packaging across Homebrew, Alpine, Fedora, MacPorts, Nix, Scoop, winget, and openSUSE-style zypper, while Homebrew API data available during this enrichment recorded 1,057 installs over 365 days.

The project also maintains two companion ecosystem tools, Spork and JPM. The README describes Spork as a collection of utility modules and packaged scripts, while JPM is the older project manager; that split reflects Janet's use both as an embeddable runtime and as a standalone scripting language.

### How it is used

Users run Janet scripts, explore with the REPL, embed the VM in C or C++ applications, or use its FFI and event-loop facilities for automation and systems tasks. The official documentation covers language syntax, special forms, data structures, fibers, modules, networking, process management, FFI, the C API, JPM, and Spork.

### Why package nerds care

Janet is package-nerd interesting because it packs a Lisp-like language, VM, C API, REPL, FFI, PEG engine, and async/event primitives into a small runtime package. It appeals to users who like Lua's embedding story but want macros, richer core facilities, and a Unix-scripting feel.

### Timeline

- 2017: GitHub repository created for the Janet language and VM.
- 2024: v1.36.0 release notes recorded AAPCS64 calling-convention support and REPL improvements.
- 2025: v1.40.0 release notes recorded Windows-related runtime and documentation work among many community changes.
- 2026: v1.41.2 release notes fixed a regression in out-of-bounds buffer and array indexing.

### Related projects

- Janet is related to Lua, GNU Guile, Python embedding use cases, and Lisp-family scripting languages. Inside its own ecosystem, Spork and JPM are the important companion projects, and the README notes an official GitHub repository plus an actively maintained SourceHut mirror.

### Sources

- <https://api.github.com/repos/janet-lang/janet>
- <https://api.github.com/repos/janet-lang/janet/releases?per_page=10>
- <https://formulae.brew.sh/api/formula/janet.json>
- <https://github.com/janet-lang/janet>
- <https://janet-lang.org/docs/index.html>
- <https://raw.githubusercontent.com/janet-lang/janet/master/README.md>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** janet
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - janet: normalized package name match | nixpkgs package indexes: janet from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- apk - janet - 1.41.2-r0: normalized package name match | Alpine Linux edge package indexes: janet from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Dynamic Lisp dialect and bytecode VM | https://janet-lang.org/
- apk - janet-dev - 1.41.2-r0: normalized package name match | Alpine Linux edge package indexes: janet-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Dynamic Lisp dialect and bytecode VM (development files) | https://janet-lang.org/
- apk - janet-doc - 1.41.2-r0: normalized package name match | Alpine Linux edge package indexes: janet-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Dynamic Lisp dialect and bytecode VM (documentation) | https://janet-lang.org/
- apk - janet-static - 1.41.2-r0: normalized package name match | Alpine Linux edge package indexes: janet-static from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Dynamic Lisp dialect and bytecode VM (static library) | https://janet-lang.org/
- dnf - janet - 1.41.1-1.fc45: normalized package name match | Fedora Rawhide package metadata: janet from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | A dynamic language and bytecode vm | https://janet-lang.org
- dnf - janet-devel - 1.41.1-1.fc45: normalized package name match | Fedora Rawhide package metadata: janet-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | A dynamic language and bytecode vm | https://janet-lang.org
- zypper - janet - 1.39.0-1.3: normalized package name match | openSUSE Tumbleweed package metadata: janet from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Lisp-like functional and imperative programming language | https://janet-lang.org
- zypper - janet-devel - 1.39.0-1.3: normalized package name match | openSUSE Tumbleweed package metadata: janet-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Headers for embedding Janet scripting | https://janet-lang.org
- zypper - janet-devel-static - 1.39.0-1.3: normalized package name match | openSUSE Tumbleweed package metadata: janet-devel-static from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Headers for embedding Janet scripting | https://janet-lang.org
- zypper - libjanet1_39 - 1.39.0-1.3: normalized package name match | openSUSE Tumbleweed package metadata: libjanet1_39 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Library for the lisp-like functional and imperative programming language | https://janet-lang.org
- MacPorts - janet: normalized package name match | MacPorts ports tree: lang/janet/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/janet: normalized package name match | Scoop official bucket manifest trees: bucket/janet.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
- winget - JanetLang.Janet: normalized package name match | Windows Package Manager source index: JanetLang.Janet from https://cdn.winget.microsoft.com/cache/source.msix


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [lua](https://www.automicvault.com/pkg/brew/lua/) - Shares av.db curated category or tags: cli, embeddable, language-runtime, programming-language, scripting.
- [luau](https://www.automicvault.com/pkg/brew/luau/) - Shares av.db curated category or tags: cli, embeddable, language-runtime, programming-language, scripting.
- [nu](https://www.automicvault.com/pkg/brew/nu/) - Shares av.db curated category or tags: cli, language-runtime, lisp, programming-language, scripting.
- [fennel](https://www.automicvault.com/pkg/brew/fennel/) - Shares av.db curated category or tags: cli, language-runtime, lisp, programming-language.
- [gluon](https://www.automicvault.com/pkg/brew/gluon/) - Shares av.db curated category or tags: cli, embeddable, language-runtime, programming-language.
- [gnu-apl](https://www.automicvault.com/pkg/brew/gnu-apl/) - Shares av.db curated category or tags: cli, language-runtime, programming-language, scripting.
- [gosu](https://www.automicvault.com/pkg/brew/gosu/) - Shares av.db curated category or tags: cli, language-runtime, programming-language, scripting.
- [groovy](https://www.automicvault.com/pkg/brew/groovy/) - Shares av.db curated category or tags: cli, language-runtime, programming-language, scripting.

## Combined YAML source

View the package source record on GitHub. [combined/janet.yml](https://github.com/automic-vault/db/blob/main/combined/janet.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
