Bonjour les agrumes !
Je redébarque dans le web après des années sans trop coder et je suis un peu paumé. (J’ai décroché en 2010 quand Node.js commençait à être un peu ’hip’.) J’ai pour projet de faire une petite application pour quelques utilisateurs mais j’ai l’impression de me perdre un peu dans la masse des possibilités.
Pour faire simple, cette application doit afficher des données récupérées via des capteurs, eux-même connectés à internet.
Mes contraintes sont les suivantes :
- l’application doit être utilisable principalement sur smartphone (iOS, Android principalement)
- l’application doit pouvoir gérer une cinquantaine d’utilisateurs, chacun avec ses propres données/capteurs
- j’aime bien la sécurité (j’ai trainé sur divers challenges depuis 2010, donc je ne suis pas trop en dehors du ’game’ de ce côté)
Je me balade sur le net depuis quelques jours pour choisir les technos/frameworks/… à utiliser et je suis toujours preneur de trucs et astuces. Avant de me lancer dans le code, j’essaye de trouver une bonne architecture pour connecter tous ces trucs.
Pour le moment je pense à faire une Progressive Web App (PWA) avec une seule page en utilisant :
- React / Material Components / un Service Worker et bundle avec webpack pour le frontend
- expressjs pour le backend, mais je pense qu’il va me falloir un mongoDB ou quelque chose d’autre pour gérer les bases de données, sessions, …
J’ai surtout un soucis d’organisation des liens entre ces pièces. En gros, mes capteurs doivent communiquer avec mon serveur avec une API REST. Je dois ensuite transférer ces données pour les afficher sur ma PWA.
Mes principales interrogations sont, en vrac :
- un seul serveur pour backend de la PWA et communiquer avec les capteurs VS un serveur pour servir les pages web et un autre pour la communication
- pour mon application avec une seule page, il vaut mieux avoir une page séparée pour le login/mdp ?
- sûrement d’autres choses qui vont me revenir…
Bref, si vous avez des suggestions sur un peu n’importe lequel des points ci-dessus, je suis preneur !
Merci d’avance !
TL;DR: Help me, I am paumé.