Järvenpää Digital Solutionsin verkkosivut
- Asiakas
- Järvenpää Digital Solutions
- Vuosi
- 2026
Tämä sivusto. Kaksikielinen yrityssivusto ilman ylläpidettäviä palvelimia, jonka ainoa juokseva kulu on domain.

Tavoite
Halusin sivuston, joka latautuu nopeasti, jolla ei ole palvelinta ylläpidettävänä eikä kuukausittaista päivitysrumbaa ja jonka juoksevat kulut ovat mahdollisimman pienet. Samalla se toimii työnäytteenä siitä, mitä toteutan asiakkaille.
Ratkaisu
- Sivut muodostetaan valmiiksi julkaisun yhteydessä, joten kävijän pyyntö ei käynnistä palvelinkoodia
- Suomi ja englanti samalla sivustolla, kielten välillä vaihdetaan yhdellä klikkauksella
- Sisältö on versionhallinnassa koodin rinnalla, joten jokainen muutos on tallessa ja palautettavissa
- Yhteydenottolomake on suojattu roskapostilta, tallentaa viestit ja lähettää ilmoituksen sähköpostiin
Miksi tämä sivusto on staattinen
Alusta valitaan sen mukaan, mitä sivuston pitää tehdä. Asiakkaiden sivuilla on useimmiten ajanvarausta tai muuta asiointia, joten ne toteutetaan tavalliseen webhotelliin tietokannan kanssa. Näillä sivuilla ei ole kumpaakaan, joten ne voi muodostaa valmiiksi etukäteen.
Miksi sisältö on koodissa
Asiakkaiden sivuille teen hallintapaneelin, jossa tekstejä, kuvia ja hintoja muokataan selaimessa. Omat sivuni päivitän itse, joten erillinen hallintapaneeli olisi vain yksi ylläpidettävä osa lisää. Kun sisältö on koodissa, samat automaattiset tarkistukset koskevat sekä koodia että tekstejä: puuttuva käännös tai viittaus olemattomaan sivuun tai kuvaan pysäyttää julkaisun ennen kuin virhe päätyy sivustolle.
Tekninen toteutus
Sivusto on toteutettu Next.js:llä ja TypeScriptillä, ja sivut tarjoillaan Cloudflaren verkosta lähellä kävijää. Palvelinkoodia ajetaan vain yhteydenottolomakkeelle pienessä Cloudflare Workerissa. Jokainen muutos ajetaan automaattisesti tarkistusten ja testien läpi, ja sivusto julkaistaan vasta niiden mentyä läpi.
Lopputulos
Ylläpidettäviä palvelimia ei ole, ja sivusto toimii Cloudflaren ilmaistasolla, joten ainoa juokseva kulu on domain. Sivustolla ei ole liitännäisiä, jotka voisivat vanhentua tai aiheuttaa tietoturvaongelmia.
- Next.js
- TypeScript
- Tailwind CSS
- Cloudflare Workers