Metadata-Version: 2.4
Name: devquest
Version: 0.9.1
Summary: Gamify your developer journey.
Author-email: Pedro Moraes <pedromoraessan@users.noreply.github.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/PedroMoraesSan/devQuest
Project-URL: Repository, https://github.com/PedroMoraesSan/devQuest
Project-URL: Issues, https://github.com/PedroMoraesSan/devQuest/issues
Keywords: cli,git,rpg,gamification,developer-tools
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Version Control :: Git
Classifier: Topic :: Games/Entertainment
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: typer
Requires-Dist: rich
Requires-Dist: gitpython
Requires-Dist: sqlalchemy
Requires-Dist: textual
Dynamic: license-file

<p align="center">
  <img src="assets/banner.png" alt="DevQuest — Gamify your developer journey" width="100%"/>
</p>

<p align="center">
  <strong>DevQuest is not a Git wrapper.</strong><br/>
  It is a terminal RPG where programming <em>is</em> the gameplay.
</p>

<p align="center">
  <a href="https://pypi.org/project/devquest/"><img src="https://img.shields.io/pypi/v/devquest?color=22d3ee&label=pypi&logo=pypi&logoColor=white" alt="PyPI"/></a>
  <a href="https://pypi.org/project/devquest/"><img src="https://img.shields.io/pypi/pyversions/devquest?color=34d399" alt="Python"/></a>
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-a78bfa" alt="License"/></a>
  <img src="https://img.shields.io/badge/cli-hero-f472b6" alt="CLI"/>
  <img src="https://img.shields.io/badge/status-playable-fbbf24" alt="Status"/>
</p>

---

## The world

```text
  Git is a sword.
  Deploy is a battle.
  Bug is an enemy.
  Merge Conflict is a boss.
```

Every real developer action becomes a quest. XP and Gold only drop when the work actually lands.

Commit and push open with short **ASCII sprite intros** — enemy summon on commit, fortress breach on push. Toggle with `hero config --animations off`.

---

## Install

Global (recommended):

```bash
pip install --user devquest
# or, isolated: pipx install devquest
```

Then awaken your hero:

```bash
hero init
```

Pause / resume / update anytime:

```bash
hero disable   # skip gameplay until you want it back
hero enable
hero update    # pip install -U devquest
```

`hero --help` also lists these.
---

## Gameplay loop

```text
┌─────────────────────────────────────────────────────────────┐
│  hero commit                                                │
│                                                             │
│  ╭─────────────────────╮                                    │
│  │ Prepare for battle! │                                    │
│  ╰─────────────────────╯                                    │
│                                                             │
│  Merge Conflict                                             │
│  HP [████████████░░░░░░░░] 48/80                            │
│                                                             │
│  Attack 1 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100%     │
│  CRITICAL HIT! 42 damage!                                   │
│                                                             │
│  ╭──────────────────────────────╮                           │
│  │ Victory!                     │                           │
│  │ Enemy Defeated: Merge Conflict│                          │
│  │ +40 XP   +20 Gold            │                           │
│  ╰──────────────────────────────╯                           │
│                                                             │
│  ╭──────────────────────────────╮                           │
│  │ LEVEL UP!                    │                           │
│  │ Level 5 · Bug Hunter         │                           │
│  ╰──────────────────────────────╯                           │
└─────────────────────────────────────────────────────────────┘
```

```text
hero push   →  siege the fortress (origin/<branch>)
hero status →  XP bar, title, equipped gear, quests
hero quests →  daily missions that reset with the sun
```

---

## Commands

| Command | What happens |
|---|---|
| `hero init` | Create your hero profile |
| `hero status` | Sheet: level, XP bar, gold, gear |
| `hero commit` | Battle an enemy, then commit |
| `hero push` | Assault the remote fortress |
| `hero achievements` | Trophy hall |
| `hero quests` | Daily quest board |
| `hero inventory` | Cosmetic loot (`--equip <key>`) |
| `hero shop` | Spend gold (`--buy <key>`) |
| `hero dashboard` | Full Textual menu (arrows + `q`) |
| `hero config` | Settings (`--theme`, `--sounds on/off`) |
| `hero theme` | List or switch color themes |
| `hero remotes` | Scout fortresses (`git remote -v`) |
| `hero branches` | Map all paths (`git branch -a`) |
| `hero branch <name>` | Forge a new branch (+XP) |
| `hero checkout <name>` | Travel to another branch |
| `hero disable` | Pause DevQuest (gameplay no-ops) |
| `hero enable` | Resume after disable |
| `hero update` | Upgrade from PyPI |

---

## Branch control

```bash
hero remotes
hero branches
hero branch feature/loot
hero checkout main
```

Creating a branch awards XP/Gold and can complete the daily Pathfinder quest.

---

## Themes & Sounds

Config lives at `~/.devquest/config.toml`:

```toml
theme = "cyberpunk"
animations = true
sounds = false
enabled = true
```

Themes: `cyberpunk`, `matrix`, `retro`, `nord`, `dracula`, `catppuccin`, `windows95`

```bash
hero theme matrix
hero config --sounds on
```

Sounds are optional and off by default (level up, crit, achievement, quest, victory).

---

## Progression

```text
Titles
  Code Apprentice  →  Bug Hunter  →  Senior Warrior  →  Legendary Engineer

Combat
  Hit · Miss · Critical · Boss encounters

Economy
  Gold from real commits/pushes → cosmetic shop only
  (no pay-to-win, ever)
```

---

## Quick start

```bash
pip install --user devquest
cd your-repo
hero init
hero status
hero commit
hero push
hero dashboard
```

Local development:

```bash
pip install -e .
```

---

## Philosophy

> The terminal should feel like a game world.  
> Programming should feel like an adventure.

Read more in [`vision.md`](vision.md).

---

## Docs

| File | Purpose |
|---|---|
| [`vision.md`](vision.md) | Product vision |
| [`ROADMAP.md`](ROADMAP.md) | Release plan |
| [`CONTRIBUTING.md`](CONTRIBUTING.md) | How to contribute |
| [`PUBLISH.md`](PUBLISH.md) | PyPI release guide |

---

<p align="center">
  <sub>⚔ May your builds be green and your merges conflict-free.</sub>
</p>
