この記事は、Swift Advent Calendar 2024 の2日目の記事になります。
Ignite とは?
Ignite は、Swift製の静的Webサイトジェネレータです。
try Swift 2024 にて、PaulHudson 氏によって作成されました。
このツールは、ResultBuilder によって、HTML、CSS、JavaScriptの記述を SwiftUI ライクで書けるようにしたものです。
3月に try Swift が開催され、その後も Ignite は活発に PullRequest をマージしていきました。
今回はその中でも、特に大きく変化した新機能、「Spofify対応」と「モーダル」をピックアップして紹介します。
Spotify の対応
Spotify や YouTube は HTML などに直接リンクカードを貼れるように、できています。
Ignite でも同様のことができ、サイトに好きなアーティストの曲やアルバムを載せておくことができます。
Embed
構造体に、ID, タイトル、スタイルを入力するだけで完成します。
Embed(spotifyID: "0Gp8MWnUzS5V2lvTr25c2A", title: "星街すいせい", type: .track)
また、Spotify 意外にも Vimeo や YouTube も対応することができます。
モーダル
HTMLでいう dialog
タグに似たモーダルを提供しています。
しかし、HTML だけでなく、JavaScript のようなスムーズな動きも実現できるのがポイントです。これにより、ユーザーにとって直感的で快適なインタラクションを提供できます。
以下のコードで追加することが可能です。
Button("Tap Me") {
ShowModal(id: "myModalId")
}
Modal(id: "myModalId") {
"Hello, World!"
}
.size(.xLarge)
モーダルはサイズの変更か可能です。.size(.large)
など、モーダルサイズを自由にカスタマイズすることができます。
まとめ
Ignite は、Swift エンジニア向けの Web フレームワークです。
今回紹介したのは、ほんの一例にすぎず、数多くの変更が日々行われています。
ぜひ、自分のWebサイトやブログ作成に Ignite を検討してみて下さい。