Shopify: where would customization screens need to be added - shopify

I am in the planning phase for a shopify app that will add a tool on the checkout screens and I am a newbie to shopify. I also need to provide admin. screens where the user can modify options that will change the tool to fit different scenarios. On reading the docs., I am confused regarding what shopify options I need to use to pull this off.
1) For the part of the app that will display something on the checkout screens what would I need to do for providing this functionality?
2) For the admin. screens that make the tool appear on the checkout screens, what would I need to do for this to appear in the admin. section for shopify, embedded app, etc.?
It seems like I would need to split this into two separate apps. Am I correct in this thinking?

You cannot add tools to checkout. You should do some research about Shopify Platform before scheming to make Apps. Once you understand the platform, you can dream up useful Apps. Asking questions about how and where to place admin screens reveals you have not really done any research, so expecting help here is likely not going to happen.

Related

How do I use a Shopify App to modify the Admin area in Shopify

I am currently developing a Shopify App and at the moment, it only makes use of the Storefront API. I want my app to also make modifications to the Admin Area, specifically in a similar way that the Metafield Guru App adds a tab at product level, and allows you to go into the metafields of a certain product and make changes to them.
Metafields Guru App Tab at Product Level in Admin Area
I was hoping someone could point me in the right direction for this, as I am trying to create a similar feature in which the user can access other properties for the productt.
Thank you
This option is configured in the Shopify Partner account for the APP.
There is option where you can create Admin Links when you install the App. It's not code related, it's just Shopify feature for Apps. More info in here: https://shopify.dev/tutorials/add-an-admin-link-to-the-shopify-admin-with-app-extensions
There is no other way to modify the admin area (with code) since Shopify back-end is a closed platform and you don't have access to modify it.

Shopify - how to extend a checkout page in app?

I would like to create a Shopify app that adds an additional section to the checkout page - a possibility to select the delivery time window. I know that such apps already exist but I want to use my own application server to generate the values that can be selected.
What is the best way to approach this? I've spent last 2 days browsing shopify documentation and following various tutorials but I'm still confused. I thought that application bridge would be the way to go but after playing with it a bit it seems that it only allows to embed application frame in the admin panel, not on the checkout page.
Should my app send a script tag that would call my server and add the whole slot selection UI in javascript? Or should I maybe modify the templates somehow? Can I even make AJAX requests to third party servers from templates?
I would appreciate any advice.
Shopify revealed that there will be a Checkout Apps support soon, but that time isn't now.
So at the moment the Checkout page is standalone and you can't use the ScriptTag API in it.
If you are on a Shopify Plus account and you contacted Shopify to allow you to modify the checkout.liquid file you will be able to add your section manually.
With some additional JS logic you can pass the delivery time to the cart.attributes so that it will be present in the order info. But that's pretty much what you can do and only if you have a PLUS account.
If you plan to make larger modifications you will have to create an App that will have a custom checkout process... which will be a huge overkill for adding a single section, but that's a solution as well.

Single page checkout for shopify

Kindly please suggest me the best way to single page checkout for Shopify store. As Shopify doesn't support any customization to the checkout page. Our requirement is to create a single page checkout. let me know how it is achievable.
Basic Shopify does not support customization in the checkout page. It is only available to Shopify plus Customer. Please visit here for more information.
You want a single page checkout you may need to create your own checkout process which will again require your store to be a Shopify Plus store. However, there are many Apps which can help you with single page checkout. You may want to use one of them if you don't want to build the whole functionality. You may want to check the below conversation - Link
You should not use Shopify if you want to make your own Checkout. Shopify is a hosted platform and they no longer want to let people play with the cash register themselves.
Of the few Apps that remain that do offer checkout outside of Shopify, you can see the hassles involved for customers. Why not just roll your own? If you can do your own checkout, hook up to an open source system instead where you can do that easier.
This is easy enough to do if you have the skills. Basically create an app that has a proxy page and change the theme's links replacing the paths to the checkout with paths to your proxied checkout.
There are a number of ways to collect payment info if you do this including using the draft_orders api to send the customer back to Shopify for final payment (not applicable for single page checkout but sometimes works well with the business reason that justifies a custom checkout in the first place)
You can also create a sales channel app that works much like the proxied app concept but has some more api capabilities.
However you really need a good business reason for doing this. Single page checkout was fashionable a few years ago but I've had as many customers go away from it as go towards it. Shopify has done quite a lot of work on their checkout and it works well (i.e. is fast and efficient) on all their supported platforms. Creating a custom checkout means your stuck maintaining it and are potentially increasing your liability if you take credit cards but have not received PCI certification.

