Svelte
Logo programu | |
| Autor | Rich Harris |
|---|---|
| Pierwsze wydanie | 29 listopada 2016; około 9 lat temu |
| Aktualna wersja stabilna | 5.38.3 (23 sierpnia 2025) [±] |
| 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 JavaScript, a jego kod źródłowy dostępny jest na licencji MIT na serwisie GitHub[4].
Historia
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. Trzecią aktualizację kompilator otrzymał w kwietniu 2019, a w lipcu 2020 został przepisany w języku TypeScript [6].
Wersja Svelte 5 została wydana w październiku 2024 [7]. Stanowi ona gruntowne przepisanie frameworka, wprowadzając istotne zmiany w zakresie reaktywności i ponownego użycia kodu. Najważniejszą nowością tej wersji jest wprowadzenie run (ang. runes) - uniwersalnego mechanizmu reaktywności. Runy to prymitywy umożliwiające jawne deklarowanie reaktywnego stanu i interakcję z nim.
let count = 0; // było
let count = $state(0); // stało się
Wraz z wydaniem Svelte 5 wprowadzono również nowy interfejs wiersza poleceń (CLI) dostępny pod nazwą pakietu sv w repozytorium npm [8]. Służy on do tworzenia, rozszerzania i aktualizowania projektów Svelte.
Przykład
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
Vue.js swoją składnie bazuje na tej z Ractive.js, który jest poprzednikiem Svelte.[potrzebny przypis]
Na potrzeby budowania aplikacji Svelte stworzony został framework SvelteKit[9].
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[10].
Odbiór publiczny
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[11].
Svelte został przyjęty przez wiele znanych firm, w tym The New York Times, Apple, Spotify, Bloomberg, Reuters, IKEA i Facebook[12][13][14].
Przypisy
- ↑ Svelte 3 Front-End Framework Moves Reactivity into the JavaScript Language, Q&A with Rich Harris. [dostęp 2020-02-07]. (ang.).
- ↑ React vs. Svelte, the JavaScript build-time framework [online], react-etc.net [dostęp 2022-03-18].
- ↑ Virtual DOM is pure overhead [online], svelte.dev [dostęp 2024-04-26] (ang.).
- ↑ sveltejs/svelte, Svelte, 18 marca 2022 [dostęp 2022-03-18].
- ↑ About the Svelte JavaScript framework [online], ValueLogic | Blog, 19 listopada 2020 [dostęp 2022-03-18].
- ↑ Svelte 3: Rethinking reactivity [online], 22 kwietnia 2019 [dostęp 2025-06-30].
- ↑ Svelte 5 is alive. [dostęp 2025-06-30]. (ang.).
- ↑ Introducing the new Svelte CLI. [dostęp 2025-06-30]. (ang.).
- ↑ Introduction • Docs • SvelteKit [online], svelte.dev [dostęp 2024-04-26] (ang.).
- ↑ Svelte · GitHub [online], github.com [dostęp 2024-04-26] (ang.).
- ↑ Stack Overflow Developer Survey 2021 [online], stackoverflow.com [dostęp 2024-04-26] (ang.).
- ↑ Svelte • Cybernetically enhanced web apps [online], svelte.dev [dostęp 2024-04-26] (ang.).
- ↑ https://yourhome.fb.com/
- ↑ Websites using Svelte - Wappalyzer [online], wappalyzer.com [dostęp 2024-04-26].
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.