A Shopify-fejlesztésben a nyelv attól függ, melyik réteghez nyúlsz. A sablonokhoz (theme) Liquid kell, plusz HTML, CSS és JavaScript. Appot elvben bármilyen backend-nyelven írhatsz, hivatalos könyvtár van Ruby-hoz, Node.js-hez és PHP-hoz, de a Shopify ajánlott stackje 2026-ban a React Router alapú Node-template. A Shopify Functions viszont csak Rustot vagy JavaScriptet fogad el, WebAssemblyre fordítva. Ha pedig saját frontendet akarsz, ott a Hydrogen, ami React.

Miért nem egy nyelv a válasz?

Ha valaki megkérdezi, milyen nyelven kell WordPresshez fejleszteni, a válasz egy szó: PHP. A Shopify-nál ez a kérdés így nem értelmezhető, mert a platform rétegekre van vágva, és minden rétegnek más a szabálykönyve.

Maga a Shopify Ruby on Railsben íródott, de ehhez neked semmi közöd. A platform kódjához nem férsz hozzá, nem is kell. Te négy helyen tudsz beavatkozni: a bolt kinézeténél (sablonok), a bolt funkcióinál (appok), a Shopify belső logikájánál (Functions) és a teljes frontend lecserélésénél (headless). Nézzük sorban, hol mi kell.

Sablonok: Liquid, HTML, CSS, JavaScript

Ha a webshop kinézetét akarod egyedire szabni, a termékoldalt, a főoldalt, a kollekció-oldalakat, akkor a klasszikus frontend-hármassal és egy Shopify-specifikus sablonnyelvvel fogsz dolgozni.

A Liquid a Shopify saját fejlesztésű, nyílt forráskódú sablonnyelve. Fontos tisztázni: a Liquid sablonnyelv, teljes értékű programozási nyelvnek nem nevezném. A HTML-t egészíti ki logikai elemekkel: ciklusokkal, feltételekkel és a bolt adatainak behúzásával. Egy termékoldal-részlet így néz ki:

{% if product.available %}
  <span class="price">{{ product.price | money }}</span>
{% else %}
  <span class="sold-out">Elfogyott</span>
{% endif %}

Nagyjából ennyi a nehézségi szint. Aki írt már HTML-t, az a Liquid alapjait egy hétvége alatt megtanulja, a tagek és filterek teljes készlete persze ennél mélyebb.

A dinamikus dolgokért (kosárfrissítés, felugró ablakok, szűrés) a JavaScript felel, a kinézetért a CSS. A Shopify-témákban jellemzően nincs React vagy Vue, a legtöbb téma sima, keretrendszer nélküli JavaScriptet használ, és ez így is van jól: a storefront gyors marad.

Amire 2026-ban érdemes figyelni: a Shopify 2025 nyarán kiadta a Horizon nevű téma-keretrendszert, ami a Dawn utódja. Teljesen blokk-alapú, nyolc szintig ágyazhatók egymásba a blokkok (a Dawn kettőt tudott), és AI-val is generálhatók blokkok a szerkesztőben. A Dawn új funkciókat már nem kap. A nyelvi alap viszont nem változott: Horizon alatt is Liquidet, HTML-t, CSS-t és JavaScriptet írsz.

Appok: a backend a tiéd, a nyelv is

Az appoknál fordul a felállás. Egy Shopify-app lényegében egy külön webalkalmazás, ami a te szervereden fut, és API-n keresztül beszélget a Shopify-jal. Ebből következik, hogy a backend-nyelvet te választod.

A Shopify hivatalos API-könyvtárat ad Ruby-hoz, Node.js-hez és PHP-hoz, és létezik karbantartott könyvtár Pythonhoz, Go-hoz és .NET-hez is. PHP-s vagy? Laravelben simán írhatsz Shopify-appot. Pythonos? Az is megy. A könyvtárak az autentikációt, a verziókezelést és a kérések adminisztrációját intézik, neked az üzleti logika marad.

Az ajánlott út azért létezik, és elég egyértelmű:

Shopify CLI  →  app scaffold és lokális fejlesztés
React Router →  a hivatalos app-template alapja (a Remix beolvadt a React Router 7-be)
Polaris      →  React komponenskönyvtár az admin felülethez
GraphQL Admin API  →  az adatok írása-olvasása

Két dolgot érdemes ebből kiemelni. Az egyik, hogy aki régebbi tutorialokban Remixet lát: ugyanez az, a Remix és a React Router a 7-es verzióban összeolvadt, az új appokat már React Routerrel indítod. A másik, hogy az új appokat a Shopify a GraphQL Admin API felé tereli, a REST API örökölt státuszba került. Ha most kezdesz, GraphQL-t tanulj, ne REST-et.

Shopify Functions: itt fogy el a szabadság

A Shopify app-dokumentációjának egyik legszimpatikusabb állítása, hogy appot bármilyen nyelven írhatsz. Ez igaz is. Egészen addig, amíg a kód a te szervereden fut.

