Présentation du projet

Durant mon année en freelance, j’ai également décidé de me former à de nouvelles technologies en parallèle. De ce fait, j’ai révisé React et décidé de me lancer dans un projet avec le framwork full-stack NextJS que je découvrais au fur et à mesure.

 

Il s’agit à ce jour de mon plus grand projet personnel.

Concept

C’est d’une discussion avec une amie que l’idée de LazyListy est née, une app qui permet de créer des listes de films, rédiger des reviews personnelles et partager tout ça avec son entourage.

 

D’autres fonctionnalités sont à venir, à termes je veux créer l’endroit parfait pour retrouver ses médias favoris (série tv, livres, mangas…)

Design

Concernant le design, je me suis fortement inspiré de ce que Netflix fait, notamment dans l’UX, LazyListy est une SPA (single page application), du moins c’était ma vision lors du développement. J’ai décidé de ceci afin de donner à mes utilisateurs la meilleure expérience sans rechargement de page, capitalisant ainsi sur la puissance de NextJS pour gérer des affichages dynamiques.

 

Côté UI, j’ai reçu l’aide d’un ami graphiste qui m’a orienté vers une direction dans l’air du temps, cela dit, la force de LazyListy ne réside pas dans son apparence.

Technologies utilisées

Dans l’optique de monter en compétences, en très peu de temps, j’ai décidé de faire le projet à l’aide de technologies que je ne connaissais pas. J’ai donc choisit le framework NextJS que j’ai couplé avec une base de données NoSQL : Google Cloud Firestore.

 

Pour ce qui concerne le système d’authentification, j’ai fait co-exister Next Auth et Firebase Auth pour des raisons techniques.

 

J’ai utilisé une multitude de librairies tout au long du projet allant de Swipper à React Query en passant par Zod pour la validation de type par exemple.

 

Le tout rédigé en TypeScript et SCSS bien évidemment.

 

C’est le projet dont je suis le plus fier, car il est une preuve de ma capacité à m’adapter à de nouveaux environnements technologiques. C’est également un plaisir de proposer un outil pratique et abouti pour les gens !