Au-delà de l'App Store : s'appuyer sur Remix
Lorsque l’écosystème vous fait défaut, construisez-le vous-même. Un didacticiel sur le déploiement d'applications Shopify avec Remix, Prisma et Docker.
L’App Store de Shopify est idéal pour les problèmes génériques (avis, marketing par e-mail). C’est terrible pour une logique métier spécifique. “Je dois synchroniser l’inventaire avec mon ERP des années 1990 uniquement le mardi si la lune est pleine.” Aucune application ne fait ça. Vous devez le construire.
The Stack : modèle d’application Remix
Nous utilisons le Modèle d’application Remix officiel de Shopify.
- Frontend : Polaris (système de conception de Shopify) + React.
- Backend : chargeurs/actions de remix.
- Base de données : Prisma (ORM) + PostgreSQL.
Authentification
Shopify gère le gros du travail avec « shopify-app-remix ».
Il gère automatiquement les poignées de main OAuth 2.0 et les jetons de session. Nous enveloppons simplement nos routes dans authenticate.admin(request).
Webhooks
Nous n’interrogeons pas les API. Nous écoutons.
Nous enregistrons les webhooks pour ORDERS_CREATE.
Lorsqu’une commande arrive, Shopify envoie une requête ping à notre serveur. Nous traitons la charge utile, la formatons pour l’ancien ERP et l’envoyons via SFTP (oui, vraiment).
Auto-hébergement avec Docker
Nous n’utilisons pas Heroku. Nous conteneurisons tout avec Docker. Nous déployons sur Fly.io ou DigitalOcean. Cela nous donne le contrôle de la région (déploiement à proximité du centre de données Shopify) et des coûts de mise à l’échelle prévisibles. Nous sommes propriétaires de l’infrastructure. Nous sommes propriétaires des journaux. Nous dormons profondément.