# barty-bart/qwen-vs-deepseek-local-coding architecture

> Architecture diagram of the GitHub repository barty-bart/qwen-vs-deepseek-local-coding, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-14). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/barty-bart/qwen-vs-deepseek-local-coding
- Repository: https://github.com/barty-bart/qwen-vs-deepseek-local-coding

## Overview

This repository is a local coding-model comparison, not an application: its main workflow is to give matching prompts to Qwen and DeepSeek through the pi coding agent, then retain their generated HTML and compare outcomes and timings. The three task branches cover a weather dashboard, a canvas tower-defense game, and a spreadsheet with a formula engine; the spreadsheet also records feedback rounds and fresh-session, low-reasoning-effort runs. The README documents the workflow and results, but no implementation excerpts are available, so the graph omits internal runtime details.

Main entry points: [`01-easy-weather-dashboard`](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/01-easy-weather-dashboard) (Weather outputs), [`02-medium-tower-defense`](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/02-medium-tower-defense) (Tower-defense outputs), [`03-hard-spreadsheet`](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/03-hard-spreadsheet) (Spreadsheet outputs), [`README.md`](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/README.md) (Timing and results)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_workflow["Test workflow"]
  node_local_setup["Local setup"]
  node_pi["pi agent"]
  node_qwen["Qwen model"]
  node_deepseek["DeepSeek model"]
end

subgraph group_tasks["Task prompts"]
  node_weather_prompt["Weather prompt<br/>[prompt.md]"]
  node_defense_prompt["Tower-defense prompt<br/>[prompt.md]"]
  node_spreadsheet_prompt["Spreadsheet prompt<br/>[prompt.md]"]
end

subgraph group_artifacts["Outputs and results"]
  node_weather_outputs["Weather outputs"]
  node_defense_outputs["Tower-defense outputs"]
  node_spreadsheet_outputs["Spreadsheet outputs"]
  node_comparison["Timing and results<br/>[README.md]"]
end

node_reader(("Repository reader"))

node_local_setup -->|"serves through"| node_pi
node_weather_prompt -->|"given to"| node_pi
node_defense_prompt -->|"given to"| node_pi
node_spreadsheet_prompt -->|"given to"| node_pi
node_pi -->|"drives"| node_qwen
node_pi -->|"drives"| node_deepseek
node_qwen -->|"writes files"| node_weather_outputs
node_deepseek -->|"writes files"| node_weather_outputs
node_qwen -->|"writes files"| node_defense_outputs
node_deepseek -->|"writes files"| node_defense_outputs
node_qwen -->|"writes files"| node_spreadsheet_outputs
node_deepseek -->|"writes files"| node_spreadsheet_outputs
node_weather_outputs -->|"summarized in"| node_comparison
node_defense_outputs -->|"summarized in"| node_comparison
node_spreadsheet_outputs -->|"summarized in"| node_comparison
node_reader -->|"opens in browser"| node_weather_outputs
node_reader -->|"opens in browser"| node_defense_outputs
node_reader -->|"opens in browser"| node_spreadsheet_outputs
node_reader -->|"reads"| node_comparison

click node_weather_prompt "https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/01-easy-weather-dashboard/prompt.md"
click node_defense_prompt "https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/02-medium-tower-defense/prompt.md"
click node_spreadsheet_prompt "https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/03-hard-spreadsheet/prompt.md"
click node_weather_outputs "https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/01-easy-weather-dashboard"
click node_defense_outputs "https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/02-medium-tower-defense"
click node_spreadsheet_outputs "https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/03-hard-spreadsheet"
click node_comparison "https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/README.md"

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_local_setup,node_pi,node_qwen,node_deepseek toneBlue
class node_weather_prompt,node_defense_prompt,node_spreadsheet_prompt toneAmber
class node_weather_outputs,node_defense_outputs,node_spreadsheet_outputs,node_comparison toneMint
class node_reader toneIndigo
```

## Components

### Test workflow

- **Local setup**
- **pi agent**
- **Qwen model**
- **DeepSeek model**

### Task prompts

- [Weather prompt](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/01-easy-weather-dashboard/prompt.md): `01-easy-weather-dashboard/prompt.md`
- [Tower-defense prompt](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/02-medium-tower-defense/prompt.md): `02-medium-tower-defense/prompt.md`
- [Spreadsheet prompt](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/03-hard-spreadsheet/prompt.md): `03-hard-spreadsheet/prompt.md`

### Outputs and results

- [Weather outputs](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/01-easy-weather-dashboard): `01-easy-weather-dashboard`
- [Tower-defense outputs](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/02-medium-tower-defense): `02-medium-tower-defense`
- [Spreadsheet outputs](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/tree/main/03-hard-spreadsheet): `03-hard-spreadsheet`
- [Timing and results](https://github.com/barty-bart/qwen-vs-deepseek-local-coding/blob/main/README.md): `README.md`

### Other components

- **Repository reader**

## Connections

- Local setup → pi agent: serves through (evidence: `README.md`)
- Weather prompt → pi agent: given to (evidence: `README.md`)
- Tower-defense prompt → pi agent: given to (evidence: `README.md`)
- Spreadsheet prompt → pi agent: given to (evidence: `README.md`)
- pi agent → Qwen model: drives (evidence: `README.md`)
- pi agent → DeepSeek model: drives (evidence: `README.md`)
- Qwen model → Weather outputs: writes files (evidence: `README.md`)
- DeepSeek model → Weather outputs: writes files (evidence: `README.md`)
- Qwen model → Tower-defense outputs: writes files (evidence: `README.md`)
- DeepSeek model → Tower-defense outputs: writes files (evidence: `README.md`)
- Qwen model → Spreadsheet outputs: writes files (evidence: `README.md`)
- DeepSeek model → Spreadsheet outputs: writes files (evidence: `README.md`)
- Weather outputs → Timing and results: summarized in (evidence: `README.md`)
- Tower-defense outputs → Timing and results: summarized in (evidence: `README.md`)
- Spreadsheet outputs → Timing and results: summarized in (evidence: `README.md`)
- Repository reader → Weather outputs: opens in browser (evidence: `README.md`)
- Repository reader → Tower-defense outputs: opens in browser (evidence: `README.md`)
- Repository reader → Spreadsheet outputs: opens in browser (evidence: `README.md`)
- Repository reader → Timing and results: reads (evidence: `README.md`)
