Remplace le README générique Laravel par un résumé des fonctionnalités réelles de l'app (organisations, documents, actifs, VM, todos, raccourcis, utilisateurs) et des instructions d'installation.
73 lines
3.7 KiB
Markdown
73 lines
3.7 KiB
Markdown
# CABM-IT
|
|
|
|
Application de documentation IT pour prestataires infogérants (type ItGlue), permettant de centraliser toutes les informations techniques et administratives des organisations clientes : mots de passe, actifs, documents, contacts, tâches et bien plus.
|
|
|
|
Développée avec [Laravel](https://laravel.com), [Livewire](https://livewire.laravel.com)/Volt et [Tailwind CSS](https://tailwindcss.com).
|
|
|
|
## Fonctionnalités
|
|
|
|
### Organisations
|
|
|
|
- Gestion multi-clients avec fiche par organisation (type, statut, description, logo avec recadrage intégré, plages IP autorisées).
|
|
- **Tableau de bord** par organisation : compteurs clés, domaines à surveiller (expiration proche), activité récente (créations/modifications), tâches ouvertes, et journal de bord.
|
|
- **Journal de bord** : notes libres catégorisées (projet en cours, point d'attention, intervention prévue, information générale) pour le suivi au fil de l'eau.
|
|
|
|
### Contenu métier
|
|
|
|
- **Contacts** et **Sites** par organisation.
|
|
- **Domaines** avec suivi d'expiration et alertes.
|
|
- **Mots de passe** chiffrés, avec journal d'audit.
|
|
- **Documents** organisés en arborescence de dossiers (glisser-déposer pour réorganiser) :
|
|
- Documents texte simples.
|
|
- Documents **Markdown** avec aperçu rendu et aide-mémoire de syntaxe.
|
|
- Documents **Office** (Word/Excel) créés ou importés, édités en ligne via **OnlyOffice**.
|
|
- Fichiers importés (PDF, TXT, MD) avec visionneuse PDF intégrée.
|
|
- Historique de versions sur chaque document.
|
|
- **Actifs flexibles** : types d'actifs personnalisables par un administrateur (champs sur mesure : texte, liste déroulante, case à cocher, date, mot de passe, tag, liaison vers un contact/site/domaine/autre actif...). Chaque actif dispose d'un **journal MCO** alimenté automatiquement à chaque modification de champ.
|
|
- **Machines virtuelles** : fiche dédiée (rôle, mémoire, CPU, OS) avec journal MCO.
|
|
- **ToDo** : tâches par organisation avec catégorie (Infra, Support, Métier, Autre), criticité, échéance et affectation à un technicien ou administrateur ; remontées sur le tableau de bord.
|
|
- **Raccourcis** : liens web rapides, globaux (toutes organisations, gérés par un administrateur) ou propres à une organisation.
|
|
- **Éléments liés** : liaison libre entre mots de passe, actifs, documents et autres enregistrements pour naviguer rapidement entre informations connexes.
|
|
|
|
### Utilisateurs et sécurité
|
|
|
|
- Comptes utilisateurs créés uniquement par un administrateur (pas d'auto-inscription).
|
|
- Rôles : **Administrateur**, **Technicien**, **Lecture seule**.
|
|
- Authentification renforcée : mots de passe, authentification à deux facteurs, passkeys.
|
|
- Restriction d'accès par organisation via plages IP autorisées.
|
|
|
|
## Stack technique
|
|
|
|
- **Backend** : Laravel 13, Livewire 4 / Volt, Laravel Fortify (authentification), Spatie Permission (rôles).
|
|
- **Frontend** : Tailwind CSS 4, Alpine.js.
|
|
- **Édition documentaire** : OnlyOffice Document Server (via Docker).
|
|
- **Base de données** : SQLite par défaut (configurable).
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
composer install
|
|
npm install
|
|
|
|
cp .env.example .env
|
|
php artisan key:generate
|
|
|
|
php artisan migrate --seed
|
|
php artisan storage:link
|
|
|
|
npm run build
|
|
php artisan serve
|
|
```
|
|
|
|
Un compte administrateur est créé par le seeder par défaut (voir `database/seeders/DatabaseSeeder.php`).
|
|
|
|
### OnlyOffice (édition de documents Word/Excel)
|
|
|
|
L'édition en ligne des documents Office nécessite une instance OnlyOffice Document Server. Un exemple de configuration est fourni dans `docker-compose.yml`. Voir `config/onlyoffice.php` pour les variables d'environnement associées (`ONLYOFFICE_DS_URL`, `ONLYOFFICE_CALLBACK_BASE_URL`, `ONLYOFFICE_JWT_SECRET`).
|
|
|
|
## Tests
|
|
|
|
```bash
|
|
php artisan test
|
|
```
|