How to develop a SHOPIFY app
The merit of SHOPIFY
SHOPIFY is an all -in -one e -commerce platform that allows the company to easily build an online store for selling products.
Quick and easy setup and ease of use
With Shopify, merchant can quickly launch an online store without a lot of development costs. SHOPIFY also provides integration with software, hostings and third -party apps, and also supports the launch and operation of the market online store. You can easily design the online store with SHOPIFY, fast and safely operate. It corresponds to the rapid increase in store traffic.
Safety and reliability
The e -commerce store handles highly confidential customer information such as vast amounts of data, personal information, and credit card information. The SHOPIFY store is reliable, the website is high -speed, safe, and always online.
About SHOPIFY app and app store
To enhance the functions of the store in SHOPIFY, you can build or purchase an embedded application that operates seamlessly with the platform. The app is a public app generally created by third -party developers and can be obtained through the SHOPIFY app store.
Thousands of apps can be used in the Shopify app store, and merchant can easily integrate with the store by selecting a SHOPIFY app.
The app adds special features that make it easier for merchant and store customers to use online stores, add SHOPIFY management functions, streamline the merchant's experience, and have a unique online for customers. You can provide shopping experience.
SHOPIFY app type
Public app: The public app is the only app that can be provided in the Shopify app store. There are two types, registration and unregistered. Merchant can install registration apps from the SHOPIFY app store. Unregistered apps are not displayed in the SHOPIFY app store category or search results. Instead, you can install it from a list of developers' websites and app app stores. In order to register the app, you need to pass the SHOPIFY examination process, and you will be inspected by the user's point of view.
Custom App: Custom apps are made for specific merchant and cannot be published in the Shopify app store. It is suitable for adding functions to the SHOPIFY management screen and extending online stores to other platforms. External app developers do not need API access to the store or access to the SHOPIFY management screen to build a custom app. Custom apps are developed for one client at an agreed fee and built according to the needs of the merchant.
Private app: Developer provided by developers for a merchant with certain requirements that are not satisfied with custom apps. However, the private app is not recommended as of January 2022. Shopify recommends creating a custom app instead.
Draft app: The draft app is an application used by SHOPIFY partner for test purposes during development. It can only be installed in the development store. The store shift will be invalid forever. It can be installed in other stores only after SHOPIFY's screening or after converting to a custom app.
How to develop the SHOPIFY app
Shopify app development process
The developers of the SHOPIFY app can use your favorite programming language and framework when developing the app. SHOPIFY has various tools, resources, and documents for developers to start making the first app.
Selection of technical stack
Since the SHOPIFY app is self -hosting, the API does not depend on the programming language,
The following two are the best choices for programming languages.
JavaScript
Ruby
These two languages are the most supported language of SHOPIFY.
Register of SHOPIFY partner account
Click here to create a partner account: https://partners.shopify.com/signup
The SHOPIFY partner is an active member of the SHOPIFY partner program, and entrepreneurs can recommend SHOPIFY to other stores, create themes and apps, or just add affiliate links to their websites. can.
Creating a development store
The development store is a free SHOPIFY account with several restrictions. You can create an unlimited development store as a SHOPIFY partner. You can also test the created themes and apps, or set up a shopify store for clients.
In the development store, you can do the following to test:
Unlimited test orders
Unlimited unique products
Create up to 10 custom apps
Custom domain assignment
You can create a development store from a part -sided dash board. Click "Store Management" on the side menu to add the store.
In the type of section of the store, select the "Development Store", determine the store name and URL, and save it.
Installing app creation and SHOPIFY CLI
Go to the directory you want to create an app. By executing the following command, you can easily create a new app.
NPM INIT @SHOPIFY/APP @LATEST ----Template node
Created in a new subdirectory.
(Since --template node was used, a node application will be created.)
* You can also create a new SHOPIFY app using the NPM, yarn, or PNPM command. SHOPIFY offers multiple languages and frameworked application plates, such as node, PHP, and Ruby. You can specify the template to be used in --template (language / framework) or select a template when the app is displayed.
SHOPIFY CLI is a command line interface tool that supports the construction of the Shopify app. Quickly generate a SHOPIFY app and foothit the expansion of the app. You can also automate many general development tasks.
Installed with all the dependencies you need to build a SHOPIFY CLI and SHOPIFY app.
SHOPIFY CLI can do the following:
Log in to a SHOPIFY partner account and select a partner organization if necessary
Create an app with Partner Dashboard and connect local app files and apps
Save NGrok tokens and use NGrok to create tunnels between local environments and development stores
Start of local development server
After the application is created, you can work by building the app and launching the local development server.
Shopify CLI creates a tunnel using ngrok so that you can access the app using your unique HTTPS URL. To preview the app, you need to create a NGrok account and authentication token.
To move to the directory of the newly created app and start the local server of the app, execute the following command:
Select the development store you want to install.
Install the app on the development store
While the server is running, open the URL in the App URL part of the terminal output in the previous procedure.
Open the URL to install the app on the development store.
Start of building app construction
You can also do the following to build and test the app.
Place the product on the development store to test the app.
Build a user interface using Polaris.
Polaris is an open source design system used by developers to build and design a SHOPIFY app. Polaris complies with the standard of web accessibility, and developers can use it, regardless of whether the app works inside or outside the SHOPIFY Admin.
With Polaris, developers do not need to build custom UI elements. All components are flexible, built in advance, and can be easily implemented. The component list includes typography, illustrations, icons, spacing, color, and interaction state.
Click here for details of POLARIS:https://polaris.shopify.com/
Use the REST API or the Graphql Admin API to access and set the GraphQL Admin API.
Click here for details of GraphQL:https://shopify.dev/api/admin-graphql
Connect the Billing API.
Click here for details of Billing API:https://shopify.dev/apps/billing
You can use Webhooks or Eventbridge to obtain and respond to events.
Click here for details on WebHooks:https://shopify.dev/apps/webhooks
App store post and review process
Once you test the app and confirm that you can respond to the actual performance, you can submit the app for approval.
After submitting, the SHOPIFY app review team confirms that the app meets the standard. Reviewers make sure that the application core function, authentication, and billing APIs are functioning correctly.
The reviewers scan the list of apps to make sure that all the required fields are correctly entered. The examination process takes 6 to 8 business days, and the app progresses through various stages. During the examination, the user will be notified at what stage the app is.