retour à la caisse à outils
ref. mtb-06.1 · clé plate web + mobile

poste 06 — clé plate · e-commerce web + mobile

cynastore

la boutique en ligne de cyna, acteur de la cybersécurité pour pme et msp, sujet du projet fil rouge : catalogue, panier, paiement stripe, achats d’entreprise et rgpd. un site next.js qui sert aussi l’api de l’app mobile.

fig. 06.1 — clé plate · cynastore
glisser pour tourner · survoler une pièce

plaques rivetées — rapport d'atelier

sur l'établi

01 · à l'arrivée contrôlé

une boutique b2b et b2c

abonnements et achats ponctuels, panier persistant, commande perso ou au nom d’une entreprise, paiement stripe et espace client.

02 · sur le pont assemblé

next.js sous le capot

next.js 14 avec routes api, prisma et postgresql, nextauth, stripe et tailwind avec daisyui. le projet part du modèle shipfast.

03 · à la sortie homologué

une api, deux clients

l’app expo et react native consomme la même api : catalogue, panier, facturation entreprise, commandes et réglages rgpd. la boutique et une démo de l’app, aux données fictives, sont en ligne.

polaroids d'atelier — captures

le site et l’app côte à côte

la maquette téléphone est la démo publique, données fictives dans l’app. les autres captures viennent d’un lancement local : douze offres, dix comptes et une entreprise inventés.

cynastore — accueil — carrousel des offres
01 · accueil — carrousel des offres web · données fictives
cynastore — app mobile (démo) — accueil, données fictives
07 · app mobile (démo) · accueil démo publique · données fictives

côté web

cynastore — boutique — filtres et offres
02 · boutique — filtres et offres web · données fictives
cynastore — fiche produit — galerie et spécifications
03 · fiche produit — galerie et spécifications web · données fictives
cynastore — panier — commande perso ou entreprise
04 · panier — commande perso ou entreprise web · données fictives
cynastore — admin — commandes et ventes par catégorie
05 · admin — commandes et ventes par catégorie web · données fictives
cynastore — espace client — fiche entreprise
06 · espace client — fiche entreprise web · données fictives

côté mobile

cynastore — app — fiche produit
08 · app — fiche produit app mobile · données fictives
cynastore — app — boutique filtrable
09 · app — boutique filtrable app mobile · données fictives
cynastore — app — panier facturé à une entreprise
10 · app — panier facturé à une entreprise app mobile · données fictives
cynastore — app — historique des achats
11 · app — historique des achats app mobile · données fictives

au banc d’essai — ce que fait le code

six fonctions, du catalogue au rgpd

fonction 01

catalogue filtrable

catégories, stock, durée d’abonnement, spécifications techniques, recherche, filtres et tri.

fonction 02

paiement stripe

checkout pour le panier, un article ou une entreprise, webhook et portail client stripe.

fonction 03

entreprises

création, membres avec rôles propriétaire, admin et membre, invitations par e-mail et achats groupés.

fonction 04

rgpd

consentements horodatés, durée de conservation, export des données et suppression du compte.

fonction 05

administration

statistiques, gestion des offres, catégories, carrousel, blocs de contenu, comptes et demandes de contact.

fonction 06

app mobile

expo et react navigation : accueil, boutique, panier, commandes, entreprises, connexion par lien magique. la démo publique tourne en expo web, avec des données fictives.