Metadata-Version: 2.4
Name: icd-cli
Version: 1.0.0
Summary: Intelligent Companion for Developers — Django/Python CLI
License: MIT
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: typer[all]>=0.12.0
Requires-Dist: rich>=13.7.0
Requires-Dist: openai>=1.50.0
Requires-Dist: jinja2>=3.1.0
Requires-Dist: pyyaml>=6.0.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: fpdf2>=2.7.0
Requires-Dist: questionary>=2.0.0
Dynamic: license-file

# ICD-CLI

**Intelligent Companion for Developers** — un CLI Python qui génère, documente, met à jour et diagnostique des projets backend Django, avec un pipeline IA pour la conception du schéma de données.

## Fonctionnalités

- **`icd create`** — initialise un projet Django complet en mode interactif : choix du framework (Django Ninja / DRF / Django pur), de l'authentification, de la base de données, Docker, CI/CD, monitoring, et génération des modèles par IA à partir d'une description en langage naturel.
- **`icd explain`** — génère une documentation PDF du projet (architecture, modèles, API, monitoring), avec un format alternatif structuré `--format backend` (gabarit technique en 12 sections).
- **`icd update`** — synchronise un projet existant : détection de renommages de modèles/champs, changement de base de données (`--database`) ou d'authentification (`--auth`) après coup, activation/réparation du monitoring (`--monitoring`).
- **`icd doctor`** — analyse statique du projet (sécurité, architecture, migrations en attente, validité Docker) avec, en option, un croisement avec les métriques de production Prometheus (`--production`).

## Installation

```bash
pip install icd-cli
```

Ou en local, pour développer :

```bash
git clone https://github.com/<votre-compte>/icd-cli.git
cd icd-cli
python -m venv venv
venv\Scripts\activate   # Windows
pip install -e .
```

## Configuration

`icd create` (avec génération de modèles) et `icd explain` nécessitent une clé [OpenRouter](https://openrouter.ai/keys) :

```bash
export OPENROUTER_API_KEY="votre_cle"
```

Ou dans `~/.icd/config.yml` :

```yaml
openrouter_api_key: votre_cle
llm_model: openai/gpt-oss-20b:free
```

## Démarrage rapide

```bash
icd create --name monprojet
cd monprojet
venv\Scripts\activate
python manage.py runserver
```

## Licence

MIT
