Néréides Dashboard est une application de tableau de bord développée avec Tauri pour le backend et Vue.js pour le frontend.
Elle permet de recevoir et d'afficher des données en temps réel grâce à un système d'événements performant.
src-tauri/
: Contient tout le code backend écrit en Rust. Cette partie gère la réception des données via une connexion TCP surlocalhost:8080
.src/
: Contient tout le code frontend en Vue.js et TypeScript pour l'interface utilisateur.
Pour récupérer les données, l'application écoute les connexions TCP sur l'adresse localhost:8080
.
- Structure du paquet :
- Avant de recevoir le contenu des données, le backend lit un VarInt indiquant la taille du paquet.
- Une fois la taille obtenue, le contenu du paquet est traité sous la forme d'un objet JSON suivant ce format :
{ "data": "nom de la donnée", "value": "valeur de la donnée" }
La gestion des données reçues repose sur un système d'événements entre le backend et le frontend.
-
Gestion des événements par Tauri : Les données sont transmises sous forme d'événements depuis le backend.
-
Écoute des événements en TypeScript : Le frontend écoute les événements via le module @tauri-apps/api/event :
import { listen } from "@tauri-apps/api/event";
listen("data_name", (event) => {
console.log(event); // Affiche les données reçues
displayed_data.value = event.payload as number; // Met à jour l'interface
});
- Clonez le dépôt :
git clone https://github.com/saurL/dashboard_nereides
cd nereides-dashboard
-
Instalez les dépendances installez rust. installer node et npm
npm install
-
** Lancez le projet en mode développement :**
npm run dev
Lorsque des modifications sont poussées sur la branche release
, une action GitHub se déclenche automatiquement pour compiler le programme pour l'architecture ARM (arm64
). Vous pouvez suivre l'avancement de cette action sur l'onglet Actions de votre dépôt GitHub.
Une fois l'action GitHub terminée avec succès, le fichier .deb
pour architecture ARM64 sera généré et disponible dans l'onglet realse.
Pour vérifier que l'action a bien été exécutée et que le fichier a bien été mis à jour, vous pouvez consulter . Vous y trouverez un lien pour télécharger le fichier .deb
.
Lorsque le fichier .deb
est prêt, vous devez le transférer vers votre Raspberry Pi en utilisant scp
(Secure Copy Protocol). Suivez ces étapes :
-
Téléchargez le fichier
.deb
depuis GitHub. -
Ouvrez un terminal sur votre ordinateur local et exécutez la commande suivante pour transférer le fichier sur le Raspberry Pi :
scp chemin/vers/le/fichier_arm64.deb nereides@adresse_ip_du_pi:/home/nereides/Desktop
scp dashboard_0.1.0_arm64.deb [email protected]:/home/nereides/Desktop
Remplacez chemin/vers/le/fichier_arm64.deb
par le chemin du fichier téléchargé et adresse_ip_du_pi
par l'adresse IP de votre Raspberry Pi. /!\ Vous devrez certainement être connecté au même wifi
Si on vous demande un mot de passe c'est raspberry
.
Une fois le fichier transféré, connectez-vous à votre Raspberry Pi et installez le paquet .deb
:
sudo dpkg -i /home/pi/fichier_arm64.deb
À chaque nouveau push sur la branche release
, le processus ci-dessus sera réexécuté automatiquement, ce qui vous permettra de toujours déployer la version la plus récente de votre programme sur le Raspberry Pi. Il suffit de répéter l'étape 3 (transfert via scp
) et 4 (installation via dpkg
).