kira-crud
Version:
Intelligent CRUD Generator for Laravel and Angular
145 lines (106 loc) • 4.02 kB
Markdown
# Kira CRUD Generator
Kira est un générateur CRUD intelligent qui automatise la création de code backend (Laravel) et frontend (Angular) à partir d'un seul fichier de configuration. Il génère une architecture professionnelle complète en suivant les meilleures pratiques de développement.
## Fonctionnalités
- **Génération 100% automatique** - Crée tous les fichiers nécessaires pour Laravel et Angular
- **Architecture professionnelle**
- Laravel: Pattern Repository, Service layer, Form Requests, API Resources
- Angular: Composants typés, templates avec PrimeNG, styling approprié
- **Relations intelligentes** - Configuration des relations entre modèles (belongsTo, hasMany, belongsToMany)
- **Routes et navigation automatiques** - Génère les routes Angular et met à jour la navigation dans la sidebar
- **Configuration avancée** - Options riches pour les champs, validations et éléments UI
- **Système de purge** - Système de nettoyage intelligent pour supprimer le code généré en toute sécurité
## Installation
### Installation globale (recommandée)
```bash
npm install -g kira-crud
```
### Installation locale
```bash
npm install kira-crud
```
## Démarrage rapide
### 1. Installer Kira globalement
```bash
npm install -g kira-crud
```
### 2. Lancer Kira
```bash
kira
```
### 3. Mise à jour
Pour mettre à jour Kira vers la dernière version, utilisez l'une des méthodes suivantes:
```bash
# Méthode 1: Depuis n'importe quel terminal
npm install -g kira-crud@latest
# Méthode 2: Depuis le menu de Kira
# Sélectionnez 'Check for Updates' dans le menu principal
```
Kira vérifie automatiquement les mises à jour disponibles au démarrage.
### 3. Configurer votre projet
La première fois que vous exécutez Kira, vous devrez configurer votre projet Laravel et Angular. Kira vous guidera à travers ce processus interactif.
### 4. Créer un fichier de configuration YAML
Créez un fichier de configuration YAML pour votre modèle, par exemple `customer.yml`:
```yaml
model:
name: Customer
tableName: customers
fields:
- name: name
type: string
required: true
- name: email
type: string
validations: [email, unique]
- name: phone
type: string
- name: address
type: text
- name: active
type: boolean
default: true
relationships:
- name: orders
type: hasMany
model: Order
displayField: number
```
### 5. Générer le CRUD
Utilisez l'option "Generate New CRUD" et sélectionnez votre fichier de configuration.
## Documentation
### Structure des fichiers de configuration
Les fichiers de configuration YAML ou JSON sont structurés comme suit:
```yaml
model:
name: NomDuModele
tableName: nom_de_la_table
displayName: "Nom affiché"
fields:
- name: nomDuChamp
type: string|integer|decimal|boolean|date|text|enum
label: "Label du champ"
required: true|false
nullable: true|false
validations: [required, email, unique, etc]
relationships:
- name: relation
type: belongsTo|hasMany|hasOne|belongsToMany
model: ModeleAssocie
displayField: champAffiche
ui:
tableFields: [id, nom, description]
searchableFields: [nom, email]
isFeminine: true|false # Pour le français
```
### Exemples
Consultez le répertoire `examples/` pour des exemples de fichiers de configuration.
## Commandes disponibles
- **Generate New CRUD** - Génère un nouveau CRUD à partir d'un fichier de configuration
- **Run Configuration Wizard** - Assistant interactif pour créer un fichier de configuration
- **Analyze Existing Project** - Analyse votre projet pour détecter les modèles existants
- **Purge CRUD Components** - Supprime les composants CRUD générés
- **Project Settings** - Gère les projets configurés
- **Switch Project** - Change de projet actif
## Contribution
Les contributions sont les bienvenues! N'hésitez pas à ouvrir une issue ou une pull request sur GitHub.
## Licence
MIT