An embedded app starter template to get up and ready with Shopify app development with JavaScript. This is heavily influenced by the choices Shopify Engineering team made in building their starter template to ensure smooth transition between templates.
I've also included notes on this repo which goes over the repo on why certain choices were made.
Other repos:
- TypeScript Edition - Node.js x Express.js x React.js: This repo but in
TypeScript
- Koa x Next.js: Starter template based on Shopify's older tech stack of using Koa and Next.js.
- Polaris Playground: A playground for Shopify Polaris to allow for building App UI locally and drag/drop directly into this repo to speed up development.
- React.js
hookrouter
for easier routing.
- Express.js
- MongoDB
- Vite
- Localtunnel
- Localtunnel replaces use of commercial software like
ngrok
, also becausengrok
doesn't really work well with slower connections
- Localtunnel replaces use of commercial software like
- Apollo/Client
The Shopify CLI generates an amazing starter app but it still needs some more boilerplate code and customizations so I can jump on to building apps with a simple clone. This includes:
- MongoDB based session and database management.
- Monetization (recurring subscriptions) ready to go.
- Local Tunnel instead of Ngrok.
- Webhooks isolated and setup.
- React routing taken care of (I miss Next.js mostly because of routing and under the hood improvements).
- Misc boilerplate code and templates to quickly setup inApp subscriptions, routes, webhooks and more.
- Refer to SETUP
- Storing data is kept to a minimal to allow building custom models for flexibility.
- Session persistence is also kept to a minimal and based on the Redis example provided by Shopify, but feel free to modify as required.
- When pushing to production, add
__templates
to.gitignore
.