The app is a SPA designed to integrate with Shopify.
While it may work, I can't recommend production usage. This is relatively bare-bones, but there are some things that work:
- Installation flow
- Billing
- Shopify Admin GQL API queries
- Shopify app bridge
- Shopify CLI integration
- Bun (of course)
- Elysia
- MongoDB w/ Typegoose
- Vite
- Clone the repo
cd client
bun install
- Run
bun install
in bothweb/client
andweb/server
- Copy and paste
.env.example
to.env
in bothweb/client
andweb/server
, filling out applicable variables - Run
bun dev
in the project root which will invoke the Shopify CLI
Server:
- The
elysiaShopify
plugin usesderive
to provide ashop
andsession
object for your routes
Client:
- There's a
useEden
hook to make dispatching requests to your API easier to work with in your React components - The
edenTreaty
initialization useswithShopifyAuth
andwithAbortControllers
fetch composers for your convenience
- There are a few interesting type issues (See
// @ts-ignore
comments) - Better README for setup
- Add better front-end boilerplate with Shopify Polaris, and some more app bridge examples
- All-in-one docker development environment (easier set up)
- Document an example deployment process (GCS static front-end, Cloud Run server)