Skip to content

One Lua widget platform. Two macOS frontends.

Build the menu bar that fits your workflow

EasyBar is a small family of macOS tools built around one shared EasyBarKit runtime. Use EasyBar for a customizable full-width bar, or EasyBar Native to host Lua widgets as independent macOS status items. Both use the same Lua widget and package contracts, while keeping their user data and command-line tools separate.

Choose a product Browse widget packages Lua widget guides

EasyBar running across the macOS menu bar

Choose your frontend

EasyBar

The full-width customizable frontend. It provides native built-ins, groups, themes, calendar and network integrations, the easybar CLI, and Lua widgets in one managed bar.

Explore EasyBar

EasyBar Native

The lightweight native status-area frontend. Lua widget roots become independent NSStatusItems. It has its own config, runtime, package store, logs, and easybar-native CLI, and it does not depend on EasyBar's calendar or network agents.

Explore EasyBar Native

Shared Lua widgets

Write one Lua widget against the EasyBarKit API and use it with either frontend when the widget does not depend on a frontend-specific capability.

Create your first widget

Independent packages

Official widgets and libraries are versioned independently. Each frontend installs packages into its own managed store, so experimenting in EasyBar Native does not change EasyBar's active packages.

Browse the Widget Store

The project family

Tool Purpose User-facing command
EasyBar Custom full-width bar with native built-ins and Lua widgets easybar
EasyBar Native Native NSStatusItem host for Lua widgets and Inbox easybar-native
EasyBarKit Shared Swift/Lua runtime, rendering, package manager, IPC, and reusable services library/runtime products
Calendar agent EasyBar's EventKit helper service managed by easybar agent ...
Network agent EasyBar's Wi-Fi/network helper service managed by easybar agent ...
Widget Store Independently versioned Lua widgets and libraries easybar widgets ... or easybar-native widgets ...

The two frontends share implementation, not installation state. See Platform for the repository and ownership model.

Where to go next