# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## Repository Overview Personal dotfiles repository for Ismo Vuorinen. Uses **Dotbot** (not GNU Stow) to symlink configuration files into place. The directory layout follows the XDG Base Directory Specification. ## Directory Layout and Linking | Source | Destination | Notes | |---------------------|-------------------|-------------------------------------------| | `base/*` | `~/.*` | Home-level dotfiles (`.` added by Dotbot) | | `config/*` | `~/.config/` | Application configurations | | `local/bin/*` | `~/.local/bin/` | Helper scripts and utilities | | `local/share/*` | `~/.local/share/` | Data files | | `local/man/**` | `~/.local/man/` | Manual pages | | `ssh/*` | `~/.ssh/` | SSH configuration (mode 0600) | | `hosts//` | Overlays | Host-specific overrides | Installation: `./install` runs Dotbot with `install.conf.yaml`, then applies `hosts//install.conf.yaml` if it exists. ## Commands ```bash # Install dependencies (required before lint/test) yarn install # Linting yarn lint # Run biome + prettier + editorconfig-checker yarn lint:biome # Biome only yarn lint:ec # EditorConfig checker only # Formatting yarn fix:biome # Autofix with biome (JS/TS/JSON/MD) yarn fix:prettier # Autofix with prettier (YAML) yarn format # Format with biome yarn format:yaml # Format YAML files with prettier # Testing (Bats - Bash Automated Testing System) yarn test # Run all tests in tests/ # Run a single test file: ./node_modules/.bin/bats tests/dfm.bats # Shell linting shellcheck