# N3wt School

Logiciel de gestion d'école avec système de messagerie instantanée intégré

## ✨ Nouvelles Fonctionnalités

### 📱 Messagerie Instantanée (Nouveau)

- **Chat temps réel** avec WebSocket
- **Upload de fichiers** avec prévisualisation
- **Indicateurs de présence** (en ligne/hors ligne)
- **Messages lus/non lus** avec compteurs
- **Interface moderne** avec composants React

Voir la [documentation complète](./docs/messagerie-instantanee.md) pour plus de détails.

## Maquette

Maquette figma : https://www.figma.com/design/1BtWHIQlJDTeue2oYblefV/Maquette-Logiciel-de-gestion-Ecole?node-id=42-296&t=AdaSQYWkLLf1o5OI-0

## Installation

### Installation de docker

Lien de téléchargement : https://www.docker.com/get-started/

# Lancement de monteschool

```sh
docker compose up -d
```

Lancement du front end

```sh
npm run dev
```

se connecter à localhost:8080

# Installation et développement en local

- [Installation Manuelle](./docs/Installation_Manuelle.md)
- [Convention de codage](./docs/CODING_GUIDELINES.md)

# Installer la vérification de commit (dans le projet principal)

```
npm i
npm run prepare
```

# Formatter le frontend

```
npm i
npm run format
```

# Faire une livraison Mise en Production

```sh
# Faire la première release (1.0.0)
npm run release -- --first-release

# Faire une prerelease (RC,alpha,beta)
npm run release -- --prerelease <name>


# Faire une release
npm run release

# Forcer la release sur un mode particulier (majeur, mineur ou patch)
# npm run script
npm run release -- --release-as minor
# Or
npm run release -- --release-as 1.1.0

# ignorer les hooks de commit lors de la release
npm run release -- --no-verify
```
