Exciting opportunities and unexpected challenges
Insight for: Developers
After several Drupal and Shopify integrations, as well as online store development on Shopify, we'd like to share our experience with developers whose first Shopify project is still in the future.
Specifically, we have highlighted moments that could lead to the underestimation or overestimation of a Shopify project, and we have also discussed the possibilities and limitations of Shopify for developers.
“We were pleased to extend our technology portfolio with Attico beyond Drupal to also carry out development on the extremely popular platform, Shopify.
Why do we enjoy working with Attico?
We are happy to work with the Attico team from the very beginning of a project to final delivery. Their team is able to translate business requirements into a feasible and cost-efficient technical solution - with the user and client in mind.In this case, we needed to create a minimal viable product (MVP) for a shop based on the powerful features of Shopify.
Together with Attico, we were able to reduce the technical scope and decrease the time-to-market. This way we can collect valuable user data about the business model earlier, before deciding the next product iteration based on real user feedback.”
— Sascha, Creative Technologist at Taikonauten digital agency
Shopify is a platform designed to empower anyone to create their own online store, quite effortlessly, with zero coding, and start earning money selling goods.
With Shopify, store creation doesn’t require ANY technical or development skills. In 30 minutes, one can create a store with all the needed features to look and work as a professionally made one. Like with WordPress for bloggers, or with WYSIWYG for writers, to get a perfect result with Shopify, one only needs to have a good sense of style.
Shopify’s template editor is incredibly convenient and intuitive; the system settings are all very understandable; and the Application Store makes the platform even more appealing.
Shopify's specialization is ONLINE STORES! Payment processing, refunds, inventory management, customer communication, discounts, promos, shipping, multi-currency pricing, and a whole lot more that usually gives developers a headache when starting an e-commerce project. With Shopify, all of these features come out-of-the-box and are incredibly user-friendly. And guess what? They also offer mobile applications that can be set up in just 10 clicks.
For developers, there are plenty of options available:
Let's begin by examining the development of a straightforward Shopify store, without any significant alterations or modifications.
As we were unfamiliar with the platform, we started our first Shopify project in our usual way, from assembling a Backend and Frontend team, connecting Git, and so forth. However, we quickly realized that a single frontend specialist can successfully launch a straightforward Shopify store, and backend ones are likely not required.
This can and should be done by a frontend developer alone. This type of work is relatively easy to learn and does not require any database skills.
In fact, a typical simple store can be developed by a single person in around 100 hours. This estimate is for pure development time and does not include time spent on project management, communication, or feedback. When these factors are taken into account, the time required can increase to 150-200 hours.
Extending the store's functionality is a more intriguing aspect.
As Shopify provides the Application Store, it is evident that developers can create their own applications. However, the challenge lies in hosting these applications on your own server rather than Shopify's.
In essence, a custom application is a service that 'listens' to Shopify events and can perform certain actions or interact with Shopify itself through the REST API in exchange for these events.
This leads to various limitations: you cannot replace anything during order creation, intervene in the process of generating any page, and encounter several other constraints. However, you can act after an event triggers, creating your own database.
Due to the hosting requirement, 90% of applications in the Shopify Application Store are paid: developers need to offset their hosting expenses.
With the regular approach, the most straightforward things are simply impossible to do.
With 'Shopify on Hydrogen,' all the aforementioned limitations can be completely forgotten. Hydrogen is an EXTENSIVE library that empowers you to develop the frontend of Shopify exclusively using the Graph API, embracing the Headless approach.
In this case, truly limitless possibilities unfold as the rendering of content shifts from Shopify's server to your own. Shopify assumes responsibility solely for data structure and, naturally, store functionalities. We can make requests to Shopify, render products, pages, and any other elements precisely as we desire.
In essence, we obtain a React-based website that leverages GraphQL to query Shopify instead of a traditional database. Alternatively, it can utilize two databases.
Furthermore, there is Oxygen, which significantly accelerates Graph API requests. As you may have guessed, it serves as a hosting solution for Hydrogen-based websites.
To conclude, we would like to emphasize the following points: