# ovidiocalvet/dotfiles architecture

> Architecture diagram of the GitHub repository ovidiocalvet/dotfiles, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/ovidiocalvet/dotfiles
- Repository: https://github.com/ovidiocalvet/dotfiles

## Overview

This repository is a personal configuration collection managed with GNU Stow. The documented workflow is for the user to run Stow from the cloned repository, targeting selected packages for the home directory. The packages cover shell and prompt, terminal tools, Hyprland desktop settings, and Waybar. The tree also includes a Git configuration example, but the README’s install command does not target it. No source excerpts were available, so relationships beyond the documented install workflow are omitted.

Main entry points: [`zsh`](https://github.com/ovidiocalvet/dotfiles/tree/main/zsh) (Zsh Config), [`starship`](https://github.com/ovidiocalvet/dotfiles/tree/main/starship) (Starship Config), [`ghostty`](https://github.com/ovidiocalvet/dotfiles/tree/main/ghostty) (Ghostty Config), [`tmux`](https://github.com/ovidiocalvet/dotfiles/tree/main/tmux) (tmux Config)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_shell["Shell &amp; Prompt"]
  node_zsh["Zsh Config"]
  node_starship["Starship Config"]
end

subgraph group_terminals["Terminal Tools"]
  node_ghostty["Ghostty Config"]
  node_tmux["tmux Config"]
end

subgraph group_desktop["Desktop"]
  node_hyprland["Hyprland Config<br/>[hyprland.lua]"]
  node_hypridle["Idle Config<br/>[hypridle.conf]"]
  node_hyprlock["Lock Config<br/>[hyprlock.conf]"]
  node_hyprpaper["Wallpaper Config<br/>[hyprpaper.conf]"]
end

subgraph group_status["Status Bar"]
  node_waybar["Waybar Config"]
  node_bluetooth["Bluetooth Script<br/>[bluetooth.sh]"]
end

subgraph group_git["Git"]
  node_gitconfig["Git Example<br/>[.gitconfig.example]"]
end

node_user(("User"))
node_stow["GNU Stow"]
node_home["Home Directory"]

node_user -->|"runs install"| node_stow
node_zsh -->|"targeted by"| node_stow
node_starship -->|"targeted by"| node_stow
node_ghostty -->|"targeted by"| node_stow
node_tmux -->|"targeted by"| node_stow
node_hyprland -->|"targeted by"| node_stow
node_hypridle -->|"targeted by"| node_stow
node_hyprlock -->|"targeted by"| node_stow
node_hyprpaper -->|"targeted by"| node_stow
node_waybar -->|"targeted by"| node_stow
node_stow -->|"creates links"| node_home

click node_zsh "https://github.com/ovidiocalvet/dotfiles/tree/main/zsh"
click node_starship "https://github.com/ovidiocalvet/dotfiles/tree/main/starship"
click node_ghostty "https://github.com/ovidiocalvet/dotfiles/tree/main/ghostty"
click node_tmux "https://github.com/ovidiocalvet/dotfiles/tree/main/tmux"
click node_hyprland "https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hyprland.lua"
click node_hypridle "https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hypridle.conf"
click node_hyprlock "https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hyprlock.conf"
click node_hyprpaper "https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hyprpaper.conf"
click node_waybar "https://github.com/ovidiocalvet/dotfiles/tree/main/waybar"
click node_bluetooth "https://github.com/ovidiocalvet/dotfiles/blob/main/waybar/.config/waybar/scripts/bluetooth.sh"
click node_gitconfig "https://github.com/ovidiocalvet/dotfiles/blob/main/git/.gitconfig.example"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_zsh,node_starship,node_user toneBlue
class node_ghostty,node_tmux toneAmber
class node_hyprland,node_hypridle,node_hyprlock,node_hyprpaper toneMint
class node_waybar,node_bluetooth toneRose
class node_gitconfig,node_stow,node_home toneIndigo
```

## Components

### Shell & Prompt

- [Zsh Config](https://github.com/ovidiocalvet/dotfiles/tree/main/zsh): `zsh`
- [Starship Config](https://github.com/ovidiocalvet/dotfiles/tree/main/starship): `starship`

### Terminal Tools

- [Ghostty Config](https://github.com/ovidiocalvet/dotfiles/tree/main/ghostty): `ghostty`
- [tmux Config](https://github.com/ovidiocalvet/dotfiles/tree/main/tmux): `tmux`

### Desktop

- [Hyprland Config](https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hyprland.lua): `hypr/.config/hypr/hyprland.lua`
- [Idle Config](https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hypridle.conf): `hypr/.config/hypr/hypridle.conf`
- [Lock Config](https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hyprlock.conf): `hypr/.config/hypr/hyprlock.conf`
- [Wallpaper Config](https://github.com/ovidiocalvet/dotfiles/blob/main/hypr/.config/hypr/hyprpaper.conf): `hypr/.config/hypr/hyprpaper.conf`

### Status Bar

- [Waybar Config](https://github.com/ovidiocalvet/dotfiles/tree/main/waybar): `waybar`
- [Bluetooth Script](https://github.com/ovidiocalvet/dotfiles/blob/main/waybar/.config/waybar/scripts/bluetooth.sh): `waybar/.config/waybar/scripts/bluetooth.sh`

### Git

- [Git Example](https://github.com/ovidiocalvet/dotfiles/blob/main/git/.gitconfig.example): `git/.gitconfig.example`

### Other components

- **User**
- **GNU Stow**
- **Home Directory**

## Connections

- User → GNU Stow: runs install
- Zsh Config → GNU Stow: targeted by
- Starship Config → GNU Stow: targeted by
- Ghostty Config → GNU Stow: targeted by
- tmux Config → GNU Stow: targeted by
- Hyprland Config → GNU Stow: targeted by
- Idle Config → GNU Stow: targeted by
- Lock Config → GNU Stow: targeted by
- Wallpaper Config → GNU Stow: targeted by
- Waybar Config → GNU Stow: targeted by
- GNU Stow → Home Directory: creates links
