Metadata-Version: 2.4
Name: broz-cli
Version: 1.0.0
Summary: The fastest and smartest Developer Workspace Manager. Create, template, learn, clone, and AI-assist your projects.
Project-URL: Homepage, https://github.com/sameetpatro/broz
Project-URL: Repository, https://github.com/sameetpatro/broz
Project-URL: Documentation, https://github.com/sameetpatro/broz#readme
Project-URL: Issues, https://github.com/sameetpatro/broz/issues
Project-URL: Changelog, https://github.com/sameetpatro/broz/releases
Author-email: Sameet Patro <sameetpatratsp2004@gmail.com>
License: MIT License
        
        Copyright (c) 2026 Sameet Patro
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
License-File: LICENSE
Keywords: ai,cli,developer-tools,project-manager,scaffolding,template,tui,workspace
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
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 :: Build Tools
Classifier: Topic :: Software Development :: Code Generators
Classifier: Typing :: Typed
Requires-Python: >=3.12
Requires-Dist: httpx>=0.27.0
Requires-Dist: jinja2>=3.1.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pygithub>=2.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: rich>=13.0
Requires-Dist: textual>=0.80.0
Requires-Dist: typer>=0.12.0
Requires-Dist: watchfiles>=0.21.0
Provides-Extra: ai
Requires-Dist: openai>=1.30.0; extra == 'ai'
Provides-Extra: dev
Requires-Dist: build>=1.2.0; extra == 'dev'
Requires-Dist: mypy>=1.10.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest-cov>=5.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.5.0; extra == 'dev'
Requires-Dist: textual-dev>=1.5.0; extra == 'dev'
Requires-Dist: twine>=5.0.0; extra == 'dev'
Description-Content-Type: text/markdown

# 🚀 Broz — Developer Workspace Manager

[![CI](https://github.com/sameetpatro/broz/actions/workflows/ci.yml/badge.svg)](https://github.com/sameetpatro/broz/actions/workflows/ci.yml)
[![PyPI](https://img.shields.io/pypi/v/broz.svg)](https://pypi.org/project/broz/)
![Python 3.12+](https://img.shields.io/badge/python-3.12+-blue.svg)
![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)
![Platform](https://img.shields.io/badge/platform-macOS%20%7C%20Linux%20%7C%20Windows-lightgrey)

> The fastest and smartest way for developers to create projects, save templates, learn project structures, clone repositories, and use AI to automate development tasks.

---

## ✨ Features

| Command | Description |
|---------|-------------|
| `broz start <name>` | Create a new project with an interactive TUI wizard |
| `broz start --quick <name>` | Quick mode — only ask language & framework |
| `broz follow` | Learning mode — analyze project architecture |
| `broz save <name>` | Save current project as a reusable template |
| `broz use` | Create a project from a saved template |
| `broz delete` | Delete a saved template |
| `broz clone` | Clone a repo with analysis and post-clone options |
| `broz check` | Check installed development tools |
| `broz config` | View and edit Broz configuration |
| `broz ai` | AI-powered development assistant |
| `broz update` | Update Broz and templates |

## 🛠️ Supported Languages & Frameworks

| Language | Frameworks |
|----------|-----------|
| 🐍 Python | FastAPI, Django, Flask |
| 🔵 Go | Gin, Fiber, Echo |
| 🟨 JavaScript | Express, NestJS |
| 🔷 TypeScript | Express, NestJS |
| ⚛️ React | Vite, Next.js |
| ▲ Next.js | App Router |
| ☕ Java | Spring Boot |
| 🟣 Kotlin | Ktor |
| 🦀 Rust | Actix Web |

## 📦 Installation

```bash
# With pipx (recommended)
pipx install broz

# With pip
pip install broz

# From source
git clone https://github.com/sameetpatro/broz.git
cd broz
uv sync
uv run broz --help
```

## 🚀 Quick Start

```bash
# Create a new FastAPI project
broz start my-api

# Quick mode (uses defaults)
broz start --quick my-api

# Check your dev environment
broz check

# Learn a project's structure
cd existing-project
broz follow
broz save my-template

# Use a saved template
broz use

# AI-powered project creation
broz ai
```

## ⚙️ Configuration

Broz stores configuration in `~/.bro/config.yaml`:

```yaml
default_language: python
default_framework: fastapi
always_git: true
always_docker: false
always_testing: true
always_linter: true
```

Edit interactively with `broz config`.

## 🏗️ Architecture

```
bro/
├── cli/          # Typer CLI entry point
├── tui/          # Textual TUI screens & widgets
├── ai/           # LLM client & prompts
├── templates/    # Jinja2 templates & registry
├── generators/   # Project component generators
├── config/       # YAML configuration management
├── github/       # Device flow auth & repo creation
├── clone/        # Repository cloning & analysis
├── follow/       # Project learning & template extraction
├── commands/     # One module per command
├── models/       # Pydantic data models
└── utils/        # Cross-platform helpers
```

## 🤖 AI Features

Broz AI requires an API key:

```bash
broz config
# Set ai_api_key to your OpenAI API key
```

- **Build Something**: Describe what you want, AI generates the project plan
- **Debug Project**: Paste errors, AI diagnoses and suggests fixes
- **Improve Project**: AI analyzes your project and suggests improvements

## 📄 License

MIT License — see [LICENSE](LICENSE) for details.

---

*Built with ❤️ using [Typer](https://typer.tiangolo.com/), [Textual](https://textual.textualize.io/), and [Jinja2](https://jinja.palletsprojects.com/)*
