Skip to content

kanzitelli/shopify-app-template-typescript-test

Repository files navigation

⚠️ Please, refer to kanzitelli/shopify-app-template-typescript for the most up-to-date version.

This repo was used for testing purposes.

Shopify App Node with TypeScript

This is a sample app (with TypeScript) to help developers bootstrap their Shopify app development.

It leverages the Shopify API Library on the backend to create an embedded app, and Polaris and App Bridge React on the frontend.

The original template (with JavaScript) is Shopify/shopify-app-template-node that is used when you create a new Node app with the Shopify CLI.

Requirements

Quickstart

  1. Clone the repo
npx degit kanzitelli/shopify-app-template-typescript shopify-app
  1. Create Shopify app
shopify app create node

Then copy .env file to the typescript project and remove the one you just created.

  • Or you can do it in the Shopify Partner Dashboard and then filling .env file with app's credentials (see .env.example).

Note: HOST value will be auto-filled when you run the app.

  1. Run the app
shopify app serve
  1. Install and start using the app by opening provided URL (from step 3) in your browser: https://some-ngrok-subdomain-xxxx.ngrok.io/login?shop=your-shop-name.myshopify.com

Why?

I started developing a Shopify app some time ago that uses NextJS and Koa, which are deprecated in favour of pure React App and Express. The codebase was primarily written using TS, and it was painful to see that Shopify doesn't provide a new template with TS setup. There is even the issue since January 2022 where people ask for TS support but no luck so far. So that's how this repo was born. I tried to keep it as close as possible to the original repo but with TypeScript support. All changes could be found in this PR.

Deployment

We will probably need to deploy it somewhere in the cloud when we are done with the app.

So Dockerfile and Docker Compose with https:// setup will be coming soon...

Enhancements

In the future, I am planning to create an advanced shopify-app-starter that will be powered by React Router, Mobx, more opinionated structure, release-it, and other useful things.

License

This repository is available as open source under the terms of the MIT License.

Releases

No releases published

Packages

No packages published