# attwowaddon/allthethings architecture

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

- Interactive diagram: https://gitdiagram.com/attwowaddon/allthethings
- Repository: https://github.com/attwowaddon/allthethings

## Overview

AllTheThings is a World of Warcraft addon for browsing and tracking collection completion across game content. The main user workflow is to open its collection interface, inspect missing collectibles and related content, and track progress; settings filters tailor what is shown. The README also documents a movable/resizable main window, auto minilist, datatext, enhanced tooltips, and new-item fanfare. The tree supports broad source and database locations, but no source excerpts were supplied, so internal calls and more specific wiring are not asserted.

Main entry points: [`src/Modules`](https://github.com/attwowaddon/allthethings/tree/master/src/Modules) (Completion tracking), [`src/UI`](https://github.com/attwowaddon/allthethings/tree/master/src/UI) (Collection window), [`db`](https://github.com/attwowaddon/allthethings/tree/master/db) (Achievements), [`src/Settings`](https://github.com/attwowaddon/allthethings/tree/master/src/Settings) (Display filters)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_interface["Addon interface"]
  node_mainui["Collection window"]
  node_minilist["Auto minilist"]
  node_datatext["Datatext"]
  node_tooltips["Extra tooltips"]
  node_fanfare["New-item fanfare"]
end

subgraph group_tracking["Collection tracking"]
  node_tracking["Completion tracking"]
end

subgraph group_catalog["Content catalog"]
  node_achievements["Achievements"]
  node_quests["Quests"]
  node_appearances["Appearances"]
  node_collections["Other collections"]
  node_worldcontent["World content"]
end

subgraph group_customization["Customization"]
  node_filters["Display filters"]
end

node_player(("Player"))

node_player -->|"opens"| node_mainui
node_mainui -->|"shows progress"| node_tracking
node_mainui -->|"uses filters"| node_filters
node_tracking -->|"tracks"| node_achievements
node_tracking -->|"tracks"| node_quests
node_tracking -->|"tracks"| node_appearances
node_tracking -->|"tracks"| node_collections
node_mainui -->|"presents"| node_worldcontent
node_player -->|"views"| node_minilist
node_player -->|"views"| node_datatext
node_player -->|"views"| node_tooltips

click node_mainui "https://github.com/attwowaddon/allthethings/tree/master/src/UI"
click node_minilist "https://github.com/attwowaddon/allthethings/tree/master/src/UI"
click node_datatext "https://github.com/attwowaddon/allthethings/tree/master/src/UI"
click node_tooltips "https://github.com/attwowaddon/allthethings/tree/master/src/UI"
click node_tracking "https://github.com/attwowaddon/allthethings/tree/master/src/Modules"
click node_achievements "https://github.com/attwowaddon/allthethings/tree/master/db"
click node_quests "https://github.com/attwowaddon/allthethings/tree/master/db"
click node_appearances "https://github.com/attwowaddon/allthethings/tree/master/db"
click node_collections "https://github.com/attwowaddon/allthethings/tree/master/db"
click node_worldcontent "https://github.com/attwowaddon/allthethings/tree/master/db"
click node_filters "https://github.com/attwowaddon/allthethings/tree/master/src/Settings"
click node_fanfare "https://github.com/attwowaddon/allthethings/tree/master/src"

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_mainui,node_minilist,node_datatext,node_tooltips,node_fanfare toneBlue
class node_tracking toneAmber
class node_achievements,node_quests,node_appearances,node_collections,node_worldcontent toneMint
class node_filters toneRose
class node_player toneIndigo
```

## Components

### Addon interface

- [Collection window](https://github.com/attwowaddon/allthethings/tree/master/src/UI): `src/UI`
- [Auto minilist](https://github.com/attwowaddon/allthethings/tree/master/src/UI): `src/UI`
- [Datatext](https://github.com/attwowaddon/allthethings/tree/master/src/UI): `src/UI`
- [Extra tooltips](https://github.com/attwowaddon/allthethings/tree/master/src/UI): `src/UI`
- [New-item fanfare](https://github.com/attwowaddon/allthethings/tree/master/src): `src`

### Collection tracking

- [Completion tracking](https://github.com/attwowaddon/allthethings/tree/master/src/Modules): `src/Modules`

### Content catalog

- [Achievements](https://github.com/attwowaddon/allthethings/tree/master/db): `db`
- [Quests](https://github.com/attwowaddon/allthethings/tree/master/db): `db`
- [Appearances](https://github.com/attwowaddon/allthethings/tree/master/db): `db`
- [Other collections](https://github.com/attwowaddon/allthethings/tree/master/db): `db`
- [World content](https://github.com/attwowaddon/allthethings/tree/master/db): `db`

### Customization

- [Display filters](https://github.com/attwowaddon/allthethings/tree/master/src/Settings): `src/Settings`

### Other components

- **Player**

## Connections

- Player → Collection window: opens
- Collection window → Completion tracking: shows progress
- Collection window → Display filters: uses filters
- Completion tracking → Achievements: tracks
- Completion tracking → Quests: tracks
- Completion tracking → Appearances: tracks
- Completion tracking → Other collections: tracks
- Collection window → World content: presents
- Player → Auto minilist: views
- Player → Datatext: views
- Player → Extra tooltips: views
