Skip to main content

Nitro Shell — README

·564 words·3 mins· loading · loading ·
Dimitrius Farida
Author
Dimitrius Farida

This post is the README from Nitro-Shell, synced from GitHub. Click the project card on the Projects page to open the repo.


⚡ NitroShell for macOS ⚡

A smarter, cooler, voice-activated terminal powered by CodeBotD (aka Mitri 😎)
Fuzzy search, typo fixing, ASCII art banners, and 🔊 talking shell powers!


⚠️ Requirements (macOS only)
#

  • zsh shell (default on macOS)
  • fzf for fuzzy menus → Install with: brew install fzf
  • python3 for typo detection
  • (Optional) oh-my-zsh for themes/plugins

🛠️ Features
#

  • 🎤 Voice-activated greeting with say
  • 🔍 Fuzzy command launcher (fzf)
  • 🧠 Smart typo detection (Did you mean echo?)
  • 🎨 Orange + white ASCII banner
  • ⚡ Quick access with nitro or cmds
  • 🧪 Works in your normal terminal — no new apps!

🚀 Install NitroShell (macOS Only)
#

git clone https://github.com/CodeBotD/Nitro-Shell.git ~/.nitroshell
chmod +x ~/.nitroshell/shell.sh

🔧 Setup .zshrc

Open your ZSH config:

nano ~/.zshrc

Paste this at the bottom:

# NITRO SHELL BY CODEBOTD

# NitroShell Boosters
source ~/.fzf.zsh
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

alias nitro="~/.nitroshell/shell.sh"
alias cmds="say 'NitroShell activated' && nitro"

command_not_found_handler() {
  local cmd="$1"
  shift   # remove the wrong command, keep the rest (args)

  echo "zsh: command not found: $cmd"
  echo "NitroShell: Thinking... 🤔"

  # Collect all commands in PATH
  local all_cmds
  all_cmds=$(echo "$PATH" | tr ':' '\n' | xargs -I {} find {} -maxdepth 1 -type f -perm -111 2>/dev/null | xargs -n 1 basename | sort -u)

  # Use Python to guess close matches
  local suggestions
  suggestions=$(python3 - <<EOF
import difflib
commands = """$all_cmds""".split()
matches = difflib.get_close_matches("$cmd", commands, n=5, cutoff=0.5)
print("\n".join(matches))
EOF
)

  if [[ -z "$suggestions" ]]; then
    echo "NitroShell: I couldn't guess... 🥲"
    return 127
  fi

  # Put into zsh array
  local -a suggestion_array
  suggestion_array=("${(@f)suggestions}")

  echo "NitroShell: Did you mean one of these?"
  local i=1
  for suggestion in "${suggestion_array[@]}"; do
    echo "  $i) $suggestion"
    ((i++))
  done
  echo "  0) Cancel"

  # Ask
  echo -n "Select number: "
  read choice

  # Make sure it's only digits
  if ! [[ "$choice" =~ '^[0-9]+$' ]]; then
    echo "⚠️ Please type just the number (like 1, 2, 3)."
    return 1
  fi

  if [[ "$choice" -eq 0 ]]; then
    echo "❌ Cancelled."
    return 1
  fi

  # zsh arrays are 1-indexed so this is safe
  local selected="${suggestion_array[$choice]}"

  if [[ -n "$selected" ]]; then
    echo "🧠 NitroShell is running: $selected $@"
    "$selected" "$@"
    return $?
  else
    echo "Invalid choice."
    return 127
  fi
}

` Save with CTRL+O, then press Enter

` Exit with CTRL+X

` Reload your shell:

source ~/.zshrc

✅ Use NitroShell

    `🧨 Start NitroShell manually:

nitro

    🗣️ Activate with voice:

cmds (not working)

    (This alias is set but may not work depending on your setup)

🧠 Try a typo:

ecoh

You’ll see:

zsh: command not found: ecoh NitroShell: Did you mean ’echo’? [Y/n]

👑 Made by Mitri (aka CodeBotD)

🧠 I’m Dimitrius Farida — a kid coder with big energy!
I build awesome tech like NitroShell, Roblox games, Minecraft mods, and more!

🌐 Check out more at github.com/CodeBotD

🧠 Wanna Contribute?

Found a bug? Got a 🔥 idea like rainbow banners or a terminal minigame?

🎯 Fork the repo, make your changes, and send a PR!
Together we’ll make NitroShell smarter, cooler, and louder! 🚀

🌟 Future Ideas

nitroboost → Fancy shell animations 💥

fuel → Show battery charge status 🔋

ascii → Random quotes or banners 🎨

historyboost → Fuzzy search your past commands 🔍

game → A terminal game like Fishy Pong