search
LoginSignup
0

More than 1 year has passed since last update.

posted at

updated at

Svelte Shield 拡張機能のリリースと Toymorphism デザインの話

はじめに

この記事は Svelte Advent Calendar 2021 の2日目の記事です。

今年に開発した Svelte 製 OSS を二つご紹介させていただき、全体を振り返ってみてどうだったか、をまとめようと思います。

Svelte Shield 拡張機能

Svelte Shield は去年リリースした、「目線移動無くサクサク日本語文を読めるツール」です。

この拡張機能版を今年の 2021/05 にリリースしました。

ページ内テキストを選択し、右クリックから実行できます。

drawing

個人的には相当使っていて、だいぶインターネット記事を読むのが快適になりました。

ウェブ版 で利用している Neumorphism UI はグローバルスタイルに影響し合うため、ページ埋め込み型のこの拡張機能には使えず、質素なスタイルになっています。

Neumorphism ライブラリでは Svelte 版や Web Components 版が無さそうで、いつか時間があるときに作りたいと感じていました。

Toymorphism

こちらは「ウェブページをオモチャっぽくして楽しもう」という思想のもとに開発を始めた、コンポーネントライブラリです。

drawing

鋭意開発中で、今後はこれにガイドラインなどを定義していき、小さなデザインシステムを構築していこうと考えています。

最低限のものを一通り揃えた時点で、 Svelte日本や公式ディスコードで紹介したいです。

この開発に当たり IBM Carbon Design System や GitHub Primer のドキュメント・ソースコードを眺めました。
Carbon Design System では sveld という svelte & js 向けの型強化ライブラリがとても便利で、 Toymorphism にも利用しました。また、GitHub Primer では CI 周りを参考にして、 changesets を利用することにしました。

将来的に Web Component 版や React 版も対応出来たら良いなと思い、 monorepo 構造にしています。こちらは svelte-kit の monorepo 構造を参考にさせていただきました。

成果はあまり出せてないですが、非常に学びが多く、良い経験になっています。

全体を振り返って

コンポーネントライブラリを作ってみたことで、 Svelte が苦手なこと(共通スタイルの定義など) も一部見えてきましたが、それでも総合的なメリットは小さくないと考えています。

また、今年は去年よりも Svelte のコードを書く時間が増えました。

image.png

上記は今年にコーディングした、各言語ごとの割合です。 (1カ月だけ WakaTime に課金してデータを取得しました)

TypeScript のコーディング時間のうち、半分くらいは React です。週4の React 案件と同じくらいコーディング時間を割けるようになったのはとても嬉しいです。

来年も Svelte 書く時間を増やしていけたら良いなと思います。

また、今後も使いやすくシンプルな Svelte の発展を期待しています。

最後まで閲覧いただきありがとうございました 🙇‍♂️🙇‍♀️🙇

🌈🏳️‍🌈🎨

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
0