# ywsrock/dev-environment-editor architecture

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

- Interactive diagram: https://gitdiagram.com/ywsrock/dev-environment-editor
- Repository: https://github.com/ywsrock/dev-environment-editor

## Overview

This repository is a personal development-environment configuration backup, not the implementations of the referenced editors or terminal tools. Its documented user workflow is configuring a shell to launch nnn, select configured plugins, and optionally use quitcd to return to the shell in a directory. The tree also contains Neovim, Coc, and shell configurations. No source excerpts were provided, so edges are limited to relationships stated in the README; plugin behavior beyond its documented configuration is not inferred.

Main entry points: [`nnn/.config/nnn/plugins`](https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn/plugins) (Configured plugins), [`nnn/.config/nnn`](https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn) (nnn file manager), [`zsh/zshrc_local`](https://github.com/ywsrock/dev-environment-editor/blob/main/zsh/zshrc_local) (Zsh configuration), [`nvim/.config/nvim/init.vim`](https://github.com/ywsrock/dev-environment-editor/blob/main/nvim/.config/nvim/init.vim) (Neovim config)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_file_manager["nnn file management"]
  node_nnn["nnn file manager<br/>[nnn]"]
  node_plugin_selection["Configured plugins<br/>[plugins]"]
  node_finder["finder plugin<br/>[finder]"]
  node_fzopen["fzopen plugin<br/>[fzopen]"]
  node_mocq["mocq plugin<br/>[mocq]"]
  node_diffs["diffs plugin<br/>[diffs]"]
  node_nmount["nmount plugin<br/>[nmount]"]
  node_imgview["imgview plugin<br/>[imgview]"]
  node_preview_tui["preview-tui plugin<br/>[preview-tui]"]
  node_quitcd["quitcd scripts<br/>[quitcd]"]
end

subgraph group_editor["Editor configurations"]
  node_nvim["Neovim config<br/>[init.vim]"]
  node_go_format["Go formatting config<br/>[format.vim]"]
  node_coc_nvim["Coc Neovim config<br/>[init.vim]"]
  node_coc_settings["Coc settings<br/>[coc-settings.json]"]
  node_coc_extensions["Coc extensions<br/>[package.json]"]
  node_copilot["Copilot plugin<br/>[copilot.vim]"]
end

subgraph group_shell["Terminal and shell"]
  node_zsh_config["Zsh configuration"]
end

subgraph group_integrations["External tools"]
  node_fzf["fzf"]
  node_nnn_service["nnn program"]
end

node_user(("User"))

node_user -->|"launches"| node_nnn
node_nnn -->|"uses mapping"| node_plugin_selection
node_plugin_selection -->|"maps f"| node_finder
node_plugin_selection -->|"maps o"| node_fzopen
node_plugin_selection -->|"maps p"| node_mocq
node_plugin_selection -->|"maps p"| node_diffs
node_plugin_selection -->|"maps t"| node_nmount
node_plugin_selection -->|"maps v"| node_imgview
node_plugin_selection -->|"maps p"| node_preview_tui
node_nnn -->|"uses shell hook"| node_quitcd
node_zsh_config -->|"defines alias"| node_nnn
node_zsh_config -->|"sources hook"| node_quitcd
node_zsh_config -->|"configures"| node_fzf
node_nvim -.->|"loads config"| node_go_format
node_coc_nvim -.->|"uses settings"| node_coc_settings
node_coc_nvim -.->|"uses extensions"| node_coc_extensions
node_nvim -.->|"includes plugin"| node_copilot

click node_nnn "https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn"
click node_plugin_selection "https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn/plugins"
click node_finder "https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/finder"
click node_fzopen "https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/fzopen"
click node_mocq "https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/mocq"
click node_diffs "https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/diffs"
click node_nmount "https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/nmount"
click node_imgview "https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/imgview"
click node_preview_tui "https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/preview-tui"
click node_quitcd "https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn/misc/quitcd"
click node_nvim "https://github.com/ywsrock/dev-environment-editor/blob/main/nvim/.config/nvim/init.vim"
click node_go_format "https://github.com/ywsrock/dev-environment-editor/blob/main/nvim/.config/nvim/plugins/go/format.vim"
click node_coc_nvim "https://github.com/ywsrock/dev-environment-editor/blob/main/my-config/.config/nvim_coc/init.vim"
click node_coc_settings "https://github.com/ywsrock/dev-environment-editor/blob/main/my-config/.config/nvim_coc/coc-settings.json"
click node_coc_extensions "https://github.com/ywsrock/dev-environment-editor/blob/main/my-config/.config/coc/extensions/package.json"
click node_copilot "https://github.com/ywsrock/dev-environment-editor/blob/main/nvim/.config/nvim/pack/github/start/copilot.vim"
click node_zsh_config "https://github.com/ywsrock/dev-environment-editor/blob/main/zsh/zshrc_local"

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_nnn,node_plugin_selection,node_finder,node_fzopen,node_mocq,node_diffs,node_nmount,node_imgview,node_preview_tui,node_quitcd,node_user toneBlue
class node_nvim,node_go_format,node_coc_nvim,node_coc_settings,node_coc_extensions,node_copilot toneAmber
class node_zsh_config toneMint
class node_fzf,node_nnn_service toneRose
```

## Components

### nnn file management

- [nnn file manager](https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn): `nnn/.config/nnn`
- [Configured plugins](https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn/plugins): `nnn/.config/nnn/plugins`
- [finder plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/finder): `nnn/.config/nnn/plugins/finder`
- [fzopen plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/fzopen): `nnn/.config/nnn/plugins/fzopen`
- [mocq plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/mocq): `nnn/.config/nnn/plugins/mocq`
- [diffs plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/diffs): `nnn/.config/nnn/plugins/diffs`
- [nmount plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/nmount): `nnn/.config/nnn/plugins/nmount`
- [imgview plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/imgview): `nnn/.config/nnn/plugins/imgview`
- [preview-tui plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nnn/.config/nnn/plugins/preview-tui): `nnn/.config/nnn/plugins/preview-tui`
- [quitcd scripts](https://github.com/ywsrock/dev-environment-editor/tree/main/nnn/.config/nnn/misc/quitcd): `nnn/.config/nnn/misc/quitcd`

### Editor configurations

- [Neovim config](https://github.com/ywsrock/dev-environment-editor/blob/main/nvim/.config/nvim/init.vim): `nvim/.config/nvim/init.vim`
- [Go formatting config](https://github.com/ywsrock/dev-environment-editor/blob/main/nvim/.config/nvim/plugins/go/format.vim): `nvim/.config/nvim/plugins/go/format.vim`
- [Coc Neovim config](https://github.com/ywsrock/dev-environment-editor/blob/main/my-config/.config/nvim_coc/init.vim): `my-config/.config/nvim_coc/init.vim`
- [Coc settings](https://github.com/ywsrock/dev-environment-editor/blob/main/my-config/.config/nvim_coc/coc-settings.json): `my-config/.config/nvim_coc/coc-settings.json`
- [Coc extensions](https://github.com/ywsrock/dev-environment-editor/blob/main/my-config/.config/coc/extensions/package.json): `my-config/.config/coc/extensions/package.json`
- [Copilot plugin](https://github.com/ywsrock/dev-environment-editor/blob/main/nvim/.config/nvim/pack/github/start/copilot.vim): `nvim/.config/nvim/pack/github/start/copilot.vim`

### Terminal and shell

- [Zsh configuration](https://github.com/ywsrock/dev-environment-editor/blob/main/zsh/zshrc_local): `zsh/zshrc_local`

### External tools

- **fzf**
- **nnn program**

### Other components

- **User**

## Connections

- User → nnn file manager: launches (evidence: `README.md`)
- nnn file manager → Configured plugins: uses mapping (evidence: `README.md`)
- Configured plugins → finder plugin: maps f (evidence: `README.md`)
- Configured plugins → fzopen plugin: maps o (evidence: `README.md`)
- Configured plugins → mocq plugin: maps p (evidence: `README.md`)
- Configured plugins → diffs plugin: maps p (evidence: `README.md`)
- Configured plugins → nmount plugin: maps t (evidence: `README.md`)
- Configured plugins → imgview plugin: maps v (evidence: `README.md`)
- Configured plugins → preview-tui plugin: maps p (evidence: `README.md`)
- nnn file manager → quitcd scripts: uses shell hook (evidence: `README.md`)
- Zsh configuration → nnn file manager: defines alias (evidence: `README.md`)
- Zsh configuration → quitcd scripts: sources hook (evidence: `README.md`)
- Zsh configuration → fzf: configures (evidence: `README.md`)
- Neovim config → Go formatting config: loads config
- Coc Neovim config → Coc settings: uses settings
- Coc Neovim config → Coc extensions: uses extensions
- Neovim config → Copilot plugin: includes plugin
