ui-labo / ynetlabo

yuuint/ui-labo

依存ゼロで書く、
4 プラットフォーム共通の UI

1 つの仕様とデザイントークンを、プレーン Web・Vue・Flutter・SwiftUI の 4 実装が共有します。まずはプレーン Web から。

packages/core

触ってみる

下のものはこのページで実際に動いている <yn-prefecture-picker> です。 地図は公有ドメインのデータから自前で生成しています。

yn-prefecture-pickermode="inline" multiple

パラメータを全部試す →

npm

使いはじめる

@ynetlabo/ui-core を入れると、データとトークンも一緒に入ります。

npm install @ynetlabo/ui-core

読み込むのは CSS 1 本と module 1 行だけです。import した時点でカスタム要素が登録されます。

<!-- 色・寸法・モーションはすべてトークン経由 -->
<link rel="stylesheet" href="node_modules/@ynetlabo/ui-tokens/dist/tokens.css">

<script type="module">
  import "@ynetlabo/ui-core";
</script>

<yn-prefecture-picker name="pref" code-format="jis"></yn-prefecture-picker>

npm

パッケージ

3 つに分かれています。@ynetlabo/ui-core を入れれば残り 2 つも一緒に入ります。

docs/specs

対応状況

この表は各 spec の frontmatter から生成しています。手書きの台帳は持ちません。

コンポーネントプレーン WebVueFlutterSwiftUI
都道府県 Pickerprefecture-pickerdraftnonenonenone

設計

決めていること

判断の経緯は ADR、 今どう動くかは spec にあります。