design-engineering
Design engineering principles and patterns for building polished, accessible web interfaces. Use this skill when building UI components, reviewing frontend code, implementing forms, handling touch interactions, optimizing performance, or creating marketing pages. Triggers on: design engineering, UI polish, input fields, form validation, button states, touch devices, mobile UX, accessibility, a11y, keyboard navigation, aria labels, font rendering, typography, layout shift, z-index, animations, transitions, easing, hover effects, tap targets, iOS Safari, prefers-reduced-motion, marketing pages, landing pages, dark mode, theme switching, scrollbars, gradients, shadows, virtualization, preloading.
SKILL.md
| Name | design-engineering |
| Description | Design engineering principles and patterns for building polished, accessible web interfaces. Use this skill when building UI components, reviewing frontend code, implementing forms, handling touch interactions, optimizing performance, or creating marketing pages. Triggers on: design engineering, UI polish, input fields, form validation, button states, touch devices, mobile UX, accessibility, a11y, keyboard navigation, aria labels, font rendering, typography, layout shift, z-index, animations, transitions, easing, hover effects, tap targets, iOS Safari, prefers-reduced-motion, marketing pages, landing pages, dark mode, theme switching, scrollbars, gradients, shadows, virtualization, preloading. |
Dotfiles
Personal dotfiles and AI-agent workspace configuration for macOS/Linux/Windows.
Repository Layout
dotfiles/
├── AGENTS.md
├── prompts/
├── skills/
├── skills_archive/
├── agent-scripts/
├── tools/ # Bun-based TypeScript helpers
├── codex_configs/
├── serena_config/
├── agents/ # local agent definitions linked to ~/.claude/agents
├── agents-reference/ # git submodule reference bundle
├── shell/
│ ├── zsh/
│ └── powershell/
├── scripts/
│ ├── link-dotfiles/
│ │ ├── link-dotfiles.ts # interactive orchestrator
│ │ ├── setup-dotfiles.ts
│ │ ├── setup-ai-agents.ts
│ │ └── package.json
│ ├── ai-agent-links.json
│ └── ralph-loop/
├── docs/
├── .github/
└── secrets/ # private submodule
Quick Start
git clone --recurse-submodules https://github.com/BumpyClock/dotfiles.git
cd dotfiles
Unix/Linux/macOS
./shell/zsh/install-deps.sh
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD" --setup both
On Unix/macOS, the linker manages ~/.zshrc. It backs up an existing unmanaged file once, writes a small managed entrypoint that sources shell/zsh/shared.zsh, and creates ~/.zshrc.local for machine-specific customizations.
Windows (PowerShell)
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD" --setup both
On Windows, directory links are created as junctions (no elevation needed).
If file symlinks are blocked, the linker falls back to hardlinks; only if both are blocked should you run elevated or enable Developer Mode.
Linker CLI
Primary entrypoint is scripts/link-dotfiles/link-dotfiles.ts.
# Interactive chooser: dotfiles, ai-agents, or both
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD"
# Non-interactive
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD" --setup dotfiles
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD" --setup ai-agents
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD" --setup both
# Status
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD" --show
# Link repo agents into a project's .claude/agents
bun scripts/link-dotfiles/link-dotfiles.ts --dotfiles-dir "$PWD" --setup dotfiles --project-agents /path/to/project
AI-agent destination mappings are defined in scripts/ai-agent-links.json.
During setup, installable CLI sources in tools/ are also published into ~/.local/bin.
TypeScript/Bun tools are compiled into native binaries on the current OS, while other shebang-based tool scripts are linked directly.
If secrets/api-keys/env.json exists, the linker also generates ~/.config/dotfiles/env.sh and ~/.config/dotfiles/env.ps1 so shells can load managed API keys automatically.
On Unix/macOS, the linker also manages ~/.zshrc. Existing unmanaged content is moved to a timestamped backup such as ~/.zshrc.backup.20260518_143000; personal shell snippets belong in ~/.zshrc.local, which the managed entrypoint sources after the shared config.
Submodules
git submodule update --init --recursive
References and Attribution
skills/ux-designermicro-polish guidance adapts principles from Jakub Krehel's "Details that make interfaces feel better".- Related upstream skill:
jakubkrehel/make-interfaces-feel-better. skills/ios-macos-developmentincludes adapted material from OpenAI's MIT-licensedBuild iOS Appsplugin (build-ios-apps, v0.1.0), covering App Intents, SwiftUI UI patterns, SwiftUI performance audits, SwiftUI view refactors, Liquid Glass, and XcodeBuildMCP simulator debugging.- Reference source for the iOS/macOS skill update: OpenAI curated
build-ios-appsplugin metadata points toopenai/plugins. - Some SwiftUI subguides retain or adapt prior material from Dimillian's
Dimillian/Skills; navigation examples also referenceDimillian/AppRouter. skills/ios-macos-development/swiftui-view-refactor/references/mv-patterns.mdis inspired by Thomas Ricouard's "SwiftUI in 2025: Forget MVVM".skills/rust-skillsis tracked from Leonardo Montini's MIT-licensedleonardomso/rust-skillsproject; its metadata cites the Rust API Guidelines, Rust Performance Book, and patterns from ripgrep, Tokio, Serde, and Polars.
Notes
~/.zshrcis managed by the linker on Unix/macOS. Use~/.zshrc.localfor machine-specific shell snippets; existing unmanaged~/.zshrccontent is preserved in a timestamped backup on first migration.scripts/sync-github-folder.{sh,ps1}remain available for project-level.githubsyncing.tools/trash.tsmoves files and directories to the system trash on macOS, Windows, and Linux; Linux support is best-effort through the underlying XDG-compatible backend.