Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Ota yhteyttä
Finnish
US English (US)
FI Finnish
  • Koti
  • Partnerit

Miten AI Commercen Svelte frontend on järjestetty?

Ohje AI Commercen frontendin kansiorakenteesta ja dev dependencies -paketeista. Opi kehittämään ja hallinnoimaan käyttöliittymää tehokkaasti.

Written by Petro Mäntylä

Updated at April 11th, 2025

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • AI Commerce
    Hallinnan etusivu Asiakkuudet Tilaukset Tilausten hallinta Kategoriat Tarjoustyökalu Tuotteet Konfiguraatiot Moduulit Raportit Paikallisasetukset ja verot Arvostelut Etusivu FAQ -työkalu Kuvagalleria Työkalut Kassa Lisätoiminnot Svelte
  • Akeneo
  • WordPress
  • Builder.io
  • Algolia
  • phpList
  • Google
  • Meta
  • Tuki
  • Tehden
  • Partnerit
  • Microsoft
  • Integraatiot
+ Lisää

Sisällysluettelo

Frontendin tiedostorakenne ja keskeiset hakemistot Dev-dependencies ja niiden tarkoitus .env.local Linterit ja muut konfiguraatiot Kieliversioiden hallinta S3Fallback ja reitityksen varmuusratkaisut Yhteenveto

Tässä artikkelissa perehdytään AI Commercen frontend-kansiorakenteeseen, kehitysympäristöön ja siihen, miten hyödynnetään yhteistä koodipohjaa useille kaupoille. Artikkelin tavoitteena on antaa integraatiopartnereille selkeä käsitys siitä, miten frontend on järjestetty ja mitä tiedostoja sekä dev dependencies -paketteja projektissa käytetään.

Noudattamalla alla olevia ohjeita voit hallita tehokkaammin AI Commercen käyttöliittymän kehitystä, ymmärtää versiohallinnan periaatteita ja varmistaa, että koodi pysyy turvallisena ja helposti ylläpidettävänä.

Frontendin tiedostorakenne ja keskeiset hakemistot

  • /assets/ – Tiedostot, jotka tulevat projektin juureen, kuten robots.txt ja favicon.ico. Tuotantoon siirtyessä noindex on poistettava robots.txt-tiedostosta.
  • /dist/ – Viten ja AI Commercen SSR-pluginin generoimat JS- ja CSS-tiedostot, jotka päätyvät S3:een ja Lambdaan.
  • /node_modules/ – Kolmannen osapuolen kirjastot, listattuna package.json-tiedostossa. Uusia kirjastoja lisätään vain Code Ownerin toimesta.
  • /src/ – Varsinainen sovelluskoodi:
    • /src/app – Frontendin ydintoiminnallisuudet, esim. router, evästeet ja muut harvemmin päivitettävät koodit.
    • /src/ext – Kolmansien osapuolien skriptit, muun muassa chattien ja Builderion kaltaisten upotusten koodit, jotka on konvertoitu AI Commercen ympäristöön sopiviksi.
    • /src/lib/ – Toiminnallisuuksia, joita voidaan muokata kauppakohtaisesti. Esimerkkinä Configuration.js, jossa määritellään esimerkiksi logoRatio.
    • /src/modals/ – Erilaisia uudelleenkäytettäviä modaalikomponentteja.
    • /src/pages/ – Sovelluksen sivutiedostot (routing), joilla luodaan esimerkiksi /product/[slug] -tyyppisiä dynaamisia polkuja.
    • /src/popups/ – Erilaiset popup-komponentit.
    • /src/renderer/ – Palvelinpään renderöintiin (SSR) liittyvät tiedostot kuten App.svelte, +onBeforeRender.js, +onRenderHtml.js ja +onRenderClient.js.
    • /src/ssr/ – AI Commercen omat SSR-tiedostot, jotka on tarkoitettu kevyeksi palvelinpään renderöintiratkaisuksi.
    • /src/styles/ – Tyylitiedostot (global.css, dynamic.css, common.css). Suositus on pitää suurin osa tyyleistä komponenttikohtaisina, mutta esimerkiksi yleiset HTML- tai dynaamiset sisällöt kannattaa tyylitellä näissä tiedostoissa.

Dev-dependencies ja niiden tarkoitus

