Jump to content

Technical: Difference between revisions

From Archive
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 2: Line 2:


''CLI workflows, data processing scripts, and solutions worth remembering''
''CLI workflows, data processing scripts, and solutions worth remembering''
I've documented the process of setting these things up a new computer in my [[New Computer Runbook]].


=== Ambient Information Visualization ===
=== Ambient Information Visualization ===
Line 16: Line 18:
=== Modern CLI Replacements ===
=== Modern CLI Replacements ===
{| class="wikitable"
{| class="wikitable"
! Old !! New !! Purpose
! Old !! New !! Purpose !! My Config
|-
| ls || [https://github.com/lsd-rs/lsd lsd] || Better directory listings with icons || (uses default)
|-
| cat || [https://github.com/sharkdp/bat bat] || Syntax highlighting and line numbers || (uses default)
|-
|-
| ls || [https://github.com/lsd-rs/lsd lsd] || Better directory listings with icons
| du || [https://github.com/bootandy/dust dust] || Disk usage visualization || (uses default)
|-
|-
| cat || [https://github.com/sharkdp/bat bat] || Syntax highlighting and line numbers 
| df || [https://github.com/muesli/duf duf] || Disk free visualization || (uses default)
|-
|-
| top || [https://github.com/aristocratos/btop btop] || System monitoring with transparency
| top || [https://github.com/aristocratos/btop btop] || System monitoring with transparency || [https://github.com/ejfox/dotfiles/tree/main/btop 📁 btop/] ''(transparent background)''
|}
|}


=== Key Configurations ===
=== Key Configurations ===
* '''.zshrc''' - Shell with LLM integration + modern aliases
 
* '''.tmux.conf''' - Geometric status indicators (◆ ◇ ○ ▪ ─), vim navigation
==== Shell & Environment ====
* '''[https://github.com/LazyVim/LazyVim nvim/]''' - LazyVim with minimal statusline + zen mode integration
* '''[https://www.zsh.org/ Zsh]''' with LLM integration → [https://github.com/ejfox/dotfiles/blob/main/.zshrc 📄 .zshrc] ''(Claude integration, modern CLI aliases, Things CLI bindings)''
* '''[https://ghostty.org/ ghostty/]''' - Terminal with opacity + blur effects
* '''AI-powered MOTD''' with contextual information → [https://github.com/ejfox/dotfiles/blob/main/.startup.sh 📄 .startup.sh] ''(LLM-generated contextual greetings based on system state)''
* '''[https://github.com/romkatv/powerlevel10k Powerlevel10k]''' minimal prompt → [https://github.com/ejfox/dotfiles/blob/main/p10k.zsh 📄 p10k.zsh] ''(ultra-minimal, geometric symbols only)''
* '''Shell environment''' setup → [https://github.com/ejfox/dotfiles/blob/main/.zprofile 📄 .zprofile] ''(API keys, development paths)''
 
==== Terminal & Multiplexing ====
* '''[https://github.com/tmux/tmux Tmux]''' - Geometric status indicators (◆ ◇ ○ ▪ ─), vim navigation → [https://github.com/ejfox/dotfiles/blob/main/.tmux.conf 📄 .tmux.conf] ''(geometric symbols, zen mode integration, subtle active pane indicators)''
* '''[https://ghostty.org/ Ghostty]''' - Terminal with opacity + blur effects → [https://github.com/ejfox/dotfiles/tree/main/ghostty 📁 ghostty/] ''(custom transparency, theme-agnostic colors)''
* '''[https://hyper.is/ Hyper]''' - Terminal configuration (backup) → [https://github.com/ejfox/dotfiles/blob/main/.hyper.js 📄 .hyper.js] ''(minimal plugin setup, opacity effects)''
 
==== Editor & Tools ====
* '''[https://neovim.io/ Neovim]''' with [https://github.com/LazyVim/LazyVim LazyVim] → [https://github.com/ejfox/dotfiles/tree/main/nvim 📁 nvim/] ''(zen mode keybindings, minimal statusline, canvas-sketch integration)''
* '''[https://yazi-rs.github.io/ Yazi]''' - Clean file manager → [https://github.com/ejfox/dotfiles/tree/main/yazi 📁 yazi/] ''(no color distractions, geometric icons only)''
 
==== Development ====
* '''[https://git-scm.com/ Git]''' - Clean setup with LFS support → [https://github.com/ejfox/dotfiles/blob/main/.gitconfig 📄 .gitconfig] ''(GitHub as CMS workflow, commit message templates)''
* '''[https://www.npmjs.com/ npm]''' - Node package manager → [https://github.com/ejfox/dotfiles/blob/main/.npmrc 📄 .npmrc] ''(canvas-sketch and data viz focused packages)''
 
==== Workflow Scripts ====
* '''Zen Mode''' - Toggle minimal UI mode across all apps → [https://github.com/ejfox/dotfiles/blob/main/zen-mode.sh 📄 zen-mode.sh] ''(coordinates Sketchybar, nvim, tmux into unified minimal state)''


=== Signature Features ===
=== Signature Features ===
* '''Geometric symbols''' throughout interface (theme-agnostic)
* '''Geometric symbols''' throughout interface (◆ ◇ ○ ▪ ─) - theme-agnostic visual language
* [[AI-powered MOTD]] with contextual startup information
* '''AI-powered MOTD''' - contextual startup information based on calendar, git state, system metrics
* '''LLM integration''' - Context-aware terminal greetings
* '''LLM integration''' - Claude available via terminal for instant context-aware assistance
* '''One-command zen''' - `zen` toggles minimal mode across all applications simultaneously
* '''Smart status''' - Window counts displayed as geometric symbols (⚌ ☰ ⚍) instead of numbers
* '''Active pane indicator''' - Subtle `─` underline that works in both light/dark themes
* '''Things CLI integration''' - Task management directly from terminal
* '''Personal API integration''' - Shell aware of personal metrics and data
 
=== Unique Approaches ===
* '''Theme-agnostic design''' - Everything works identically in light/dark mode
* '''Functional minimalism''' - Remove visual noise while preserving information density
* '''AI-first workflow''' - LLM integration as core terminal feature, not afterthought
* '''Geometric visual language''' - Consistent symbol system across all tools
* '''System-wide zen mode''' - Coordinated minimal state across applications
* '''Data-driven prompts''' - Terminal greetings based on personal API data
 
=== Quick Setup ===
<pre>
git clone https://github.com/ejfox/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
./sync-dotfiles.sh
</pre>


== [[Personal APIs]] ==
== [[Personal APIs]] ==
Line 56: Line 100:
* '''Cloud VPS''' - Always-accessible development environment
* '''Cloud VPS''' - Always-accessible development environment
* '''Claude integration''' - AI assistance via terminal
* '''Claude integration''' - AI assistance via terminal


== Observable Notebooks ==
== Observable Notebooks ==


Work-in-progress data experiments: [https://observablehq.com/@ejfox observablehq.com/@ejfox]
Work-in-progress data experiments: [https://observablehq.com/@ejfox observablehq.com/@ejfox]

Latest revision as of 15:54, 31 May 2025

Technical

CLI workflows, data processing scripts, and solutions worth remembering

I've documented the process of setting these things up a new computer in my New Computer Runbook.

Ambient Information Visualization

Sketchybar replaces my top menu bar with something I can customize and script completely.

Dotfiles

Core Philosophy

Minimalist terminal configuration focused on functional beauty and distraction-free computing. Every pixel serves a purpose. Maximum functionality, minimum distraction.

Repository: github.com/ejfox/dotfiles

Modern CLI Replacements

Old New Purpose My Config
ls lsd Better directory listings with icons (uses default)
cat bat Syntax highlighting and line numbers (uses default)
du dust Disk usage visualization (uses default)
df duf Disk free visualization (uses default)
top btop System monitoring with transparency 📁 btop/ (transparent background)

Key Configurations

Shell & Environment

  • Zsh with LLM integration → 📄 .zshrc (Claude integration, modern CLI aliases, Things CLI bindings)
  • AI-powered MOTD with contextual information → 📄 .startup.sh (LLM-generated contextual greetings based on system state)
  • Powerlevel10k minimal prompt → 📄 p10k.zsh (ultra-minimal, geometric symbols only)
  • Shell environment setup → 📄 .zprofile (API keys, development paths)

Terminal & Multiplexing

  • Tmux - Geometric status indicators (◆ ◇ ○ ▪ ─), vim navigation → 📄 .tmux.conf (geometric symbols, zen mode integration, subtle active pane indicators)
  • Ghostty - Terminal with opacity + blur effects → 📁 ghostty/ (custom transparency, theme-agnostic colors)
  • Hyper - Terminal configuration (backup) → 📄 .hyper.js (minimal plugin setup, opacity effects)

Editor & Tools

  • Neovim with LazyVim📁 nvim/ (zen mode keybindings, minimal statusline, canvas-sketch integration)
  • Yazi - Clean file manager → 📁 yazi/ (no color distractions, geometric icons only)

Development

  • Git - Clean setup with LFS support → 📄 .gitconfig (GitHub as CMS workflow, commit message templates)
  • npm - Node package manager → 📄 .npmrc (canvas-sketch and data viz focused packages)

Workflow Scripts

  • Zen Mode - Toggle minimal UI mode across all apps → 📄 zen-mode.sh (coordinates Sketchybar, nvim, tmux into unified minimal state)

Signature Features

  • Geometric symbols throughout interface (◆ ◇ ○ ▪ ─) - theme-agnostic visual language
  • AI-powered MOTD - contextual startup information based on calendar, git state, system metrics
  • LLM integration - Claude available via terminal for instant context-aware assistance
  • One-command zen - `zen` toggles minimal mode across all applications simultaneously
  • Smart status - Window counts displayed as geometric symbols (⚌ ☰ ⚍) instead of numbers
  • Active pane indicator - Subtle `─` underline that works in both light/dark themes
  • Things CLI integration - Task management directly from terminal
  • Personal API integration - Shell aware of personal metrics and data

Unique Approaches

  • Theme-agnostic design - Everything works identically in light/dark mode
  • Functional minimalism - Remove visual noise while preserving information density
  • AI-first workflow - LLM integration as core terminal feature, not afterthought
  • Geometric visual language - Consistent symbol system across all tools
  • System-wide zen mode - Coordinated minimal state across applications
  • Data-driven prompts - Terminal greetings based on personal API data

Quick Setup

git clone https://github.com/ejfox/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
./sync-dotfiles.sh

Personal APIs

  • Git Activity - Commit patterns and project status
  • Archive Search - Full-text search across this wiki

Terminal Setup

  • Ghostty - Primary terminal with blur effects
  • Tmux - Session management with geometric indicators
  • Zsh + Powerlevel10k - Minimal prompt with git integration

Editor Configuration

  • Neovim - LazyVim distribution with custom zen mode
  • LSP Setup - Language servers for JavaScript, Python, etc.
  • Custom keybindings - Optimized for speed and flow

Mobile Integration

SSH Access

  • Termius - SSH client for iOS
  • Cloud VPS - Always-accessible development environment
  • Claude integration - AI assistance via terminal

Observable Notebooks

Work-in-progress data experiments: observablehq.com/@ejfox