223 lines
6.8 KiB
Markdown
223 lines
6.8 KiB
Markdown
# Techradar Laplank
|
|
|
|
**Techradar Laplank** est un Technology Radar interactif pour suivre l'évolution des technologies de l'écosystème Laplank/Duniter/Ğ1. Le projet est basé sur le framework [aoe_technology_radar](https://github.com/AOEpeople/aoe_technology_radar), dont le code source est vendu dans le répertoire `radar-app/`.
|
|
|
|
## 🎯 Vue d'ensemble
|
|
|
|
**Techradar Laplank** est un projet **stand-alone** qui présente :
|
|
- **38 technologies** organisées par quadrants business et anneaux d'adoption
|
|
- **12 membres d'équipe** avec leurs compétences et projets
|
|
- **Visualisations interactives** : graphe réseau, matrice de congestion, équipe de genèse
|
|
- **Pages de stratégie** : Technique, Business, DataViz Expert
|
|
|
|
### Technologies utilisées
|
|
|
|
- **Next.js** : 16.1.6 (avec Turbopack)
|
|
- **React** : 19
|
|
- **TypeScript** : 5
|
|
- **Cytoscape.js** : Visualisation du graphe réseau
|
|
- **ECharts** : Matrice de congestion
|
|
- **Node.js** : 20+
|
|
|
|
## 🚀 Démarrage rapide
|
|
|
|
### Prérequis
|
|
|
|
- Node.js 20 ou supérieur
|
|
- npm ou yarn
|
|
- Docker (pour le déploiement)
|
|
|
|
### Installation
|
|
|
|
```bash
|
|
git clone gitea@git.open.us.org:AJR/TechradarDev.git
|
|
cd TechradarDev
|
|
npm install
|
|
```
|
|
|
|
### Développement local
|
|
|
|
**Mode développement Next.js** (avec hot-reload) :
|
|
```bash
|
|
npm run serve-dev
|
|
```
|
|
Le serveur démarre sur http://localhost:3000
|
|
|
|
**Mode production local** (serveur statique) :
|
|
```bash
|
|
npm run serve-business
|
|
```
|
|
Le serveur démarre sur http://localhost:3006
|
|
|
|
**Build de production** :
|
|
```bash
|
|
npm run build
|
|
```
|
|
Les fichiers statiques sont générés dans le répertoire `build/`
|
|
|
|
## 🐳 Déploiement Docker
|
|
|
|
Le radar est déployé via Docker Compose :
|
|
|
|
**Commande de déploiement :**
|
|
|
|
```bash
|
|
docker compose -f docker-compose.business.yml up -d --build
|
|
```
|
|
|
|
Cette commande :
|
|
- Build l'image Docker sans cache (`--build`)
|
|
- Démarre le conteneur en mode détaché (`-d`)
|
|
- Le radar sera accessible sur http://localhost:3006
|
|
|
|
**Arrêter le déploiement :**
|
|
|
|
```bash
|
|
docker compose -f docker-compose.business.yml down
|
|
```
|
|
|
|
**Configuration Docker :**
|
|
- **Dockerfile** : `Dockerfile.business`
|
|
- **Docker Compose** : `docker-compose.business.yml`
|
|
- **Port** : 3006 (mappé depuis le port 3000 du conteneur)
|
|
- **Conteneur** : `laplank-radar-technolologique`
|
|
|
|
## 📊 Fonctionnalités
|
|
|
|
### Radar Technologique
|
|
|
|
- **Quadrants business** :
|
|
- Technologies Différenciantes
|
|
- Technologies Commodité
|
|
- Technologies Risque
|
|
- Technologies Émergentes
|
|
|
|
- **Anneaux d'adoption** :
|
|
- **Adopt** : Technologies adoptées et utilisées en production
|
|
- **Trial** : Technologies en phase d'essai
|
|
- **Assess** : Technologies à évaluer
|
|
- **Hold** : Technologies à éviter ou remplacer
|
|
|
|
- **38 technologies** suivies dans la release 2025-01-15
|
|
|
|
### Page Équipe (`/team`)
|
|
|
|
Visualisations interactives de l'équipe :
|
|
|
|
1. **Graphe réseau** : Relations entre membres et technologies (Cytoscape.js)
|
|
2. **Matrice de congestion** : Technologies core vs disponibilité de l'équipe (ECharts)
|
|
3. **Équipe de genèse** : Membres fondateurs et leurs compétences
|
|
4. **Profils cliquables** : Cartes de profil détaillées pour chaque membre
|
|
|
|
**12 membres** de l'équipe avec leurs compétences, projets et disponibilités.
|
|
|
|
### Pages de stratégie
|
|
|
|
Accès à trois pages de stratégie depuis le header :
|
|
- **Stratégie Technique** : Vision technique et roadmap
|
|
- **Business** : Impact business et métriques
|
|
- **DataViz Expert** : Stratégie de visualisation de données
|
|
|
|
**Protection par mot de passe** : `laplank-radar`
|
|
|
|
## 📁 Structure du projet
|
|
|
|
```
|
|
TechradarDev/
|
|
├── radar-business/ # ✏️ SOURCE DE VÉRITÉ — éditer ici
|
|
│ ├── 2025-01-15/ # Fichiers .md des technologies (38 blips)
|
|
│ ├── config-business.json # Configuration du radar (quadrants, rings)
|
|
│ └── FORMAT-BLIP.md # Format des métadonnées
|
|
├── data/ # ✏️ Données de build versionnées
|
|
│ └── team/ # Profils des 12 membres (*.md)
|
|
├── radar-app/ # ⚙️ Framework Next.js (ne pas éditer)
|
|
│ ├── src/ # Code source Next.js
|
|
│ └── data/ # Copie générée au build (ne pas éditer)
|
|
├── radar/ # ⚠️ Dossier temporaire (généré par serve-business.sh)
|
|
│ └── ... # Ne jamais éditer ici — écrasé à chaque lancement
|
|
├── scripts/
|
|
│ ├── build-radar.js # Script de build stand-alone
|
|
│ ├── serve-radar.js # Script de serve
|
|
│ ├── generate-team-visualization-data.js
|
|
│ └── ...
|
|
├── public/ # Fichiers statiques
|
|
│ ├── team-block-script.js
|
|
│ └── team-visualization-data.json # Généré par generate-team-visualization-data.js
|
|
├── Dockerfile.business
|
|
└── docker-compose.business.yml
|
|
```
|
|
|
|
## 🛠️ Scripts disponibles
|
|
|
|
| Script | Description |
|
|
|--------|-------------|
|
|
| `npm run build` | Build de production (génère `build/`) |
|
|
| `npm run serve` | Serve les fichiers statiques depuis `build/` |
|
|
| `npm run serve-dev` | Mode développement Next.js (hot-reload) |
|
|
| `npm run serve-business` | Serve le radar business en local (port 3006) |
|
|
| `npm run extract-tech` | Extraction des technologies depuis la doc |
|
|
| `npm run analyze-business` | Analyse des métriques business |
|
|
|
|
## ✏️ Où éditer le contenu
|
|
|
|
| Quoi | Dossier |
|
|
|---|---|
|
|
| Ajouter / modifier une technologie | `radar-business/2025-01-15/` |
|
|
| Ajouter / modifier un membre d'équipe | `data/team/` |
|
|
|
|
> ⚠️ Ne jamais éditer dans `radar/` (temporaire, écrasé au lancement) ni dans `radar-app/data/` (copie générée au build).
|
|
|
|
## 📝 Content Guidelines
|
|
|
|
### Tags disponibles
|
|
|
|
Les blips doivent être tagués avec les tags suivants :
|
|
|
|
* architecture
|
|
* security
|
|
* devops
|
|
* frontend
|
|
* agile
|
|
* coding
|
|
* quality assurance
|
|
* ci/cd
|
|
* ux/ui
|
|
* documentation
|
|
|
|
Exemple :
|
|
```markdown
|
|
tags: [devops, security]
|
|
```
|
|
|
|
### Format des blips
|
|
|
|
Voir `radar-business/FORMAT-BLIP.md` pour le format complet des métadonnées business.
|
|
|
|
## 🔐 Sécurité
|
|
|
|
- **Protection par mot de passe** : Les pages de stratégie sont protégées par le mot de passe `laplank-radar`
|
|
- **Authentification client-side** : Système d'authentification JavaScript côté client
|
|
|
|
## 📚 Documentation
|
|
|
|
La documentation technique est disponible dans `docs/app/` (non versionnée, locale uniquement) :
|
|
|
|
- Architecture, Configuration, Développement, Déploiement
|
|
- Guide Radar Business, Guide Page Équipe, Migration Next.js 16
|
|
|
|
## 🔄 État du projet
|
|
|
|
- **Branche principale** : `main`
|
|
- **Version** : 4.3.0
|
|
- **Statut** : Projet stand-alone, indépendant du package externe `aoe_technology_radar`
|
|
- **Framework** : Code vendu dans `radar-app/` (basé sur aoe_technology_radar)
|
|
|
|
## 📞 Support
|
|
|
|
- **Dépôt Git** : https://git.open.us.org/AJR/TechradarDev
|
|
- **Radar en ligne** : http://localhost:3006 (après déploiement)
|
|
|
|
## 📄 Licence
|
|
|
|
MIT
|