████████╗██╗ ██╗██████╗
╚══██╔══╝██║ ██║██╔══██╗
██║ ██║ ██║██████╔╝
██║ ██║ ██║██╔═══╝
██║ ╚██████╔╝██║
╚═╝ ╚═════╝ ╚═╝
Terminal Enhancements for Power Users
Beautiful animations, ASCII art, and productivity tools for your Zsh terminal.
Features · Installation · Commands · Themes · Contributing
Terminup transforms your terminal into a modern, animated development environment. It adds visual feedback to common commands, beautiful ASCII art to git operations, and productivity tools to streamline your workflow.
Works with any Zsh setup - Powerlevel10k is optional.
Cross-platform - Works on macOS, Linux (Ubuntu, Arch, Fedora), and Windows (WSL).
Multilingual - Supports English, Dutch, French, German, Spanish, and more!
┌─────────────────────────────────────────────────────────────┐
│ │
│ ╔═══════════════════════════════════════════════════╗ │
│ ║ TERMINUP BOOT SEQUENCE ║ │
│ ╚═══════════════════════════════════════════════════╝ │
│ │
│ [ OK ] Initializing Terminup v1.0.0 │
│ [ OK ] Loading core modules │
│ [ OK ] Configuring shell environment │
│ │
│ ───────────────────────────────────────────────────── │
│ │
│ SYSTEM STATUS │
│ [ OK ] Shell: zsh 5.9 │
│ [ OK ] Git: 2.43.0 │
│ [ OK ] Node: v20.10.0 │
│ [ OK ] FZF: Available │
│ │
│ ═════════════════════════════════════════════════════ │
│ [ OK ] All systems operational │
│ │
└─────────────────────────────────────────────────────────────┘
+-----------------------------------+
| PUSHING TO REMOTE |
+-----------------------------------+
LOCAL ========> REMOTE
+-----+ +-----+
| | ----- * -------------> | |
+-----+ +-----+
Every git operation comes with visual feedback:
- Animated spinners during operations
- ASCII art headers
- Success/failure indicators
- Pretty formatted output
+-----------------------------------+
| [~] SCREENSAVER COLLECTION |
+-----------------------------------+
- Digital Clock - Large ASCII time display
- Analog Clock - ASCII clock with multiple shapes
- Matrix Rain - Falling Japanese characters
- Pipes - Animated pipe maze
- Stars - Flying starfield effect
- Aquarium - Swimming fish animation
- Fire - Burning flames effect
- Lock Screen - Fullscreen with unlock sequence
| Feature | macOS | Linux | Windows (WSL) |
|---|---|---|---|
| Copy/Paste | ✅ | ✅ | ✅ |
| Open URLs | ✅ | ✅ | ✅ |
| Notifications | ✅ | ✅ | ✅ |
| System Lock | ✅ | ✅ | ✅ |
| Battery Info | ✅ | ✅ | - |
Change the language of all messages:
lang set nl # Dutch
lang set fr # French
lang set de # German
lang set es # SpanishSupported: 🇬🇧 English, 🇳🇱 Nederlands, 🇫🇷 Français, 🇩🇪 Deutsch, 🇪🇸 Español, 🇮🇹 Italiano
═══════════════════════════════════════════════════════
Available Themes:
████████████████████████████ catppuccin
████████████████████████████ dracula
████████████████████████████ nord
████████████████████████████ tokyo-night
████████████████████████████ cyberpunk
████████████████████████████ matrix
████████████████████████████ neon
═══════════════════════════════════════════════════════
15+ built-in themes plus a custom theme builder.
When you open a new terminal, Terminup greets you with:
- Animated logo reveal
- System status checks
- Git branch and project detection
- Time-based greetings
Tip: Press Enter during boot to speed up the animation!
- FZF-powered fuzzy finding
- DDEV integration
- Pomodoro timer
- Quick notes
- Spotify control
- Password generator
- Bookmark system
- Zsh (5.1 or higher)
- Git
# macOS
brew install fzf bat
# Ubuntu/Debian
sudo apt install fzf bat xclip
# Arch Linux
sudo pacman -S fzf bat xclipgit clone https://github.com/yourusername/terminup.git ~/Projects/Terminup
cd ~/Projects/Terminup
./install.shAdd to your ~/.zshrc:
source ~/Projects/Terminup/terminup.zshReload:
source ~/.zshrcUse tup to see all commands, or tup <category> for specific categories.
| Command | Description |
|---|---|
tup |
Show essential commands |
tup all |
Show all commands |
tup git |
Git commands |
tup nav |
Navigation commands |
tup npm |
NPM/PNPM commands |
tup screen |
Screensaver commands |
tup system |
System & language commands |
tups |
Reload shell |
| Command | Description |
|---|---|
gc [message] |
Commit with ASCII art |
gp [remote] |
Push with animation |
gl [remote] |
Pull with animation |
ga [files] |
Stage files |
fga |
Fuzzy git add (interactive file selector) |
gb |
List branches |
gco <branch> |
Checkout branch |
gss |
Status overview |
glog |
Pretty log graph |
gst / gstp |
Stash / Stash pop |
gm <branch> |
Merge branch |
| Command | Description |
|---|---|
cd <dir> |
Animated directory change |
ll |
Enhanced listing |
lt [depth] |
Tree view |
recent |
Recent directories |
fcd |
Fuzzy directory finder |
mkcd <dir> |
Create and enter |
| Command | Description |
|---|---|
ni / pi |
npm/pnpm install |
dni / dpi |
DDEV npm/pnpm install |
dev |
Start dev server |
build |
Production build |
scripts |
List npm scripts |
fscript |
Fuzzy script picker |
add <pkg> |
Add dependency |
remove <pkg> |
Remove dependency |
| Command | Description |
|---|---|
lock |
Fullscreen digital clock |
ss |
Digital clock screensaver |
aclock [shape] |
Analog ASCII clock |
alock [shape] |
Fullscreen analog clock |
matrix |
Matrix rain effect |
pipes |
Pipe maze screensaver |
stars |
Flying starfield effect |
aquarium |
Swimming fish animation |
fire |
Burning flames effect |
rain |
Rain animation |
bounce |
DVD-style bouncing logo |
syslock |
Lock the system |
autolock [secs] |
Auto-lock after idle |
Shapes: circle, square, diamond, hexagon, octagon, decagon
Unlock: Arrow keys ← ↑ → ↓
| Command | Description |
|---|---|
lang list |
Show available languages |
lang set <code> |
Set language (en/nl/fr/de/es) |
lang current |
Show current language |
platform |
Show platform info |
stats |
System statistics |
| Command | Description |
|---|---|
pomo [mins] |
Pomodoro timer |
focus [mins] |
Focus mode |
todo |
Todo list (add/done/rm/list) |
note [text] |
Quick notes |
quote |
Programming quote |
decide a b c |
Decision maker |
genpass [len] |
Password generator |
cleanup [type] |
Quick cleanup |
spotify |
Spotify control (macOS) |
google <query> |
Web search |
github <query> |
GitHub search |
share <file> |
Upload & share file (get URL) |
qr <text> |
Generate QR code |
typetest |
Typing speed test |
stopwatch |
Simple stopwatch |
weather [city] |
Weather forecast |
dadjoke |
Random dad/programmer joke |
hn [count] |
Hacker News top stories |
cmdstats |
Your most-used commands |
clockwidget [secs] |
Inline clock widget |
welcome |
Time-based greeting |
ritual / morning |
Morning routine |
eod / night |
End of day summary |
standup |
Generate standup report |
achievement |
Track your achievements |
| Command | Description |
|---|---|
api <METHOD> <url> |
API tester (GET/POST/PUT/DELETE) |
shorten <url> |
URL shortener (copies to clipboard) |
asciiart <text> |
Generate ASCII art from text |
cls |
Clear screen with fade animation |
clsq |
Quick fade clear |
| Command | Description |
|---|---|
blackjack |
🃏 Play Blackjack (Hit/Stand/Quit) |
snake |
🐍 Terminal snake game |
slots |
🎰 Slot machine with jackpot animation |
nyan [secs] |
🌈 Nyan cat animation |
fireworks [secs] |
🎆 Fireworks animation |
dadjoke |
😄 Random dad joke |
asciiart <text> |
🎨 Generate ASCII art |
decide a b c |
🎲 Random decision maker |
rain |
🌧️ Rain animation |
fire |
🔥 Fire animation |
aquarium |
🐠 ASCII fish tank |
stars |
⭐ Starfield animation |
bounce |
📀 DVD bounce animation |
| Command | Description |
|---|---|
theme list |
Show all themes |
theme set <name> |
Apply theme |
theme preview <name> |
Preview theme |
theme custom |
Build custom theme |
colors |
Show color palette |
Dark Light Fun
─────────────────────────────────────────────────
catppuccin github-light neon
dracula solarized cyberpunk
nord matrix
tokyo-night retro
gruvbox pastel
synthwave monochrome
ocean
sunset
theme customInteractively pick colors for each element.
# Disable startup animation
export TERMINUP_STARTUP_ENABLED=false
# Minimal startup
export TERMINUP_STARTUP_STYLE=minimal
# Or completely off
export TERMINUP_STARTUP_STYLE=off
# Set default language
export TERMINUP_LANG=nlterminup/
├── terminup.zsh # Main entry point
├── install.sh # Installation script
├── README.md
├── CONTRIBUTING.md
├── LICENSE
├── ascii-art/ # ASCII art assets
└── components/
├── animations.zsh # Spinners, progress bars
├── colors.zsh # Color definitions
├── completions.zsh # Tab completion
├── cursor-effects.zsh # Cursor styling
├── ddev.zsh # DDEV integration
├── extras.zsh # Productivity tools
├── fzf-power.zsh # FZF integrations
├── git-magic.zsh # Git enhancements
├── i18n.zsh # Internationalization core
├── languages/ # Translation files
│ ├── en.zsh # English
│ ├── nl.zsh # Dutch
│ ├── fr.zsh # French
│ ├── de.zsh # German
│ ├── es.zsh # Spanish
│ └── it.zsh # Italian
├── navigation.zsh # cd/ls improvements
├── npm-pnpm.zsh # Package manager tools
├── platform.zsh # Cross-platform utilities
├── screensaver.zsh # Screensavers & lock
├── startup.zsh # Boot sequence
└── themes.zsh # Theme system
Contributions are welcome! Whether it's:
- Bug fixes
- New features
- Documentation improvements
- Theme additions
- Translations (see
components/languages/)
# Clone the repo
git clone https://github.com/yourusername/terminup.git
cd terminup
# Create a branch
git checkout -b feature/your-feature
# Make changes and test
source terminup.zsh
# Submit a PR- Keep it fast - Terminal tools should be instant
- Keep it optional - Features should degrade gracefully
- Keep it clean - Follow existing code style
- Test thoroughly - Test on clean zsh installs
- Cross-platform - Use platform utilities (
_open,_copy, etc.) - Multilingual - Use
_t()for user-facing strings
- Create a new file
components/languages/xx.zsh(wherexxis the language code):
#!/usr/bin/env zsh
# 🌐 Your Language Translations
typeset -gA _T_xx
_T_xx=(
welcome "Your translation"
goodbye "Your translation"
# ... copy all keys from en.zsh and translate
)- Register the language in
components/i18n.zsh:
# Add to TERMINUP_LANGUAGES
TERMINUP_LANGUAGES=(
# ... existing languages
xx "Your Language Name"
)
# Add source line
source "$_I18N_DIR/languages/xx.zsh"
# Add case in _t() function
xx) result="${_T_xx[$key]}" ;;Edit components/themes.zsh:
THEMES+=(
your-theme "primary,secondary,accent,success,warning,error,muted"
)Colors are 256-color terminal codes (0-255).
- Create or edit a component file
- Add the function with
_t()for messages - Update the help in
terminup.zsh - Update this README
Yes. Terminup is completely independent. Powerlevel10k handles your prompt, Terminup adds commands and features. They complement each other but neither requires the other.
Yes. Full support for:
- macOS - All features
- Linux - Ubuntu, Arch, Fedora, and others
- Windows - Via WSL (Windows Subsystem for Linux)
lang set nl # Dutch
lang set fr # French
# ... etcAdd to your ~/.zshrc before sourcing terminup:
export TERMINUP_STARTUP_STYLE=offNo. All features load lazily. The startup animation only runs once per session and can be disabled.
cd ~/Projects/Terminup
git pull
tups # or: source ~/.zshrcBuilt with Zsh and caffeine.
Inspired by:
- Powerlevel10k
- Oh My Zsh
- fzf
- Iron Man's JARVIS
MIT License - do whatever you want with it.
╔═══════════════════════════════════════════════════════════╗
║ ║
║ "Any sufficiently advanced terminal configuration ║
║ is indistinguishable from magic." ║
║ ║
╚═══════════════════════════════════════════════════════════╝
████████╗███████╗██████╗ ███╗ ███╗██╗███╗ ██╗██╗ ██╗██████╗
╚══██╔══╝██╔════╝██╔══██╗████╗ ████║██║████╗ ██║██║ ██║██╔══██╗
██║ █████╗ ██████╔╝██╔████╔██║██║██╔██╗ ██║██║ ██║██████╔╝
██║ ██╔══╝ ██╔══██╗██║╚██╔╝██║██║██║╚██╗██║██║ ██║██╔═══╝
██║ ███████╗██║ ██║██║ ╚═╝ ██║██║██║ ╚████║╚██████╔╝██║
╚═╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═╝