Skip to content

Latest commit

 

History

28 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lekho (লেখো) — Avro Phonetic Bangla Keyboard for macOS

Lekho Keyboard Banner

The only Avro Phonetic keyboard built natively for Apple Silicon Macs.

Lekho brings Avro Phonetic-style Bangla (Bengali) typing to Apple Silicon Macs natively (M1, M2, M3, M4, M5) — no Rosetta required. If you used Avro Keyboard on Windows, iAvro on macOS, or OpenBangla Keyboard on Linux, Lekho is your native Apple Silicon alternative.

Download | Website


Why Lekho?

The existing Bangla keyboard options for macOS each have limitations on Apple Silicon:

  • Avro Keyboard (OmicronLab) — Windows-focused, no native macOS build
  • iAvro — Intel-only macOS build that runs on Apple Silicon through Rosetta. Apple has announced Rosetta support is being wound down — fully available in macOS 27, then limited to legacy games starting in macOS 28. macOS already shows a deprecation warning on Intel-only input methods.
  • OpenBangla Keyboard — Linux only (Qt-based), no macOS port
  • macOS built-in Bengali — Apple's own layout, not Avro phonetic

Lekho is built natively for Apple Silicon — no Rosetta required, future-proof as macOS evolves. It works in every app — Safari, Chrome, VS Code, Notes, Spotlight, everywhere.

Features

  • Avro Phonetic typing — type ami banglay gan gai → আমি বাংলায় গান গাই
  • 150k word dictionary with smart suggestions and autocorrect
  • Smart emoji suggestions — type কান্না and get 😢, বাংলাদেশ and get 🇧🇩, right in the candidate panel
  • Three typing modesPhonetic-first (default: your exact spelling by default with the suggestion list still one keypress away), Smart (suggestions, autocorrect, and emoji pick the word for you), or Phonetic-only (pure character-by-character control, no popup). Switch anytime in Settings.
  • Native Apple Silicon — ~2.7 MB, instant startup, zero CPU when idle
  • Works on all Apple Silicon Macs — MacBook Air, MacBook Pro, iMac, Mac Mini, Mac Studio (M1/M2/M3/M4/M5)
  • Works everywhere — built with Apple's InputMethodKit framework
  • Completely offline — no internet, no data collection, no telemetry
  • Free and open source (MPL-2.0) — no ads, no subscription

Install

Option A — Homebrew (recommended if you have it)

brew install --cask arahim3/lekho/lekho

That single command auto-taps and installs Lekho. Then jump to step 3 below to add the input source.

To update later: brew upgrade --cask lekho. To uninstall: brew uninstall --cask lekho.

Option B — Download the DMG

  1. Download the latest .dmg from Releases

  2. Open the DMG and double-click Install Lekho.pkg

    macOS may block the installer since Lekho isn't signed with an Apple Developer ID yet. If you see "Install Lekho.pkg" Not Opened, follow these two steps:

    a. Click Done on the warning dialog (do not click "Move to Trash"). The "Open Anyway" option won't appear in System Settings until you do.

    macOS install blocked dialog — click Done

    b. Open System Settings → Privacy & Security, scroll to the Security section, and click Open Anyway next to "Install Lekho.pkg" was blocked. Then double-click the .pkg again.

    Privacy & Security pane — click Open Anyway

Final steps (both options)

  1. Go to System Settings → Keyboard → Input Sources → Edit, click +, find Lekho, and add it

    If Lekho doesn't appear in the list, log out of your Mac and log back in — macOS sometimes needs this to discover new input methods on first install.

  2. Use Globe key or Ctrl+Space to switch to Bangla

Typing modes

Open the Settings tab in the Lekho window to pick how typing behaves:

Lekho Settings tab — Phonetic-first, Smart suggestions, and Phonetic-only modes

  • Phonetic-first (default) — your exact phonetic spelling is committed by default, but the suggestion list is still one keypress away. Lekho remembers the words you deliberately pick.
  • Smart suggestions — dictionary, autocorrect, and emoji pick the best-matching word when you press space.
  • Phonetic-only — pure transliteration, no suggestion popup, autocorrect, or emoji.

Changes apply immediately — no restart needed.

Requirements

  • macOS 13 (Ventura) or later
  • Apple Silicon Mac (M1/M2/M3/M4/M5)

Build from Source

Prerequisites: Rust toolchain, Xcode (for Swift and InputMethodKit).

# Install Rust (if not already)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup target add aarch64-apple-darwin

# Build
make build

# Install to ~/Library/Input Methods/
make install

# Create distributable .dmg
bash scripts/create_dmg.sh

Architecture

Swift (InputMethodKit)  ←→  Rust Engine (riti) via C FFI
  • Rust engine (engine/) — wraps OpenBangla/riti, compiled as a static library
  • Swift IMK layer (Lekho/) — subclasses IMKInputController, handles key events, candidate window, and text commits
  • No Xcode project — built with swiftc + cargo + shell scripts

Contributing

Contributions are highly welcome! Whether it's reporting a bug, suggesting a feature, or submitting a pull request to improve the Swift or Rust codebases, feel free to get involved.

Credits

Lekho is powered by OpenBangla's riti engine — the same Bengali transliteration engine behind OpenBangla Keyboard on Linux.

Feedback

Found a bug or have a suggestion? Open an issue.

License

MPL-2.0


Keywords: Avro keyboard Mac, Bangla keyboard macOS, Bengali typing MacBook, Avro phonetic Apple Silicon, অভ্র কিবোর্ড ম্যাক, বাংলা টাইপিং ম্যাক

Maintained by Abdur Rahim

About

Free, open source Avro Phonetic Bangla keyboard for macOS — built natively for Apple Silicon (M1/M2/M3/M4/M5). Powered by OpenBangla's riti engine.

Topics

Resources

Stars

72 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages