Svelte

Z Wikipedii, wolnej encyklopedii
Svelte
Logo Svelte
Logo programu
Autor Rich Harris
Pierwsze wydanie 29 listopada 2016; ponad 7 lat temu
Aktualna wersja stabilna 4.2.11
(15 lutego 2024) [±]
Język programowania TypeScript
Platforma sprzętowa wieloplatformowy
Rodzaj kompilator
Licencja MIT
Strona internetowa

Svelte – darmowy, otwarty front-endowy kompilator, wykorzystywany do tworzenia interfejsów graficznych aplikacji internetowych. Został stworzony przez Richa Harrisa[1].

Aplikacje skompilowane przy pomocy Svelte nie zawierają w sobie bibliotek, tylko wygenerowany kod JavaScript[2] – skutkuje to w zredukowaniu ich rozmiaru, jak i zwiększeniu ich wydajności. W przeciwieństwie do popularnych frameworków JavaScript, Svelte nie wykorzystuje pośrednich rozwiązań, takich jak wirtualny obiektowy model dokumentu, co przyczynia się do mniejszych wymagań aplikacji internetowych stworzonych przy pomocy tego rozwiązania[3]. Sam kompilator napisany jest w języku TypeScript, a jego kod źródłowy dostępny jest na licencji MIT na serwisie GitHub[4].

Historia[edytuj | edytuj kod]

Poprzednikiem Svelte jest Ractive.js, poprzedni projekt Richa Harrisa[5]. Pierwsza wersja Svelte napisana została w języku JavaScript, a do publicznego użytku trafiła 29 listopada 2016. 19 kwietnia 2018 wydana została druga wersja kompilatora, która wprowadziła nowy syntaks szablonów, nowy sposób aktualizowania stanu strony i zgodność z ES2015. Największą, trzecią, aktualizację kompilator otrzymał 21 kwietnia 2019, gdy został przepisany w języku TypeScript[6].

Przykład[edytuj | edytuj kod]

Aplikacje i komponenty zdefiniowane są w plikach „.svelte”, które rozszerzone są o składnię szablonów podobną do JSX. Svelte wykorzystuje natywną składnię instrukcji JavaScript z etykietą $:, aby oznaczyć zmienne reaktywne. Zmienne najwyższego poziomu stają się stanem komponentu, a wyeksportowane zmienne stają się właściwościami, które otrzymuje komponent.

<script>
    let a = 1;
    $: b = a * 2;
</script>

<p>{a} * 2 = {b}</p>

<button on:click={() => a = a + 1}>Licz</button>

Powiązane projekty i wpływy[edytuj | edytuj kod]

Vue.js swoją składnie bazuje na tej z Ractive.js, który jest poprzednikiem Svelte[7].

Na potrzeby budowania aplikacji Svelte stworzony został framework SvelteKit[8].

Osoby zajmujące się rozwojem Svelte opracowały liczne projekty integrujące rozwiązania takie jak Vite, Rollup, Webpack, TypeScript, VS Code i więcej[9].

Odbiór publiczny[edytuj | edytuj kod]

Svelte cieszy się największym uznaniem swoich użytkowników spośród wszystkich front-endowych technologii, jednak przegrywa w popularności z frameworkami takimi jak React, Vue czy Angular[10].

Svelte został przyjęty przez wiele znanych firm, w tym The New York Times, Apple, Spotify, Bloomberg, Reuters, IKEA i Facebook[11][12][13].

Przypisy[edytuj | edytuj kod]

  1. Svelte 3 Front-End Framework Moves Reactivity into the JavaScript Language, Q&A with Rich Harris. [dostęp 2020-02-07]. (ang.).
  2. React vs. Svelte, the JavaScript build-time framework [online], react-etc.net [dostęp 2022-03-18].
  3. Virtual DOM is pure overhead [online], svelte.dev [dostęp 2024-04-26] (ang.).
  4. sveltejs/svelte, Svelte, 18 marca 2022 [dostęp 2022-03-18].
  5. About the Svelte JavaScript framework [online], ValueLogic | Blog, 19 listopada 2020 [dostęp 2022-03-18].
  6. https://github.com/sveltejs/svelte/blob/master/CHANGELOG.md.
  7. https://valuelogic.one/blog/the-rise-of-the-svelte-javascript-framework/.
  8. Introduction • Docs • SvelteKit [online], svelte.dev [dostęp 2024-04-26] (ang.).
  9. Svelte · GitHub [online], github.com [dostęp 2024-04-26] (ang.).
  10. Stack Overflow Developer Survey 2021 [online], stackoverflow.com [dostęp 2024-04-26] (ang.).
  11. Svelte • Cybernetically enhanced web apps [online], svelte.dev [dostęp 2024-04-26] (ang.).
  12. https://yourhome.fb.com/
  13. Websites using Svelte - Wappalyzer [online], wappalyzer.com [dostęp 2024-04-26].