How would I make my own feed/marketplace? [React Native]

I am so curious about how companies make their own marketplace within an application? I am trying to achieve a marketplace where individuals can sell products on a mobile application. So when a user logs into the app they are met with a live feed of various products. Something similar to the GOAT app, eBay, or Etsy. Usually, I know where to start, however, I have never dealt with an idea so complex. I know it can be done because it has been done multiple times over. However, I am asking if someone could provide me with some guidance. I did some Googling but came out empty-handed. Is there a video tutorial or a step-by-step guide on something like this? I also do not mind buying a course if I can achieve this effect!
Currently, what I have now are three pages! A working signup and login screen with a firebase backend that authenticates a user's email and password. It leads to my home page which is very basic. Just a header with tab navigation! I know it is very barebones... however I came here to see if I can be provided with some steps from here. Maybe even a proper technology stack.
Thank you in advance for any help!
Here are some examples of apps with live marketplaces:
https://appsftw.com/app/looklive-shopping-app-discover-celebrity-fashion
https://itunes.apple.com/us/app/shop-sell-save-with-ebay/id282614216?mt=8
https://itunes.apple.com/us/app/goat-shop-sneakers/id966758561?mt=8
Hey research marketplaces with ready app react-native template like this template e-commerce . But you need some knowledge about react-native or you can ask a freelancers.

Shopify App Necessary? Hard-code into Theme?

I have much experience developing for WordPress but this will be my first project developing for Shopify.
I will be customizing a 3rd-party Shopify Theme with custom functionality as per the client's website needs. I've been reading much documentation but I am still a bit confused about Shopify Apps...
My question is:
Do I need to build an App to extend the functionality of my theme, or can I just hard-code the new functionality directly into the theme? Is there any reason to develop an App for functionality that will only be used on my theme?
I thank you very much for your advice.
Do I need to build an App to extend the functionality of my theme, or can I just hard-code the new functionality directly into the theme?
Short answer: Yes. (Damn that mathematician's response!)
Is there any reason to develop an App for functionality that will only be used on my theme?
Longer answer: Sometimes, yes.
That wasn't very helpful
Longest answer: True. Let's break it down a little more, then.
Without knowing what you need to do, I can't offer a concrete yes-or-no answer to the question, "Should I build Feature X as an app?"
If you...
Need to add, modify or delete any objects that require admin privileges (including products, variants, collections, orders, etc.), or...
Need to listen for any of Shopify's webhooks, or...
Need to store data in an external database for any reason...
... you will need an app to have the permissions required to access and manipulate data at this level.
However, if you...
Can do everything you need with the existing Shopify objects, and...
Need few or no settings to control the desired behaviour...
... you would not need to create an app. Shopify themes have some powerful tricks & tools available to you, including:
The ability to create custom endpoints for any of the main types of objects to get the data you need;
Easily-edited settings_schema file to add arbitrary configuration variables to help control your mini-app;
Javascript endpoints to let you add, remove & edit products in the cart
Hopefully this quick breakdown helps you decide if you need to create an app or not. (And to anyone who does need to make a single-site app, remember that Shopify lets you create 'Private Apps' that don't have to go through the app store process to get widespread approval)
I thank you very much for your advice.
You're welcome! Hopefully it proves to be helpful. Good luck!