Install on macOS

Complete installation guide for macOS (Intel & Apple Silicon)

⚡ Quick Install (Recommended)

The fastest way to get NexaDB on macOS. Works on both Intel and Apple Silicon Macs.

$brew tap krishcdbry/nexadb
$brew install nexadb
$nexadb start

What gets installed:

nexadb command
Start/stop server, manage services
nexa command
Interactive CLI terminal (Rust)
Python server
All server files + dependencies
Admin panel
Beautiful web interface

System Requirements

Minimum

  • • macOS 11 (Big Sur) or newer
  • • 2 GB RAM
  • • 500 MB disk space
  • • Intel or Apple Silicon CPU
  • • Homebrew installed

Recommended

  • • macOS 13 (Ventura) or newer
  • • 4 GB RAM or more
  • • 2 GB disk space
  • • Apple Silicon (M1/M2/M3)
  • • Latest Homebrew

Detailed Installation Steps

Step 1: Install Homebrew (if not installed)

If you don't have Homebrew installed, install it first:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

After installation, follow the instructions to add Homebrew to your PATH.

Step 2: Add NexaDB Tap

$ brew tap krishcdbry/nexadb

This adds the NexaDB repository to Homebrew.

Step 3: Install NexaDB

$ brew install nexadb

This will:

  • • Download and install Python dependencies (msgpack)
  • • Install NexaDB server files
  • • Download the nexa CLI binary (architecture-specific)
  • • Create wrapper scripts for easy command access
  • • Add commands to your PATH automatically

Step 4: Start NexaDB

$ nexadb start

This starts all three services:

Binary Protocol on port 6970 (10x faster!)
JSON REST API on port 6969
Admin Web UI on port 9999

Step 5: Verify Installation

Test that everything works:

Check version:
$ nexadb --version
NexaDB v2.2.0
Use interactive CLI:
$ nexa -u root -p
Password: ********
Connected to NexaDB v2.2.0
Open admin panel:
$ open http://localhost:9999

🦀 Nexa Interactive CLI

The nexa command gives you a MySQL-like terminal experience for NexaDB.

Features

  • • Zero dependencies (standalone binary)
  • • Written in Rust for speed
  • • Command history & auto-completion
  • • All CRUD + vector search commands
  • • Works on Intel & Apple Silicon

Commands

  • • collections - List all collections
  • • use <collection> - Switch collection
  • • insert {...} - Create document
  • • query {...} - Search documents
  • • vector_search [...] - Semantic search
  • • count - Count documents
# Example session
$ nexa -u root -p
Password: ********
Connected to NexaDB v2.2.0
nexa> collections
✓ Found 2 collection(s)
[1] users
[2] movies

Troubleshooting

⚠️ Homebrew stuck at numpy/hnswlib or Xcode errors?

If Homebrew installation gets stuck compiling numpy/hnswlib or shows Xcode version errors, use the install script instead:

curl -fsSL https://raw.githubusercontent.com/krishcdbry/nexadb/main/install.sh | bash

This script uses pre-built pip wheels — no compilation needed, works instantly!

Command not found: nexadb

If the command isn't found after installation:

# Reload your shell
$ source ~/.zshrc
# or for bash:
$ source ~/.bash_profile

Or simply open a new terminal window.

Port already in use

If ports 6970, 6969, or 9999 are already in use:

# Find what's using the port
$ lsof -i :6970
# Kill the process
$ kill -9 <PID>

Permission denied errors

If you get permission errors:

# Fix Homebrew permissions
$ sudo chown -R $(whoami) /opt/homebrew

Then reinstall: brew reinstall nexadb

Uninstall

Remove NexaDB

To completely remove NexaDB from your system:

$ brew uninstall nexadb
$ brew untap krishcdbry/nexadb
# Optional: Remove data directory
$ rm -rf /opt/homebrew/var/nexadb