Awesome-omni-skill midnight-tooling:midnight-setup

Use when setting up Midnight development environment, installing Compact compiler and developer tools, configuring proof server, verifying prerequisites, or getting started with Midnight development.

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/midnight-tooling-midnight-setup" ~/.claude/skills/diegosouzapw-awesome-omni-skill-midnight-tooling-midnight-setup && rm -rf "$T"
manifest: skills/tools/midnight-tooling-midnight-setup/SKILL.md
source content

Midnight Development Environment Setup

Guide developers through setting up a complete Midnight development environment for building zero-knowledge smart contracts and dApps.

Prerequisites Overview

Before installing Midnight-specific tools, verify these prerequisites:

RequirementMinimumRecommendedCheck Command
Node.js18.x20.x LTS
node --version
npm9.xLatest
npm --version
Docker20.xLatest
docker --version
Git2.xLatest
git --version
ChromeLatestLatestRequired for Lace wallet

Run the prerequisite check script to verify:

bash ${CLAUDE_PLUGIN_ROOT}/skills/midnight-setup/scripts/check-prerequisites.sh

For detailed prerequisite verification:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/midnight-setup/scripts/check-prerequisites.py

Installation Steps

1. Install Node.js via nvm (Recommended)

Using nvm provides easy version management:

# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash

# Restart terminal or source profile
source ~/.zshrc  # or ~/.bashrc

# Install Node.js 18 LTS
nvm install 18 --lts
nvm alias default 18

Important: After installing or switching Node versions, open a new terminal window. Simply sourcing the profile may leave stale references.

2. Install Docker Desktop

Download from docker.com/products/docker-desktop for your platform. After installation:

  1. Launch Docker Desktop
  2. Wait for the Docker daemon to start
  3. Verify with
    docker info

3. Install Compact Developer Tools

The Compact developer tools manage compiler versions and provide the

compact
CLI:

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/midnightntwrk/compact/releases/latest/download/compact-installer.sh | sh

After installation, add the binary to your PATH. The installer will show the exact path, typically:

# Add to ~/.zshrc or ~/.bashrc
export PATH="$HOME/.compact/bin:$PATH"

Then restart your terminal or source the profile.

4. Install the Compact Compiler

With the developer tools installed, download the compiler:

# Download latest compiler
compact update

# Verify installation
compact --version          # Shows developer tools version
compact compile --version  # Shows compiler version

5. Pull the Proof Server Image

The proof server generates zero-knowledge proofs locally:

docker pull midnightnetwork/proof-server:latest

To start the proof server (when needed for development):

docker run -p 6300:6300 midnightnetwork/proof-server -- midnight-proof-server --network testnet

6. Install VS Code Extension (Optional)

The Midnight Compact VS Code extension provides syntax highlighting and IntelliSense:

  1. Download the
    .vsix
    file from the Compact releases
  2. In VS Code: Extensions → "..." menu → "Install from VSIX..."
  3. Select the downloaded file

7. Install Lace Midnight Preview Wallet (Optional)

For testing dApps with a wallet:

  1. Install from Chrome Web Store: search "Lace Midnight"
  2. Create a new wallet and save seed phrase securely
  3. Get test tokens from midnight.network/test-faucet/

Verification

After completing setup, verify everything works:

# Check all tools
node --version      # Should be 18+
docker info         # Should show Docker running
compact --version   # Should show developer tools version
compact compile --version  # Should show compiler version

# Check proof server image
docker images | grep proof-server

Or run the environment check command:

/midnight:check

Compact Developer Tools Reference

CommandPurpose
compact update
Download/update to latest compiler
compact update <version>
Switch to specific version
compact list
Show all available versions
compact list --installed
Show locally installed versions
compact check
Check for updates without downloading
compact compile <file> <outdir>
Compile a contract
compact compile +0.25.0 <file> <outdir>
Compile with specific version
compact self update
Update the developer tools themselves
compact help
Show help

Common Setup Issues

IssueSolution
compact: command not found
Add
~/.compact/bin
to PATH, restart terminal
Node version wrong after installOpen a new terminal window
Docker daemon not runningStart Docker Desktop application
Proof server won't startCheck Docker is running, port 6300 is free

Additional Resources

  • references/installation-steps.md
    - Detailed platform-specific instructions
  • references/bun-setup.md
    - Alternative setup using Bun runtime

For troubleshooting, use the

/midnight:doctor
command or consult the
midnight-debugging
skill.