Metadata-Version: 2.4
Name: welchost
Version: 0.1.0
Summary: Create and manage a Ghostty terminal welcome screen
Project-URL: Homepage, https://github.com/scoobynko/welchost
Project-URL: Repository, https://github.com/scoobynko/welchost
Project-URL: Issues, https://github.com/scoobynko/welchost/issues
Author: Welchost Contributors
License: MIT
License-File: LICENSE
Keywords: ascii-art,figlet,ghostty,terminal,tui,welcome
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Terminals
Requires-Python: >=3.11
Requires-Dist: jinja2>=3.1
Requires-Dist: pyfiglet>=1.0
Requires-Dist: rich>=13
Requires-Dist: textual>=0.60
Requires-Dist: tomli-w>=1.0
Requires-Dist: typer>=0.12
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == 'dev'
Requires-Dist: commitizen>=3.29; extra == 'dev'
Requires-Dist: pre-commit>=3.8; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest>=8; extra == 'dev'
Requires-Dist: python-semantic-release>=9.14; extra == 'dev'
Requires-Dist: ruff>=0.8; extra == 'dev'
Requires-Dist: textual-dev>=0.60; extra == 'dev'
Requires-Dist: twine>=5.1; extra == 'dev'
Requires-Dist: watchdog>=4.0; extra == 'dev'
Description-Content-Type: text/markdown

# 💀 Welchost

> **welc**ome + g**host** — a macOS CLI that creates and manages a welcome screen for the [Ghostty](https://ghostty.org) terminal.

Welchost generates a banner that greets you every time you open Ghostty: big
[pyfiglet](https://github.com/pwaller/pyfiglet) ASCII art, colors or gradients,
a border, and optional system info (user, host, OS, uptime, …).

```
Ghostty launches
  → ~/.zshrc sources ~/.config/ghostty/welcome.zsh
    → welcome.zsh runs python3 ~/.config/ghostty/welcome_banner.py
      → banner renders in your terminal
```

## Install

```bash
# Homebrew (macOS)
brew install scoobynko/welchost/welchost

# pipx / PyPI
pipx install welchost
```

## Usage

```bash
welchost            # launch the interactive TUI (themes + custom wizard)
welchost config     # same as above
welchost preview    # render the current banner to stdout
welchost doctor     # check Ghostty, env, and the install chain
welchost reset      # remove all welchost files and the .zshrc injection
welchost version    # print version
```

Add `--dev` (or `WELCHOST_DEV=1`) to run fully sandboxed against `./dev-home/`
without touching your real config or `~/.zshrc`.

## What it manages

Welchost owns three files in `~/.config/ghostty/`:

- `welchost.toml` — config, the single source of truth
- `welcome.zsh` — thin shell shim (generated)
- `welcome_banner.py` — the renderer (generated)

It **never** touches Ghostty's own `config` file, and it injects exactly one
guarded line into `~/.zshrc` between sentinel markers.

See [CLAUDE.md](./CLAUDE.md) for the full specification.

## License

MIT © Welchost Contributors