Van viszont egy egyre fontosabb kategória, ahol a kódodnak a Shopify infrastruktúráján kell futnia: ez a Shopify Functions. Ezzel írod felül a platform belső logikáját, egyedi kedvezmény-szabályokat, szállítási díj-kalkulációt, fizetési mód-szűrést. A checkout kellős közepén fut, ezredmásodperces időkeretben, ezért a Shopify nem a te szerveredet hívogatja, hanem WebAssembly-modulként futtatja a kódodat a sajátján. És ebben a pillanatban a "bármilyen nyelvből" pontosan kettő marad: Rust és JavaScript.

A Rust az ajánlott út (a shopify_function crate-tel), mert natívan fordul WebAssemblyre és gyorsabb. A JavaScript (az @shopify/shopify_function npm-csomaggal) a kényelmesebb belépő, de számításigényes függvénynél hamarabb beleütközöl az utasítás-limitbe. A gyakorlatban a legtöbb fejlesztő JavaScripttel kezd, és akkor vált Rustra, ha muszáj. Olyan ez, mint a síelés: a legtöbben a kék pályán is remekül érzik magukat, csak kevesen vallják be.

Headless és Hydrogen: React, ha saját frontendet akarsz

A negyedik réteg a headless irány: lecseréled a Shopify teljes storefrontját egy saját frontendre, és a boltot a Storefront API-n keresztül éred el. Erre a Shopify saját keretrendszere a Hydrogen, ami React-alapú, React Router 7-en és Vite-on fut, és a Shopify Oxygen nevű hostingján ingyen deployolható.

A Storefront API amúgy sima GraphQL-végpont, tehát technikailag bármiből hívhatod: Next.js-ből, Nuxt-ból, akár natív mobilappból. De ha a Shopify-ökoszisztémán belül akarsz maradni (és a supportjukra számítani), akkor Hydrogen, tehát React és TypeScript.

Egy dolgot headless esetén se felejts el: a checkout a Shopify-é marad. A pénztárfolyamatot nem írhatod újra tetszőleges nyelven: checkout UI extensionökkel szabod testre, amik JavaScriptben vagy TypeScriptben készülnek, előre definiált komponenskészletből, sandboxban futtatva. A Shopify a pénz útját nem engedi ki a kezéből. Nehéz is hibáztatni érte.

Mivel kezdj, ha most lépsz be?

Ha a fentiekből egy tanulási sorrendet kell csinálni, a helyzet egyszerűbb, mint amilyennek a négy réteg alapján tűnik, mert van egy nyelv, ami mindenhol ott van: a JavaScript.

Témát szabnál testre? HTML, CSS, JavaScript, plusz a Liquid, ami pár nap. Appot írnál? Node.js, React, GraphQL, mind JavaScript-világ. Functions? JavaScriptben indulhatsz. Headless? A Hydrogen React. Az egyetlen pont, ahol új nyelv jöhet be, a Rust, és az is csak akkor, ha a függvényed kinövi a JavaScriptet. A Ruby, a PHP és a Python pedig opció marad annak, aki már hozza őket, de 2026-ban senkinek nem ezekkel érdemes belépnie a Shopify-fejlesztésbe.

A rétegek térképe többet ér, mint bármelyik nyelv ismerete. Aki tudja, hogy a kódja épp kinek a szerverén fut, az azt is tudja, mit szabad és mit nem. A többi már csak szintaxis.

GYIK

Kell Ruby a Shopify-fejlesztéshez?

Nem. A Shopify platformja Ruby on Railsben készült, de ahhoz fejlesztőként nem nyúlsz. Appot írhatsz Ruby-ban (van hivatalos könyvtár), de ugyanúgy írhatod Node-ban vagy PHP-ban is.

Elég a JavaScript egyedül a Shopify-fejlesztéshez?

Nagyrészt igen, és ez a legjobb egynyelvű belépő. Téma-JavaScript, Node/React alapú appok, JavaScriptben írt Functions, React-alapú Hydrogen: mind lefedhető vele. Amit mellé kell tenni, az a Liquid a sablonokhoz, de az sablonnyelv, nem külön programozási nyelv.

A Liquid programozási nyelv?

Nem a klasszikus értelemben. A Liquid a Shopify nyílt forráskódú sablonnyelve: HTML-be ágyazott ciklusokat, feltételeket és adat-behúzást tud, de önálló alkalmazást nem írsz benne.

Lehet PHP-ban Shopify-appot fejleszteni?

Igen. A Shopify hivatalos PHP-könyvtárat ad az API-hoz, és a Laravel-ökoszisztémában több karbantartott Shopify-csomag is létezik. Az app a te szervereden fut, a nyelv a te döntésed.

Mikor van szükség Rustra?

Kizárólag a Shopify Functionsnél, és ott sem kötelező: JavaScriptben is írhatsz függvényt. Rust akkor kell, ha a függvényed számításigényes, és a JavaScript-változat beleütközik a futtatási limitekbe. A Shopify a Rustot ajánlja elsődleges útként.

Hasznos linkek

Gyuri

Gyuri

Hugyecz György – keresőoptimalizálási szakértő és a TotalStudio egyik tulajdonosa. Weboldalaknál és webáruházaknál elsősorban SEO-val, tartalomfejlesztéssel és technikai auditokkal foglalkozik, emellett fizetett hirdetésekkel (Google Ads, Meta), szövegírással és általános tanácsadással is; aktívan érdeklődik és használja a különböző AI-megoldásokat.

Profil