Projektissa käytetään vain välttämättömiä kirjastoja, jotka on lukittu package.json-tiedostoon. Näin varmistetaan koodin turvallisuus ja tehokkuus. Vain Code Ownerit voivat päivittää tai lisätä uusia kirjastoja. Seuraavat paketit löytyvät package.jsonin devDependencies-osiosta:

  • @sveltejs/vite-plugin-svelte (3.1.1) – Mahdollistaa Svelte-komponenttien käytön Vite-projektissa.
  • cross-env (7.0.3) – Alustariippumaton ympäristömuuttujien asetus.
  • dotenv (16.4.5) – Lataa .env-tiedoston muuttujat process.env:iin build- tai ajon aikana.
  • eslint (^9.14.0) – Lint-työkalu JavaScript/TypeScript-koodiin.
  • eslint-plugin-svelte (2.46.0) – ESLint-tuki Svelte-tiedostoille.
  • sass (^1.86.3) – SCSS-/Sass-tiedostojen kääntäjä CSS:ksi.
  • serverless-prune-plugin (2.1.0) – Serverless-laajennus vanhojen deploy-versioiden poistamiseen AWS:ssä.
  • svelte (4.2.19) – Svelte-kirjasto kehitysvaiheessa, käännetään buildin yhteydessä.
  • svelte-preprocess (^6.0.3) – Mahdollistaa esimerkiksi SCSS:n ja TypeScriptin käytön .svelte-tiedostoissa.
  • vite-plugin-compression (0.5.1) – Lisää gzip- tai brotli-pakkauksen buildattuihin tiedostoihin.
  • vite-plugin-dynamic-import (1.5.0) – Dynaamiset importit Vite-projekteissa (esim. lazy load -routet).

.env.local

Ympäristömuuttujia säilytetään .env.local-tiedostossa. Täällä määritellään esimerkiksi yhteyspisteet backendille ja kuvapalvelimille. VITE_-prefiksillä merkityt muuttujat ovat näkyvillä myös selaimessa, joten älä tallenna niihin arkaluontoista dataa.

  • VITE_BACKEND_HOST – Backendin host-nimi (esim. localhost tai boeing.com).
  • VITE_DEV_IMAGE_URL – CDN- tai kuvapalvelimen osoite, josta kuvat ladataan kehitysympäristössä.
  • VITE_LANGUAGE_CODE – Oletuskielen kielikoodi (esim. fi). Käytetään route-mappien valitsemiseen.

Linterit ja muut konfiguraatiot

eslint.config.js määrittelee lintersäännöt, joilla koodi pidetään yhtenäisenä ja mahdolliset virheet tai käyttämättömät muuttujat paljastetaan ajoissa. Muuta konfiguraatiota hallitaan tiedostoissa serverless.yml ja vite.config.*.js, jotka ovat AI Commercen ydintiimin ylläpitämiä ja lukittu Code Ownerien taakse.

Kieliversioiden hallinta

languageMap.js, routeMap.js, routeMapGenerator.js, routeTranslations.js ja routeTranslator.js vastaavat kielikohtaisista reittikartoista. Uusien kielten lisääminen tapahtuu AI Commercen toimesta, jolloin valmiit kartat ja reittimäärittelyt jaetaan kaikille kaupoille automaattisesti.

S3Fallback ja reitityksen varmuusratkaisut

s3Fallback.js käsittelee niitä tapauksia, joissa haetulle reitille ei löydy suoraa vastausta. Ensin tarkistetaan, löytyykö polulle reitti front-endistä. Jos ei, koitetaan uudelleen S3-tasolla. Mikäli reittiä ei sieltäkään löydy, palautetaan HTTP 404 -koodi. Tällä turvataan mm. Googlelle oikeanlainen statuskoodi sivuja indeksöitäessä.

Yhteenveto

AI Commercen frontend noudattaa selkeää kansiorakennetta, joka helpottaa eri kauppojen ylläpitoa ja uudelleenkäyttöä. Kaikki yleiset parannukset ja bugikorjaukset tehdään ensisijaisesti main-haaraan, josta ne valuvat automaattisesti eri kaupoille. Dev dependencies on pidetty minimissä, jotta projekti on kevyt, turvallinen ja helppo päivittää. Toivottavasti tämä ohje auttaa ymmärtämään, miten voit työskennellä tehokkaasti AI Commercen frontendin parissa.

tekoäly kauppa frontend kehitys svelte builderio vike vite integraatiopartneri .env.local eslint languagemap routeri route assets node_modules pages

Oliko artikkeli hyödyllinen?

Kyllä
Ei
Anna palautetta tästä artikkelista

Yhteenkuuluvat artikkelit

  • Miten kustomoida hakualgoritmi AI Commercessa?
  • AI Commerce tukee Composable Commercea ja Serverless Lamda -kehitysympäristöä
  • Markkinoinnin seuraimet ja tuotesyötteet
AI Commerce Logo
GDPR badge AWS badge Plus icon

Future-proof eCommerce, built in the EU

AI Commerce Cloud is developed and hosted within the EU, fully compliant with GDPR and all relevant regulations.

Solutions

Service packages Features Integrations Customers

About us

About us Support Vision Contact us

Development

Changelog Blog Implementation Partners System status
🌐 English AI Commerce Cloud FI0818073-0 Ranta-Tampellan Katu 17, 33180 Tampere, Finland info@aicommerce.fi
LinkedIn Itewiki
Privacy Policy Licensing Rights Terms of Use
© 2025 AI Commerce Cloud. All rights reserved.
Expand