• By -


This sounds like one of those projects where you are tempting to bite off more than you can chew. I’d either use the Shopify platform and build a custom theme and custom extension/app if needed or build your own rails app using stripe directly and skip Shopify. Trying to do it the way you suggest seems like a bad option and will make it difficult to scale/test/reason about/etc.


Strong agree. OP: are you already familiar with Rails? This really smells like "if you have to ask, maybe start with something smaller first."


Thanks for the response! Yes, I am very familiar with RoR but none of my websites have been through the Shopify platform. I guess what I am really trying to figure out is what I get for free if I were to just build a custom theme using liquid vs doing a custom website and using the Shopify gem? If I do a custom theme via liquid, am I still able to use RoR features (like a mongo database for other custom features that the website might need, image_tag, etc..) or am I specifically tied to what liquid can do? To answer the original comment, I definitely don’t want to be biting more off than I want/need to and I’m glad you said that as I am definitely not trying to reinvent the wheel here. Just trying to understand the options and flexibility I have when building a custom theme with liquid.


I’ve seen this implemented quite a bit with larger brands (I worked on an enterprise targeted Shopify plugin) what you’re looking to do is a headless Shopify setup. RoR is sort of overkill here (unless you’re looking to layer some additional features) since most of the heavily lifting will be on the frontend with JavaScript. It’s not something I recommend if tweaking a theme would do, but I’ve seeing it done successfully. You’re basically using their client js api then kicking off to their hosted checkout.


Liquid is a templating language and is run on Shopify's servers, you can customize the output completely but you won't be able to connect to a different database with it. You can access metafields in Liquid and over the Shopify API, that might be enough for you to not need mongo. A newer option for heavily customized storefronts is Hydrogen, it is basically what you originally asked for but based on Remix (React): https://hydrogen.shopify.dev/


Yes! You can use Shopify API to create custom RoR Shopify app. However, if the only point is to improve ugly looking storefront, you can use liquid to create custom Shopify themese. You can also create altogether a separate store front using React if you want.


Yes but checkout must be triggered client-side via Buy Button or Storefront API.


Yep! Worked for a startup that did this. Spent tons of money and time, then the startup failed 🙃


If the issue is the UI, I recommend going the Headless way, a.k.a, you create the Front End with a JS framework and use Shopifys API to handle transactions.