MIGRATION VERS GITEA

This commit is contained in:
mathis committed 2026-08-25 01:26:30 +02:00
1 parent 5f9d991c15
commit 3eaca9c72b
1 file changed
+75 -45
+75 -45
View File
@@ -1,70 +1,100 @@
# Getting Started with Create React App
# 🚆 Ferrovia Panel - Administration Régionale
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
Bienvenue sur le **Ferrovia Panel**, l'interface d'administration centralisée dédiée à la gestion des exploitations ferroviaires régionales. Cette application React permet de piloter l'intégralité du système d'information voyageurs, des plans de transport, et de la communication interne.
## Available Scripts
---
In the project directory, you can run:
## 🛠️ Technologies Utilisées
### `npm start`
- **Frontend** : React 19 (Create React App)
- **UI Kit** : SNCF Web Components (WCS)
- **Backend / Base de données** : Supabase (PostgreSQL, Auth, RPC)
- **Déploiement ciblé** : Vercel / Netlify
Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in your browser.
---
The page will reload when you make changes.\
You may also see any lint errors in the console.
## 🚀 Installation & Démarrage
### `npm test`
### 1. Prérequis
- **Node.js** (version 18 ou supérieure recommandée)
- **NPM** (ou Yarn)
- Une instance **Supabase** active avec la base de données Ferrovia configurée.
Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
### 2. Cloner et installer
```bash
git clone <votre-depot-ferrovia-panel>
cd ferrovia-panel
npm install
```
### `npm run build`
### 3. Configuration de l'environnement
Créez un fichier `.env.local` à la racine du projet et renseignez vos clés d'API Supabase :
```env
REACT_APP_SUPABASE_URL=https://votre-projet.supabase.co
REACT_APP_SUPABASE_ANON_KEY=votre_cle_anonyme_publique
```
> **Note :** Si vous utilisez le mode de développement local de test (Mock Login), définissez `REACT_APP_ENABLE_MOCK_LOGIN=true`.
Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.
### 4. Démarrage en environnement de développement
```bash
npm start
```
L'application sera accessible sur [http://localhost:3000](http://localhost:3000).
The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!
---
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
## 📦 Déploiement en Production
### `npm run eject`
Le projet a été nettoyé et optimisé pour le déploiement. Pour générer les fichiers statiques de production :
```bash
npm run build
```
Le dossier `build/` généré peut être déployé sur n'importe quel hébergeur statique (Vercel, Netlify, serveurs Nginx, etc.).
**Note: this is a one-way operation. Once you `eject`, you can't go back!**
---
If you aren't satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
## 🗺️ Tour d'horizon des Fonctionnalités
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.
Le panel est structuré autour de grands modules accessibles via la barre de navigation latérale et le menu régional, soumis à un contrôle d'accès (RBAC) précis :
You don't have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.
### 🚉 1. Exploitation & Transport
- **Gestion des Gares** : Création, modification, détails des services (guichets, PMR), et gestion des correspondances intermodales (bus, tram, etc.).
- **Quais & Voies** : Paramétrage des règles de voies, et attribution en temps réel des quais d'arrivée/départ.
- **Matériel Roulant** : Catalogue des types de trains (TER, TGV, etc.) et composition dynamique des rames (voitures, motrices).
- **Horaires & Circulations** :
- Édition des plans de transport.
- Gestion calendaire complexe (Jours de circulation, jours fériés, périodes personnalisées).
- Gestion des substitutions de matériel.
- Importation GTFS (module expérimental).
## Learn More
### ⚠️ 2. Perturbations & Travaux
- **Centre des Perturbations** : Déclaration d'incidents, gestion des modifications de parcours et des retards.
- **Gestion des Travaux** : Programmation des fenêtres de travaux de maintenance avec recalcul automatique de l'impact sur les circulations et attributions de cars de substitution.
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
### 📢 3. Information Voyageurs & CMS
- **Info Trafic** : Diffusion d'alertes en temps réel sur les canaux voyageurs.
- **Actualités & Événements** : Rédaction d'articles et mise en avant de manifestations régionales.
- **Menu Régional & Pages** : Éditeur de contenu dynamique permettant de personnaliser des pages vitrines par région.
To learn React, check out the [React documentation](https://reactjs.org/).
### 🔊 4. SIV (Annonces Sonores)
- **Banque de mots** : Gestion et stockage des fichiers audios pré-enregistrés.
- **Templates d'Annonces** : Création de séquences sonores dynamiques.
- **Génération & Diffusion** : Paramétrage des annonces enregistrées (synthèse vocale ou assemblages) et déclenchement ciblé en gare.
### Code Splitting
### 💶 5. Commercial
- **Tarification** : Gestion des grilles tarifaires régionales (prix plancher, prix par kilomètre, âge maximum).
This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting)
### 💬 6. Collaboration Interne
- **Messagerie** : Chat interne permettant aux agents de communiquer en temps réel.
- **Notifications** : Centre d'alertes système pour suivre les opérations asynchrones.
### Analyzing the Bundle Size
### ⚙️ 7. Administration
- **Gestion des Utilisateurs** : Création de profils (administrateurs, agents, etc.), gestion des accès par module.
- **Paramètres** : Configuration globale de la plateforme ferroviaire.
This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size)
---
### Making a Progressive Web App
This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app)
### Advanced Configuration
This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration)
### Deployment
This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment)
### `npm run build` fails to minify
This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)
## 🔒 Sécurité
- Toute communication backend est opérée via le client Supabase.
- Les identifiants de session expirés sont gérés (`credentials: 'omit'`).
- RLS (Row Level Security) est implémenté en base de données pour protéger l'intégrité des opérations (les droits d'accès sont définis dans le schéma PostgreSQL de Ferrovia).