# Install luvit with Homebrew

Asynchronous I/O for Lua. Version 2.18.1 via Homebrew; verified 2026-07-07.

## Install

```sh
sudo av install brew:luvit
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install luvit
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:luvit
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/luvit>
- **Version:** 2.18.1
- **Source summary:** Asynchronous I/O for Lua
- **Homepage:** <https://luvit.io>
- **Repository:** <https://github.com/luvit/luvit>
- **Upstream docs:** <https://luvit.io/api>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/luvit/luvit/archive/refs/tags/2.18.1.tar.gz>
- **Last updated:** 2026-07-07T10:41:40Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- luvi (cli)
- luvit (cli)
- luvi (alias)
- luvit (alias)

## Dependencies

- libuv
- luajit
- openssl@3
- pcre2

## Build dependencies

- cmake
- pkgconf

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.18.1
- Package-manager updated: 2026-07-07
- Local data: ok
- Upstream repository: https://github.com/luvit/luvit
- Upstream latest detected: 2.18.1 (current)
## Project history and usage

Luvit is a LuaJIT runtime and package ecosystem that brings Node.js-style asynchronous programming to Lua through libuv, luvi, and lit. It is packaged as both a scripting command and a library-oriented runtime for small servers, tools, and bundled Lua applications.

### Project history

The public Luvit repository was created in September 2011 and describes the project as combining Lua, libUV, and LuaJIT. Its 2.0 README explains that the repository became a metapackage containing the luvit/luvit package plus the luvit/* packages published to lit, with luvi providing the executable runtime layer.

The official site presents Luvit as 'Asynchronous I/O for Lua' and emphasizes a familiar Node.js-like API, coroutine-friendly asynchronous styles, and a modular core where luv, luvi, lit, and the Node-style packages can be mixed as needed.

### Adoption history

Luvit has remained a niche but recognizable runtime in Lua package-manager culture. The official repository had about 4,000 stars and 375 forks in July 2026, and its documented support channels include GitHub issues, Discord, and the mailing list.

The project is also a useful historical bridge between the Node.js/libuv world and Lua: it made libuv-style event loops and npm-like package workflows available to Lua users before those ideas were common in the wider Lua ecosystem.

### How it is used

The `luvit` CLI runs Lua scripts as standalone servers, clients, and tools. The official homepage shows a small HTTP server launched with `luvit server.lua`, and the README documents using `make`, `luvi .`, and `make test` for core development.

Third-party packages are installed through lit, for example `lit install creationix/weblit`, and Luvit packages are usually written against Node-like APIs such as `http` while still allowing coroutine-based styles.

### Why package nerds care

Luvit matters because it is not just a Lua library: it is a runtime, package manager culture, and bundling story in one small ecosystem. For package maintainers, it represents the class of language runtimes that pull in a native event loop, a custom package manager, and a language-specific executable.

### Timeline

- 2011: Public `luvit/luvit` repository created on GitHub.
- 2015-2018: Luvit homepage era documenting the luvi/lit/luv ecosystem.
- 2020: Luvit 2.17.0 release published.
- 2021: Luvit 2.18.1 release published.

### Related projects

- luvi provides the base executable runtime used to run bundled Luvit applications.
- lit is the package manager and package database used by the Luvit ecosystem.
- luv provides Lua bindings to libuv and can be used outside Luvit.

### Sources

- <https://api.github.com/repos/luvit/luvit>
- <https://api.github.com/repos/luvit/luvit/releases?per_page=5>
- <https://github.com/luvit/luvit#readme>
- <https://luvit.io/>
- <https://luvit.io/docs.html>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Source Database Details

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


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [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.
- [luajit](https://www.automicvault.com/pkg/brew/luajit/) - Runtime dependency declared by Homebrew.
- [openssl@3](https://www.automicvault.com/pkg/brew/openssl-3/) - Runtime dependency declared by Homebrew.
- [pcre2](https://www.automicvault.com/pkg/brew/pcre2/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [luajit-openresty](https://www.automicvault.com/pkg/brew/luajit-openresty/) - Shares av.db curated category or tags: cli, language-runtime, lua, runtime.
- [bigloo](https://www.automicvault.com/pkg/brew/bigloo/) - Shares av.db curated category or tags: cli, language-runtime, runtime.
- [chezscheme](https://www.automicvault.com/pkg/brew/chezscheme/) - Shares av.db curated category or tags: cli, language-runtime, runtime.
- [chicken](https://www.automicvault.com/pkg/brew/chicken/) - Shares av.db curated category or tags: cli, language-runtime, runtime.
- [clozure-cl](https://www.automicvault.com/pkg/brew/clozure-cl/) - Shares av.db curated category or tags: cli, language-runtime, runtime.
- [dartaotruntime](https://www.automicvault.com/pkg/brew/dartaotruntime/) - Shares av.db curated category or tags: cli, language-runtime, runtime.
- [deno](https://www.automicvault.com/pkg/brew/deno/) - Shares av.db curated category or tags: cli, language-runtime, runtime.
- [node](https://www.automicvault.com/pkg/brew/node/) - Local package facts share a topical domain. Shared terms: cli, language, language-runtime, libuv, openssl.
- [php](https://www.automicvault.com/pkg/brew/php/) - Local package facts share a topical domain. Shared terms: cli, language, language-runtime, openssl, openssl-3.

## Combined YAML source

View the package source record on GitHub. [combined/luvit.yml](https://github.com/automic-vault/db/blob/main/combined/luvit.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
- cross-ecosystem install command graph
