Skip to content
/ neru Public

Keyboard-driven navigation for macOS - Navigate and click without touching your mouse ๐Ÿ–ฑ๏ธ Open source alternative to homerow, vimac and shortcat in macos.

License

Notifications You must be signed in to change notification settings

y3owk1n/neru

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Neru

Master your keyboard, refine your workflow

Navigate macOS without touching your mouse - keyboard-driven productivity at its finest ๐Ÿ–ฑ๏ธโŒจ๏ธ

License Platform Go Version Latest Release

Installation โ€ข Quick Start โ€ข Features โ€ข Docs โ€ข Contributing


โœจ What is Neru?

Neru (็ทดใ‚‹) - a Japanese word meaning "to refine, polish, and master through practice" - is a free, open-source keyboard navigation tool for macOS. Navigate, click, and scroll anywhere on your screen without ever touching your mouse.

๐ŸŽฏ Why Choose Neru?

  • ๐Ÿ†“ Always free - No paywalls, no subscriptions, no "upgrade to pro"
  • ๐ŸŽฌ Universal compatibility - Works with native macOS apps, Electron apps, and all browsers
  • โšก Lightning fast - Native performance with instant response
  • ๐Ÿ› ๏ธ Power-user friendly - Text-based config for version control and dotfile management
  • ๐Ÿค Community-owned - Your contributions shape the project
  • ๐Ÿ”ง Scriptable - CLI commands enable automation and integration

๐Ÿ†š Free Alternative To

Neru is a capable free and open-source replacement for:

  • Homerow - Modern keyboard navigation (paid)
  • Shortcat - Keyboard productivity tool (discontinued)
  • Vimac - Vim-style navigation (unmaintained)
  • Mouseless - Grid based keyboard navigation (paid)

๐Ÿš€ Get Started

Install

# Homebrew (recommended)
brew tap y3owk1n/tap
brew install --cask y3owk1n/tap/neru

# Nix Flake
# Add to flake.nix: inputs.neru.url = "github:y3owk1n/neru";
# See docs/INSTALLATION.md for nix-darwin/home-manager setup

# Or build from source
git clone https://github.com/y3owk1n/neru.git
cd neru && just release

Grant Permissions

  1. Open System Settings
  2. Navigate to Privacy & Security โ†’ Accessibility
  3. Enable Neru

Try It

# Start Neru
open -a Neru

# Or install as launchd service for auto-startup
neru services install

# Try default hotkeys:
# Cmd+Shift+Space - Hint mode
# Cmd+Shift+G     - Grid mode
# Cmd+Shift+S     - Scroll

When in hint or grid mode, selecting a hint or label will move the cursor to that point. You can also press Tab when in those modes to enter action mode, and use keybindings to perform actions on the current cursor position, e.g., l for left click, r for right click, d for double-click, m for middle-click, etc.

See Installation Guide for detailed setup instructions.


๐ŸŽฏ Core Features

Feature Description
๐ŸŽฏ Hint Labels Click any visible element using keyboard labels
๐ŸŽฌ Action Mode Choose click type: left, right, double, middle, drag & drop
๐Ÿ“œ Vim Scrolling Scroll anywhere with j/k, gg/G, Ctrl+D/U
๐ŸŒ Universal Support Native apps, Electron, Chrome, Firefox, system UI
โšก Native Performance Built with Objective-C and Go for instant response
๐Ÿ› ๏ธ TOML Config Highly customizable with text-based configuration
๐Ÿšซ App Exclusion Disable Neru in specific applications
๐Ÿ’ฌ CLI Control IPC commands for scripting and automation

๐ŸŽฎ How It Works

Four Navigation Modes:

  1. Hints Mode - Accessibility-based labels on clickable elements
  2. Grid Mode - Universal coordinate-based navigation (works everywhere!)
  3. Scroll Mode - Vim-style scrolling at cursor position
  4. Action Mode - Interactive mouse actions at cursor position

๐Ÿ“š Documentation

โš™๏ธ Configuration

Neru uses TOML configuration with sensible defaults. Customize everything from hotkeys to visual styling.

[hotkeys]
"Cmd+Shift+Space" = "hints"
"Cmd+Shift+G" = "grid"

[hints]
hint_characters = "asdfghjkl"
background_color = "#FFD700"

See Configuration Guide for all options.

๐Ÿค Contributing

We welcome contributions! Here's how to get started:

  1. Fork & Clone the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes following our Coding Standards
  4. Test thoroughly (just test && just lint)
  5. Commit conventionally and open a Pull Request

Guidelines:

  • Keep PRs focused on a single change
  • Add tests for new features
  • Update documentation
  • Follow existing code style

See Development Guide for build instructions and architecture details.

๐Ÿ—๏ธ Design Philosophy

Why TOML config over GUI?

  • โšก Faster editing than clicking through settings
  • ๐Ÿ“ Version control friendly (dotfiles, git)
  • ๐Ÿ”ง More powerful than UI constraints
  • ๐Ÿ› ๏ธ Reduces maintenance burden

Why grid-based navigation?

  • โœ… Works everywhere (native apps, Electron, browsers, system UI)
  • โšก Fast and reliable (no accessibility tree traversal)
  • ๐ŸŽฏ Always accurate (clicks at exact coordinates)
  • ๐Ÿ”ง Simple maintenance (no app-specific workarounds)

๐Ÿ“Š Project Status

Actively maintained with community contributions. PRs welcome!

Future Ideas:

  • Service management commands
  • Improved app icons

Known Issues:

  • Hold/unhold actions don't work in Finder (help appreciated!)

โœ… Compatibility

Neru works with everything:

  • Native macOS Apps - Finder, Safari, System Settings, Mail, etc.
  • Electron Apps - VS Code, Cursor, Slack, Spotify, Obsidian, Discord
  • Browsers - Chrome, Firefox, Safari, Arc, Brave, Zen
  • Creative Apps - Adobe Illustrator, Photoshop, Figma
  • System UI - Menubar, Dock, Mission Control, Notification Center

See Troubleshooting Guide for app-specific issues.


๐Ÿ“„ License

MIT License - see LICENSE for details.

๐Ÿ™ Acknowledgments

Inspired by these excellent projects:

๐Ÿ’ฌ Support

Made with โค๏ธ by y3owk1n

About

Keyboard-driven navigation for macOS - Navigate and click without touching your mouse ๐Ÿ–ฑ๏ธ Open source alternative to homerow, vimac and shortcat in macos.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages