Programovanie

9 dôvodov, prečo si vytvoriť svoju webovú aplikáciu pomocou Jamstacku

Vytvorenie flexibilnej a opakovateľnej aplikácie v krátkom čase môže byť náročné. Známe cloudy ako AWS, Azure a GCP pomáhajú dodávať škálovateľné webové aplikácie s nízkymi nákladmi v priebehu niekoľkých týždňov. Vyberte spravovanú databázu, presuňte kód aplikácie do kontajnerov Docker alebo back-end funkcií a nasaďte všetko na akékoľvek zmeny kódu. Takto vyzerá vývoj moderných aplikácií, že?

V tomto príspevku popíšem najdôležitejšie veci potrebné na vývoj a dodávku softvéru úžasným tempom. Aplikácia Next.js napísaná v TypeScript, nasadená cez Vercel a podporená databázou bez servera s názvom FaunaDB. Každú z týchto vecí podrobne vysvetlím a sem-tam pridám niekoľko príkladov. Vrelo odporúčam vyskúšať všetky. Všetky majú veľkorysé bezplatné úrovne a môže ich použiť malý trojčlenný vývojársky tím.

Využitie vývojárskych platforiem zameraných na vývojárov v kombinácii s ponukami bez serverov je zhrnuté ako Jamstack. „J-A-M“ znamená JavaScript, API a značky. Viac o Jamstacku nájdete na //jamstack.org/.

Nasadenie je detail implementácie

Počet služieb, ktoré môžem použiť v cloude, je ohromujúci. V tomto okamihu má AWS 250 rôznych služieb. Potrebujem definovať, ako sa pripojiť a nastaviť nasadenie pre moje nové funkcie, pre moje neprodukčné prostredie a pre moje produkčné prostredie

Ak pracujem na projekte s viacerými vývojármi súčasne, rád by som iba odovzdal adresu URL svojmu spolupracovníkovi, aby som mohol zdieľať svoju aktuálnu vetvu funkcií.

Ďalej musím nastaviť domény a subdomény, škálovať služby, prepojiť verejné koncové body, spravovať databázové pripojenia, nastaviť správu tajomstiev atď.

Platforma Vercel hladko nadväzuje na systémy riadenia verzií ako GitHub alebo GitLab. Jednoducho pripojím svoje úložisko a prispôsobím nastavenie názvu hostiteľa môjho servera mien a som hotový.

V mojom súčasnom projekte som definoval niekoľko užitočných úloh NPM, ktoré sa používajú v každom zostavení, aby sa zabezpečilo, že náš softvér funguje a spĺňa softvérové ​​štandardy a osvedčené postupy:

{

"skripty": {

"tsc": "tsc", // skontrolovať typovú bezpečnosť

"lint": "eslint", // vykoná statickú analýzu kódu

"lint: ci": "eslint --max-warnings = 0",

"lint: fix": "eslint --fix",

"test": "jest --watch", // vykonať testy

"test: ci": "jest --ci",

"test: coverage": "jest --coverage",

"checks": "npm-run-all lint: ci tsc test: ci",

"dev": "env-cmd next dev", // spustí miestne prostredie dev

"start": "next",

"start-port": "ďalší štart -p $ PORT",

"build": "ďalšie zostavenie",

"now-build": "npm-run-all checks build", // zostavenie CI

"serve": "ďalší štart",

  }

}

Vercel štandardne spúšťa teraz stavaj úloha na každom zostavení. To spustí niektoré ďalšie úlohy, ktoré staticky skontrolujú náš kód, spustia všetky testy a zostavia náš softvér.

Vďaka tomu, že všetko jednoducho funguje, mám z krabice veľa funkcií platformy nasadenia. Mám úžitok z pripravovaných vylepšení bez toho, aby mi v budúcnosti spôsobovali problémy.

$config[zx-auto] not found$config[zx-overlay] not found