音声書き起こし
1. オープニング
Guest
こんにちは
Guest
こんにちは。
Guest
それでは、今週もイイテンサイドやっていきましょう。
Guest
UIT INSIDEは、ウェザーインターフェースと、テクノロジーを愛する開発者のためのポッドキャストです。
Guest
最新のウブ標準や開発、フレームワークの変遷、
Guest
uiやウェックにす関する言葉で、様々なフロントエングの情報をキャッチアップできる、フットキャッストをお送りしております。
Guest
twitterでのハッシュタグは、シャープUIT、アンダースコアインサイド、エピソードのご一援やご感想、リクエストなど、ぜひぜひツイートしてください。
Guest
でえ、今回のパーソナリティはえ、私え。スプリングレイニングと、あと、uyt
Guest
所属の。ポテト4dさんとあともう1人ゲストを有しております。えばさんをえ、今回お招きしました
Guest
今回は、この3人でお送りしたいと思いますそれではよろしくお願いします
Guest
よろしくお願いしますお願いしま
2. ゲスト紹介
Guest
では、今回。エスバルさん初めてえ、ご参加ということなので、ちょっとえ自己紹介をお願いしたいと思います。
Guest
あ、はい、インターネットネームエバルです。はい、普段はピクシブというか、え、株式会社というところでえ、フロントエンドエンジニアをやっています。
Guest
普段はまあ、リラクとリラックス。svgレイルズなどを書いていますよろしくお願いします
Guest
はい、よろしくお願いします。今回、えースバルさんをお呼びした。
3. Tailwind.css とは
Guest
テーマについてなんですけれども、今回はテイルウィンドcssについて、ちょっと取り上げたいと思います。で、え、この
Guest
えすばるさんは、このテイルインドcssをタイプスクリプトであ、片安全に扱うためのランゲージサービスプラグイ
Guest
を書かれたいということなので、え、今回はそこについて、まずちょっと見ていきたいなという風に思います。
Guest
では、まずちょっとテイルウィンのcss。多分ま知ってる方も知らない方もいると思うので、ちょっと。あ、ここは
Guest
あのテイルウィンドcaの大好きなポテト4dさんにちょっと紹介してもらいたいなと思うんですけど、
Guest
あ、了解です。じゃあ、簡単なテールウィンドcssについて
Guest
紹介えしましょうかね。まず1番。キャッチでわかりやすい説明をすると、皆さん多分これお聞きの方は、
Guest
ブートストラップを使ったことがあるかなと思うのですけれども、ブートストラップにですね。ユーティリティという項目で、mx1みたいなのがいっぱいあると思うんですけど、マジンとかを設定するやつですね。
Guest
あいたユーティリティと呼ばれる。
Guest
なんでしょう。命名がそのままえ、cssのプロパティに直結するような、ものを集めたユーティリティーファーストと呼ばれる。cssフレーマークとなります。
Guest
まあ、どういったものかっていうと、今あげたように、例えばmx1とかだったら、。テイルウィンドでは、設定をしていない限りは、0.25レムのマージンがせせ設定されるといった
Guest
具合にですね。えーま、特定のクラス名を組み合わせることによって、え、ユーザーインターフェースを実現するような
Guest
cssフレームワークとなっております。
Guest
ま、今下のデストとえーブーツフラップの例が1番キャッチーかなと思います。けれども、実はこういったうような
Guest
cssを。実際のプロパティと密接に紐付けるような試みっていうのは、2015年ぐらいからですね。ちょっと今
Guest
えーチャットに貼りますけど、2015年ぐらいからyahoo。これは、米国の方のyahooですね
Guest
えに、開発部体があった頃にですね。アトミックcssっていう手法をちょっと提案とかされていて、ま。これはもっとドジョッキなんですけど、このパディングか、20匹セルみたいなクラスメイトがをつけることで。
Guest
すごいドチョっていうな、命名によってえいを表現するみたいな。試みは結構
Guest
以前から行われていて、ま。これがより実用的な形でケをなしたのが、テイルウインドシーかなと思います。アトミックシスについては、え、ショノートに多貼ってもらえるかな。
Guest
思います。
Guest
はい、
Guest
まあ、そういうようなものでございますで、いくつか。特徴についても正確なんで紹介するとですね。
Guest
ま、uttファーストであるために、デフォルトではえ、特定の決まったユーザーインターフェースみたいなのを表現するようなものを持たない。例えば、
Guest
ブートスラップとかだと、ラブバーだとか、ボタンだとかっていうのは、結構頻繁に使うかなと思うんですけど、ま、そういったようなものを持たないっていうところ
Guest
もう1点がえーテールウィンウィンドcssはえ、テールウィンドドット、コ
Guest
コンフィグドットジェースというファイル。テイルウィンドの設定ファイルを記述することによって、自由にそのえールーセットってのをカスタマイズできるっていう風なところが、特徴としてあげられるかなと思います。
Guest
なんであれですね例えば、そのグレイはえ、テキストgly600はこのカラーみたいなところを結構細かく。
Guest
自分たちでカスタマイズできるっていうのがえ、特徴かなと思います。
Guest
ま、この辺りはですね結構膨大なプロパティを有する。フレえ、cssフレーマークとなるんですけど、ま、今時とかだったらですね。パージcssとか、cssの最適化が進んできたからま、それ故に
Guest
生まれた技術かなと思います。というところで、ざっくりとテミで、cssはこんな感じでしょうか。
Guest
はい、
Guest
ありがとうございます結構あれですよねあのま、ブートストップ
Guest
とあの、ちょっとそのお公式のページを見てもらうと、まあ、もうトップページに使い方とか書いてあるんですけど、結構あの、
Guest
あのcsfフレームワークとはいえ、結構あの僕最初使い方が結構違うなとはうん、うん、うん思ってて、結構クラスをいっぱいつけるっていうのは、そのクラスの名前がもうそれぞれcssのプロパティーンに紐付いてるっていう点で、
Guest
確かになんかまあのちょっと今までとはまあ違うし、
Guest
ま、そのさっきのそのカラーのところであったりとかも。カスタマイズ
Guest
っていうのも、比較的、そのあの、もちろん、その他のcssプレイマークもできるけれど、も、まそのjs側のアプローチからしやすいっていうところとかは、
Guest
確かにそうですね。特徴で、結構カスタマイズとかはやりやすい部類なんですかね。
Guest
じゃないですかね、結構うんなんでしょう。フレーム、自分たちよのフレームワークを作るためのフレームワークみたいな感じはこは
Guest
あします。ああ、なるほどなるほど、なるほ
Guest
はい。なんで。テイルウィンブが基盤にあって、その上で。
Guest
例えば今とかだったらすごい。javascript、コンポネント、ネイティブなえ、設計をすると思うんですけど。
Guest
そうですね、え、なんかそういった際にまずはクラス名からま、テイルウィンドをベースとして、jpスクリフトのコンポーネントを構築して、それによって、
Guest
それをえ、ああ、サービスだとか。アプリケーションのユーザーは、それに依存するような
Guest
ものの、ベースとなるようなええ、なんでしょう。え、自社フレームワークの土台となるような技術なのかな、という
Guest
ああ、なるほど、
Guest
フレームワークを作る、フレームワークみたいな
Guest
ところかなっていう風に
Guest
印象はけますかね。なるほど、
Guest
そうだったんですよ、ありがとうございます。
Guest
とういう使い方がしやすいものかなと。
Guest
ま、それ以外でも便利っちゃ便利なんですけどね
Guest
まあ、じゃあ便利なところは
Guest
また後で話していきます。はい、
Guest
聞かしてもらいたいと思います。このテイルウィンドウについてなんですけど、も、
4. 実務で感じた Tailwind の特長
Guest
おピクシブのうん、そのま、実務で結構うん。
Guest
今、そのテイルウィンドが使われ始めているというのをブログで読みまして、結構そこについて、
Guest
もうちょっと聞いてみたいですし、ま、そこからそのその今回のタイプと、ランゲージの
Guest
プラグインを書かれた理由っていうところをついても、ちょっと誤解したいなと思うんですけど、もじゃ、まずどういった感じで。今
Guest
採用されているかっていうところについて聞かせてもらっても良いでしょうか。
Guest
あ、はい、そうですね、まあ、なんかそうあのブログ見てるとなんかなんかもう既にかなり使われてるのかなっていう印象受けちゃうかもしれないですけど、まだあのあれですね。まだだいぶ採用し始めるところっていうっていうのは、まず前提として
Guest
ですね。あ、さい、まず私が最近ですね。あの、そもそもさっきも、自社クレマークっていう話が上がったと思うんですけど、なんだろう。
Guest
社内のデザインシステムみたいなのを整備していこうみたいな流れがありまして。はい、うん、はい
Guest
で、それをまあなんだろうな。あの、デザイナーさんと、あと、僕の他に何人かフロントエンドのメンバーと一緒になんだろう。ピクシブデザインシステムのえをま社内ライブラリーとして作っていくには、どうするかみたいな話をま進めていたんですね。はい
Guest
でそう、最初どうしようかと思ってたかというと、まあなんかまあ、ピクシブドットネットっていう。まあ、あの1番あの、
Guest
いわゆるピクシブですね。が、リニューアルしていく中で、あの、まあ、いろんなページがspaになっていく中で、まあ、あのリアクトとか使えるようになってたんですけど、
Guest
ま、最初はそこなんだろう。使われていたコンポーネントを横展開して、え、やっていこうみたいな。考えで最初やってたんですね。はい、うん
Guest
ま、まあ、それもまあそれで最初いいかなっていう風になったし、まあ、実際あのリアクト使うプロダクトが弊社だと最近は増えつつあるから。まあ、それでいいでかって思ったんですけど、
Guest
まあただ言うて、まあ、最初からあの気になってた点ではあるんですけど、そのまあ、全部のプロダクトがリアクトつか
Guest
増えてるという全部のプラトリアクト使ってるわけではないし、なんかじゃあ使ってないプロダクトはおけ受けれないのかみたいな。なんかところはちょっと最初からあの懸念としてはあったんですね。
Guest
そうそうそうでえまだからで、最初そこに対しては結構答えが出なくて、まあ、なんだろう。ちょっとさ
Guest
しょうがないけど、とりあえず、スタイルドコンポーネンツ版のコンポーネトライブラリーを提供するみたいなことでしばらくしてたんですけど、まあ、はい、
Guest
うん、まあただまあさ、うん、そうですね。で、僕テイルメインと出会う前はそれこそなんかそこをおかげするには、ブートストラップのようなものを自分たちで作るしかないんじゃないかっていう風に思っていて、うん、
Guest
ただ。でも、ブートストラップのようなcssレワークがあったとして、それをが欲しいかみたいな
Guest
話がちょっとあって、うん、まあ、実際例えばまあ、そもそもメンテも大変ですし。リアクトを使っている人が、ブートストラップのようなシーセフレームワークをベースにしたものを提供されて
Guest
使いたいかというと、いや、コンポーネントライブラリーでくれよみたいな気持ちになる
Guest
だろうみたいな、なんかし、なんか大変な上に多分できても嬉しくないだろうなみたいなえところにずっと課題を感じていて、えっていう流れで。そうですね。なんか、まあそのタイミングあたり、テイルインドs説を知ったのかな。はい
Guest
ていうのがあって、そう
Guest
まあ最初僕なんかユーティリティファーストというてんしか知らなくて、まあ、確かにあの、こういうアプローチのシーフルマークも面白いかもね。っていうという程度の入試やったんですけど、うん、
Guest
なんとえ、なんかよく見てみるとなか。テイルウィンドコンフィグってのがあって、え、デザインシステムから、なんか、そのメタフレームワークみたいなことができるというのを知った時に、え、これじゃんみたいな感じになって、そう
Guest
そして、そうですね、だから、いう感じのことをまあ、少し前にして、
Guest
そっからそうですね。まあ、なんだろう。デザインシステムの今の実装としては、なんだろう。色とか。フォントサイズの定数をまず。javascriptのオトとして定義してっていう。まあ、コアライブラリーがあって、うん、
Guest
それを利用する。ライブラリーとして、なんか、スタイルドコンポーネンツの実装と、テイルウインドのコンフィグをえ、ライブライト提供するライブラリーがもう1個あるみたいな。
Guest
なんか、
Guest
そういうやり方にすれば、結構あのま、現実的なコストで。まリアクトならまあのなんだろう。え
Guest
と、コンポーネントライブラリーとして提供されるんで。見た目以外のなんか、挙動まで踏み込んだ音型まで受けれるかもしれない。テイルミンド版はは、見た目しか。あの、あの、
Guest
担保しないライブライになるけど、まあそれはそれで便利だし、まあ、あのスタイルそうし
Guest
こよくなるかも。みたいな感じのところにまあ行きそうになって、いうのの、実装がまあ、あの、だんだんじゃで進んでいくっていうところに来たっていう、そういう感じですね。
Guest
あ、ありがとうございます。そうですね、あの、こうブートストラップみたいなものを1から作り始めるっていうのの辛さっていうのは、すごい
Guest
痛か痛感てか、もうよくわかりますね。で、
Guest
さっきあのおっしゃってたそのメタメタライブやりというか、そのフレームワーク、シェス、フレイマークのためのフレイマークっていうところの今回、そのよつにぴったりだったっていう。
Guest
そうですね。はい、デザインシステムなんで。
Guest
うん、そうですね、実際はブートサイト使う側としても、多分割と辛くなると思ってて、そううん、うん、うん、あの、実際あの、なんか使ってるとなんかまああんまり。なんか
Guest
btnタグとびなんか、特定のページで使うbtnタグをなんか上書きするcssが結局書かれちゃって、みたいな。
Guest
だって、多分大にしてあると思うんですけど、なんかあれが起こるぐらいなら、なんかうん、あんまりデザインシステムとしては、意味がなさないかなみたいな。うん、
Guest
そうそうそう確かに確かにそうそうそう
Guest
結構上書きされがち
Guest
刺されますよね。そう、大体そうそういう思い出しかないのがあったけど、
Guest
そうそうそうそうそうそうそうありがすよね、そうそうそうそうそう、うん、
Guest
うん、うん、うん、
Guest
うんそっか。じゃあ結構あのどテイルウィンドウをつかい、その採用し始めてからは、結構もうメリットしか感じないっていう感じなんですかね。
Guest
まあ、そうですね。あの、ライブラリーを作って、実地導入みたいなのはまだ始まったばっかりなんで、なんかひょっとしたら、またあの、その後課題は出てくるのかなっていう気がしてるんですけど、
Guest
そうですね。とりあえず、あのフレームワークを作るところの作り心地みたいなところは、結構現時点でいいですね。
Guest
うん、うん、うん、うん、うん、
Guest
ありがとうございます。うん、次にあの、うん。アイアンテールの話にもうろうかと思うんですけども、
5. TypeScript ユーザーのための irontail
Guest
これは、そのそのタイプスクリプトとの新話っていうのが今までだとあんまり良くなかったっていう。
Guest
一応、テイルウインドのツールチェーンとして、あの保管が出るツールっていうのは、なんかあのvs行動拡張があって、そこはあの受け受けれるから。まあ、なんかなんなら別に。確かあれ、html
Guest
タイプセゃない環境でも保管が出るから、まあ、そこはあの割と恩恵があるんですけど、そう
Guest
多分今あのどちらかと不安に思ったのが、今まだあの、そもそもデザインシステム自体をえ、プロタイピングしている段階だと、うん、
Guest
だから、コンフィグがひょっとしたら、なんか変わったりするかもしんないみたいな。まだそんなに安定してない状態から立つわけなんで、あ、だから、なんかコンフィグ変わったら、いつの間にかもうこのクラス実はもうテイルウィンドに存在しなくなったんすよね。みたいな、なんか、
Guest
なんか、そういう感じの壊れ方をすると、嫌だなみたいなところの懸念が生じ始めて、
Guest
そう、他の恩恵は受けれるけど、なんか間違ったら怒ってくれる方向の恩恵は、そういえばあんまないですね。みたいな
Guest
ところに不安が生じたので、なんかそれを解決するツールがあるといいのかなって思ったっていうのがきっかけですね。
Guest
ああ、なるほど、確かにあれですよね。こう増えていくクラスもあれば、減っていくクラスもあるかもしれないっていうけど、そうなんですよ。
Guest
うん、うん
Guest
で、今回はい作られたと
Guest
うん、うん、
Guest
そうですね、うん
Guest
うん、結構あの作っていく上で詰まったりとか、なんか工夫点みたいなとがあると
Guest
きたええ、そうですね、なんか、それは多分テイルミング的なところというよりも、そもそもあれですね。
Guest
私がタイプス、クリプトランゲージサービスのとか、あの、コンパイラーAPIみたいなところをあんまりやったことなかったんで、結構まずそこそがだいぶ。そもそもクロポイントだったんですけど、
Guest
そうですね。
Guest
うん、うん
Guest
ああまあそうだ、ちょっとこのあ、まあなんかたテレイの関係ない話にちゃうとか、コラペの話になっちゃうんですけど、まあいいや、うん、なんか、エリカのライフサイクルがどうなっとるんじゃ、みたいな話とかなああいう、
Guest
うん、他なんだ。カスタムの型エラーを返すには、そのか、そうなんか、ランゲージサービスの提供する好みソフトするといいみたいな。まあ、調べていって分かったんすけど、そうですね。
Guest
ただ、そこはそのメソットはプロミスを返すことができない。なんか、うん。カスタムエラーは、カスタムラーの配列だけを返してやってると
Guest
んでえ。しかし、テイルウインドのクラス1覧を出すためには。なんかなんかでどっかでポストcssのコンパイルを行って、その結果を元に貸すタメラの
Guest
結果を配したはずなんですけど、ポストcssの。コンパイル処理は実は非同期だとうん、
Guest
だから、これに関しては、まあ、なんかまあ、別に他やる時にあのカスタムエラーを出す。返すにやって、コンパイルが終わるまで待つとかは別にやる必要なくて。なんか、
Guest
バックグラウンドで、コンパイルしてるから、まあ、なんかたまたまコンパイル結果、クラス一覧が出来上がったタイミングでリクエストしてきた時は、帰る。そうじゃなかったら、帰らないっていうんで、まあ
Guest
いうので、とりあえずお茶もにしたっていうのがあったんですけど、そうそう
Guest
よく考えたら、僕も全然そういうランゲージサービスを書く知見がなかった
Guest
そうです。そうですね、なんかそうっすね、
Guest
そうですね、普通に片手書くのとは全然が違いますよね。
Guest
そうなんですよ、あの、うん、
Guest
うん、
Guest
あと、そうだなもうちょっとより利用側に近い。話だと、今回クラスネームズっていうあのリアクトでよく使う。クラスを組み立てるあいを対象にしているんですけど、これがはい、
Guest
うん、まあ、そうですねまたまあリアまあこれそう。まあ、そもそもリアクトで。もし、テイルウィンドを使うようなケースがあった場合。まあ、なんかうん、
Guest
うん、まなんでま。そういう場合って、そもそもさっきの文脈だと、スタイルドコンポネマ使えばいいんちゃうの。っていう話がある。あると思うんですけど、
Guest
ま、なんで。そもそもこういうことをやったかって言うと、なんだろうな。リアクト使ってるけど、なんか
Guest
全ページフspaとかではないプロダクト向けになんだろう。一部のページはリアだけど、一部のページはなか別にあのhtmだったり、テンプレートエンジンだったりするみたいなケースで、
Guest
なんか、両方のスタイルを揃えたいっていう目的で、リアクトのプロジェクトだけど、テイルウインドを入れるっていうユースケースがありうるっていうことを考えていて、うん、
Guest
うん、そうすると。だから、リアクトだけど、テイルウィンドウを使うってケースだと、まあ、どうせみんなクラスネームズ使うでしょみたいなうんうん、多分まあうん
Guest
まんあるいはまあ、clsxっていうオルタンティブあるんで、ま、そっちの可能性あるけど、まあ、大体みんなそれ系のライブラリーを使うだろうという見越しでで。だから、とりあえず、クラスネームズを対象にやるっていう風に決めたんですけど、はい、
Guest
そうですね、クラスネームズは、結構なんか、ものすごい自由な引き数を与えられるんですね。なんか、そう、
Guest
文字列をああえてもいいし、参考演算子でえあったら、文字列。この条件でこのクラスじゃなか。フォールスだったら、このクラスみたいな分けたり。
Guest
あと、なんか、オブジェクトのキーにクラス名を入れて、バリーの方にえ条件を入れるみたいな。なんか、すっごい書き方がきるんで、え、これがですね。あの、astな士というか、うん、コンパイラーAPIの分岐がものすごく不安になっていくみたいなん。
Guest
うん、イズストリング、リテラルだけを見ればいいわけではなくて、参考演算子だったら、えっ、どうするとか。そう、オブジェクトの
Guest
なんだっけ。プロパティ野菜みたいだけど、なんかだったらえ、どうする。みたいな条件がすごい膨らんでいって、うんわ、これは大変だなってなって、そうそうそういうのがあったんやんすけど、
Guest
うん、そっか、そうですよね、いや、でも、僕はそのクラスネームスを起点にするっていうのは、めちゃくちゃ賢いなとは
Guest
思いますね。普通にそのなんかうん、ただ単にそのあの、そのクラス。あの、ほんとにそのうん。
Guest
ジェイスxのそのクラスネームをパスするよりは、全然。
Guest
うん、
Guest
そんなそのなんて言うんですかね。まあ、普通に使うっていうところ、前提に置いて割り切った
Guest
一層になってるってのは結構賢いなとそうです。思いましたね、
Guest
なんか多分確かあのランページサービスのなんか、あのグラフキエルのランゲージサービスプラグインみたいなのがあって、あれもなんかその
Guest
確かなんだっけ。テンプレートリデラルにgqlっていうやつが前についてることを割とはいはいか仮定してちゃったりとかしてると、まあ、なんかじゃあそういう風に仮定置いてやっちゃって、まあいいのかなみたいな、うん、うんのもあったりしてなる。
Guest
あ、そっか、それgqlっていうのが、あの、そのなあの名前でみたいな。そういうはそう
Guest
そうそうそうそう
Guest
ああ、なるほど、はいはいはい、あ、うんところでも結構あれですね。そのクラスネームスっていうところっていうのを全くっていうのも、あ
Guest
繰り返しになっちゃいましたけど。うん、
Guest
そうですねは戦うん、うん、うん、
Guest
はい、ありがとうございます
6. Tailwind のメリット
Guest
で、これテイルウインドうん、僕、実はあの割と前にあのうん。最初に知った時はあるけど、結構ネガティブな印象。
Guest
はいはい、はい、はい、受けたんですね。はいはいというのも結構あの今までだと、あのcssijsはいっていうか、
Guest
バリバリ使われていて、うん、そこに
Guest
なんで今今更そのcssフリーマークなんだ。みたいな感想を。正直最初は受けたんですね。うん、うん、うん
Guest
で、まあ確かにカスタマイズ性とかは良さそうだが、うん、そのそのパディングとか、マジンとかうん、クラスで指定するなら、
Guest
普通にcssで書けばいいんじゃないかみたいな。
Guest
あの、ネガティブな印象は正直最初持ったんですよ。
Guest
うん、それに反してでも結構もう割ともうあの、普及道で言えばかなりの
Guest
ものだと思うんですよね。さっきのその公式のそのvsコード向けのインテリセンスであったりとかはま、今回のその
Guest
タイプ、まああいうアイアンテールに呼ぶようなま、ツールチェーンみたいなのが、うん。結構もうで出てるということは、割とそういう風に。
Guest
まあ、実際に使われ始めているっていうところの、まあ証明みたいなところですよね。で、この
Guest
これだけ使われるようになったメリットっていうのは、うん、まあ、ちょっと気になるところで、あの
Guest
さっきのそのメタシースフレームマークみたいな話を聞いて、うん、確かにこれはあの、そういう。まあ、今までのシーフレーマーク
Guest
ではないような、そういう可能性を。うん、さっきはちょっと見出したんですけど、もうなんか他にもっとこう。
Guest
なぜ、これほど使われるようになったみたいなのがあると、ちょっと機会お2人にしたいなと。あ、
Guest
じゃあ、軽く2、3個話してもいいですか。
Guest
どうぞ、どうぞ、なんか、私が初めにテイルウィンドウを使った時って、テールウンドって2017年の暮れに出たんですけど、あの、その頃全然知らなくて、2018年の夏ぐらいから
Guest
使ってたんですけど、あの当時はほとんどの人が会議的だったんで、あの、そうだよなという気持ちは。あったん
Guest
ですけど、私の中で、テインドのメリットっていうのはえ、まず、2018年の頃って、が、メインをbgsを書きながらも、
Guest
bjs以外も。当時フリーランスだったんで、いろんな案件をやっているみたいなえものもあって、まあ、もちろんその中には。
Guest
例えばハイパーアップが使われていて、すでに社内のデザインシステムがあるような。プロジェクトとかもあるんで、ま、そういった。既存のプロジェクトとかだと、もちろんこういうのが入る余地はないんですけど、まあ、いくつか新規のプロジェクトも、やっぱり結構
Guest
取り扱ってる中ではあって、特にまずbjが多かったっていうところがあって、
Guest
当時のビージの1番。メジャーな基法っていうと、scssと、スコープドによる管理っていうのが1番の
Guest
ところになっていて、まあ、これは今も変わっていないかつ。今後ビュー3でも、シングルファイル、コンポーネントが中心であるえ、以上はそうなる
Guest
ええのかなと思っていて、ただ、ちょっとその辺りをどうにかしたいなというのがまず1つ
Guest
としてありました。で、それは何かって言うとと、私たちは使う時は、ジャバスクリプトのコンポーネントの単位で利用するじゃないですか。必ず基本的にはリアクトコンポーネントやビーコンポーネントとして、uiのオブジェクトを表現している
Guest
にも関わらず、cssについての関心の余地っていうのが出てくる
Guest
うってのがあんまり良くないことなんじゃないかなと思っていましたので。本質的にコンポーネントロジックからcssに関する関心を抜き出したいというモチベーションがありました。と
Guest
で、そこにおいて、テロイドっていうのは、大元のコンフィギュレーションと、機械的なクラス名っていうところで、ま。それを完結することができるので、一見密結合に見えるんですけど、逆にコンポーネント内には、え
Guest
とスタイルに関する定義が一切なくなるっていう点が。すごく魅力的じゃないかなと思って。初めは採用を始めましたとで、
Guest
ここでもう1個まリアクションもあれば、ビーもあるってなってくると、やっぱり例えば、
Guest
それぞれのcssejsみたいなのって、作法とかが違ったりとか、使われる技術が使った。違ったりとかしていて、端的に言うと、下反省があんまり高くないんですよね。
Guest
ま、例えば、リアクトで使っているユーザーインターフェースって、必ずま似通ったものが出てきたりとか。すると思うんですけれども、そういったものを、例えば、同じ会社のaとbのプロジェクトで、ま。それこそ、デザインシステムじゃないですけど、何か共通で使いたいっていう
Guest
時に、テイルウィンドっていう共通言語があるとですね。簡単にコンポーネントとかを取り回せたりだとか、複数のプロジェクト間で、同じようなものをまげるっていうところができるけれども、そこの技術が必ず同じとは限らない
Guest
みたいなのがあって、そこを考える、もしくは1から我々で制定しましょう。っていう
Guest
のは、すごくカロリーが高いので、ま、そこにおいて、1番えカロリーが低いような選択肢として、まあ、事前にあるテイルウィンドっていう、共通言語をベースに制定していきましょう。っていうのが、1番コスパがいいんじゃないかなと思
Guest
って、使っていたみたいなのがあります、なんで結構なんでしょう。
Guest
何かを制定する時に、前提として、テイルウィンドっていう共通言語があると、やりやすいっていうのが、まず1つにあるかなっていうのと、まあ、その技術同士の過半制みたいなところに、
Guest
すごくメリットがあるかなと。私自身は考えているってのが1つと、あとえ、私あんまりシェースみたいなのをがっつり。お互いに関心を持つというか、なんでしょう
Guest
と、javaスクリプトで、コーディングをするときに、文字列を指定するときに、全部をテンプレートストリングにするわけじゃないじゃないですか。例えばシングルコーテーション、
Guest
いや、ダブルクロスエーションでま。ストリングリテラルとして、定義することもあるのに、シエインジェースっていうのは、結構どんなものであっても、
Guest
全てまそのjavascriptの動的な世界に関心を持ってしまうっていうところが、あんまり好きじゃないってのが私個人としてありまして。
Guest
ま要は、古きよってアクティブというクラスをアタッチするみたいなのは、かなり分離されていて良いかなと思って
Guest
いるま、必要なところだけが、ジャワースキリプトの関心を持ち、え、それ以外のところは性的に扱えるっていうところに、一定以上の利点があると感じていたので、まあ、
Guest
そのあたりも
Guest
がっつりとええ。cssがjavascriptを進色しないし、逆にjavascriptのcssをがっつり新色しないっていう点で
Guest
優れているかなと思っていて、えま、そのあたりが結構採用に当たって、
Guest
強いモチベーションとなるところですかね。ま、それらの3つをえーのいずれかに当てはまる、もしくは複数に当てはまる場合に採用しやすいかな、と
Guest
いうような印象があります。
Guest
あ、なるほど、なるほど、あれですよね、過半性っていうのはもう確実ですよね、これはそうですね、うん
Guest
うん
Guest
と、多分どのcssイジュースも勝て勝てないっていうか、まか勝ちようがないっていう
Guest
ですね。まかつトンマを変えたい、例えば、こっちこっちで
Guest
ベースカラーが変わりました。みたいな時には、我々が気にするべきは、テイルウィンドcs、コンフィグcssだけでいいっていうのは
Guest
一定以上の利点なのかなと思い
Guest
ます。
Guest
そうですね、まさっき下半戦とか色々あったと思うんですけど、まあ、やっぱそうですね。自分は、あの、テールウィンドのデフォルトの設定を使ってなんかするっていうことは、あんまやってなくて、ま。とりあえず、最初から改造すること前提ていう使い方をしてたんです。
Guest
そもそも、デザインシステムをやっていく潮流が多分、色々世間的にあると思って、そこに潮流に乗っかったっていうのは、結構1つはまず大きいと思うんですけど。はい
Guest
で、それでやっていくにあたってま。その組織によっては、なんか大体。うちは、あの、全てのプロダクトリアトで書いてるから、最初からリアクトで作ればいいよね。って言えるケースはいいんですけど、そうじゃないケースでどうするかっていう問題があって、
Guest
だから、さっき言ったような。まあ、あのフレームアクアグのスティックであるっていうのは、結構あの、かなり大きいポイントだったのかなとは思ってますね。そう、
Guest
結構実際、あのテイルウィンドのマニュアル見てるとすごくって、なんかあの、なんかユースケースとして、なんかwebパックでやる方、ポストcsscliでやる方法、ガルプでやる方法を。
Guest
ララベルのコンピグでやる方法とか。んか、あの
Guest
すごい。なんか、あらゆる。無断な環境からレガシーな環境まで、なんかあの入れていくぞみたいな、あの気運を結構感じるところがあって、そこはすごい。
Guest
あ、もう最初からそうですね。なんかうん、
Guest
あの最初からそのなんだろう。コンポーネントライブラリーとか、え、csjとかが。入れづらい環境にも。モダンなデザインシステムをやっていくぞっていうのを考えられているっていうのは、ちょっと普通に偉いポイントだったかなっていうのがある
Guest
ますね。そうっていうのにっていうのに加えてまさっきのまあ、最初に言ったあの、ブートストラップのタイプのシースフレームワークがえ、辛いっていう問題
Guest
みたいなのがあって。そうですね。うん、そうじゃない形のcssグレーで、まあなんだろう。ま、規約というか、秩序を保ちつつ。
Guest
さっきので、あらゆる。技術をスタックの現場に入り込めるような形でえ、実装されているっていうポイントがまあ重なったのがよかったのかなと思ってますね。はい、
Guest
うん、うん、うん、
Guest
ありがとうございます。そうですよね、あの、そのカスタマいそのbotothアップ的な辛さって、やっぱりその
Guest
なんて言うんすかね。そのカステ、カスキーディングのルールを理解しないといけないっていうところかなっていうのは確かに思ってて、そのさっき言ってた上書きの話とかもそうですし。
Guest
っていう風に考えてると結構ま、そう考えると、さっきの。まあ、ヘイルウィンドっていうよりは、そのアトミックcs
Guest
の利点かもしんないですけど、そういうその1つのクラス名がそのまあ1つのその
Guest
ぱプロパティに値するっていうのは、その我々がそのスタイルをごい予測しやすくて、しかもまあ
Guest
結構そのまあクラスいっぱいつけてるんですけど、もま実質。そのクラスがのまとまりが1つのなんて言うんですかね。あの、
Guest
ブートスタップの1つのクラスみたいなのが、あの、その複数のクラスの塊によってま成り立つみたいなっていうところは、割とその
Guest
よ。予想しやすさというか、上書きしやすさというか、そういう辛さをまあ解決する。まあ、1つのすごいいい手だなとは僕も
Guest
思いましたね。うんふんふん、ありがとうございますすごい
7. デザインシステムの例外とその対処
Guest
あ、これ私からすばるさんに質問してもいいですか。
Guest
はい、
Guest
これどう思うかっていうのを聞きたいんですけど、私、カスタマイズする前提においても、結構ね。テイルウインドが過剰なほどに。プロパティーをデポルトで持っていることに価値があると思っていて、それはなぜかって言うと、
Guest
Guest
ブートストラップとかも使いづらいところの話なんですけど、あ、まず私はスタンスとして、テイルウィンドに対して、最終的なアプリケーションが、テイルウインドの
Guest
cssに依存することをぜとしているんですけど。なんでそれがそうかっていうと、
Guest
これって、そもそもブートスラップとかがのユーティリティで、mx1みたいなのが使われてきた歴史からしてそうだと思うんですけど、
Guest
大にして、ユーザーインターフェースって決められたそのuyの決まりえ、その例えば、
Guest
自社製のしのいいデザインガイドラインだったり、うんぬんから必ず外れたカプが出てくるとか、外れた方法にしたいっていうケースに、追収しきれないっていうために、
Guest
インポータントによるオーバーライブとかが結構行われてきたみたいな歴史があるかなと思
Guest
ていて、なんかそこには対して、例えばmx1みたいな0.25レームどこで使うの。みたいなぐらいのものがあることによって、何か。デザインシステムだとか、コンポーネントライブラリー内で吸収しきれないものを
Guest
そういった細かなところで微調整が効くっていうのは、実は私は一定以上の価値があるのかなっていう風に思ってるんですけど、そもそもいいいいと思ってるんだっけみたいな、すごい
Guest
そうっすね、そうっすね、すごいざっくりとうん、うん、なんかただこういうのってそのなんてしょう。ユーティリティがを乱用されると、すごく割も窓になると思
Guest
ていて、要はそこの安売として利便性。
Guest
私は、どっちかっていうと、細かなものがあることによって、なんでしょう。最終的なスタイル時書きがなくなる方
Guest
に、割れ窓を防げているとか、価値を感じているんだが、これってどうなんだろうっていうんですね、うん、どうなん
Guest
でしょうというこれ、単純に興味本位なんですけど、
Guest
それはまあありますよね。はい、うん、うん、なんかあのなんだっけ。スペーシングで言うと、なんか大体8ピクセルだけど、ここは12ピクセルにしたいみたいな
Guest
ところがある。
Guest
あ、でもそれで言うと逆も言える逆じゃないけど、なんだろう。その外れたところは、外れたところはあえて時書きになって、それが可視化されるっていうのも、それはそれで、自分は結構なんかよかったケースとして思ってるのがあって、そう。はい、
Guest
テイルウィンドのクラスで表せるやつは、クラスネーム。あ、jsxであのテイルウィンドで、あ、あのクラスで表せるところは、クラスネーム属性に書かれてて、
Guest
うん、ダメだったところは、スタイル属性に書かれるっていうのが、なんかあの、逆に貸しかされるんですよね。うん、
Guest
ああ、なるほどなるほど、それは構造化されてない部分、システム化されてない部分がわかそう。そう、そう
Guest
そうそうそうそうそうで、これがドットcssとかだと、その同じクラス名に外れた分と外れてない分が両方同じクラスに入るとかになるんですよ。
Guest
はいはいはいはい、うん、
Guest
うんこでうん、1個のくらなんだっけま、例えば1個のまあ特殊なまあ、なんか追加ボタンのクラスがあって、色とスペーシングはデザインシステムに従っているんだけど、
Guest
なんだまあ、なんでもいいや。まあ、ウィスとかLINEはいとでもいいんだけど、まあの特定の属性は外れてます。みたいな
Guest
ていうのがまい、1個のクラスにかけているみたいなケースでうん
Guest
で、そうしとけときに、じゃあそうえ。それをテレビングで書き直すと、クラステームズに
Guest
あの色とか、スペーシングのクラスがて色いなのがちゃんと使われていて、ダメだったところは、あえてスタイル属性で書かれていると、うん、あ、じゃ、ここはダメだったとこだったんだっていうのが
Guest
わかる。ああ、なるほどなるほど、うん、うん。だから。それは
Guest
システムを制定していくと、デザインシステムというもので、構造化していくってなると、かなりうん。確かに可視化される方が都合がいいっていうのは
Guest
そうですね。だから、これはものすごく特殊なコンポーネントをやっているか、え、デザインシステムにフィードバックすべきかのどちらかなんだという話になるわけですよ。っていうのがレビとけばわかるん。
Guest
うん、まあ確かにその視点はすごい。うん、確かに妥当かつ
Guest
うん、いいですね、それはなんでしょう。結果的に、デザインシステムへのフィードバックへのサイクルを生むことになりなりますし。
Guest
そうですね、はい、うん、確かにうんっていうことがさっき書いててあったんですよね。はい、
Guest
うん、そうそうそううん、
Guest
ああ、すごい納得感ありました、
Guest
ありがとうございますすごいあれですね。そのフィードバックっていうところは、ほんとにもう深く考えてて、すごい
Guest
いいとこですよね、
8. これからのCSS設計
Guest
ありがとうございます
Guest
はい、
Guest
で、このテイルウインドま、すごいま、色々なメリットがあるっていうことがお分かりいただけたと思うんですけど、も
Guest
ま
Guest
結構まい。今までもそのcsイジーもそのcssフレイワークも結構そういうcss、今までのcssに、
Guest
まあの問題点への解決策みたいなのっていうところの。まあ、位置付けだとは思うんですけど、もま、今後。もし
Guest
まだまだそのテウィンド普及していくと思うんですけど、もま、こう
Guest
どういったところがそういう。まあ、その色々な解決策の中でま差別化されていくかとか、どういうところが、
Guest
あの、そういうくべ、あの採用の決め手になるかっていうところが
Guest
ちょっと聞いてみたいなという風に思うんですけども、あの、これ、あの、じゃあ、ちょっと3人1人ずつに聞いてみたいと思います。じゃあ、私からえ、
Guest
いきますね、はいで、まあこのcssが
Guest
まあ、
Guest
こういうフレマークが登場したことによって、そのまあ今までの問題っていうのは結構そういう
Guest
そのか、その名前、その例えばベムであったりとかっていうのは、そういうそのまあ複雑さみたいなのが
Guest
ま色々出てきた中で、それに対する解決策みたいなのっていうところで、ま、それぞれ全部解決できる点ではあるとは思うんですけども。
Guest
まあ、今後まどういったところで、こういう複雑さが生まれるかなって思うと、
Guest
まあ、1つは多分メディアクリかなっていうところとか思っていて、結構ま、ここも。そのテイルミンドの特徴なんですけど、例えば、その
Guest
あのスモール幅のところでやったら、smコロンみたいな。窃盗辞でを付けることによって、解決するみたいなところがあったりするんです。結構ここって、
Guest
まあ、その好みが分かれるというか、解決策それぞれ違うところだなと感じていてま。今後そのまあただ
Guest
横幅以外にも結構ま色々と出てくるかもしれない。例えば、まあ、縦幅とか
Guest
あえば、あの、そのスクリーンかプリントかみたいなところとか、そういうの、どうやって解決するかっていうのは、多分それぞれのフレームークで違う解決策が
Guest
あるのかなと思っていて、ま。そこが割と注目したいところかなっていう風に個人的には思いました。
Guest
では、スパルさん何かこういう望む物みたいなのがあれば、
Guest
まあ、今上がったレスポンシブの問題とかは、まあ、そうだし、え、なんだろうな。まあ、
Guest
テロイントが解決した問題の1つとして、まあ大きいのがなんだろうね。あの
Guest
ま、特定の色だったら特定の色しか選んじゃいけないとか、まあなんだろう。うん、特定のうん、スペーシングしか選んじゃいけないっていう風に、まあ、なんかその
Guest
そうだな。まあ、選択肢が無限だったのが、なんかこのえば、選択肢から選ぶっていう感じになるたけですよ。うん、
Guest
そうですね、まあ、うん、まあエニーがえになったみたいな感じのうん
Guest
ことになっていて、で、実際そのデザイナーの言葉がまあ、あのさは多分あの、それによってのあの色はこれか、これかこれのこれになるっていう風に考えてるっていう風にまかる中で考えている。仕組みがあって、その
Guest
まあなんだろう。デザイナーさんの言葉に、まあその一致させて、行きやすさみたいなのがそのなんだろうな。
Guest
うん、
Guest
まあ割と重要になるというか。そうですね。
Guest
ま、デザイナーさんがまあのフィグマとかま、あとドキュメントなりで。定義している言葉をまあ、そのままで。そこに現れる選択肢としては、これとこれとこれがあるんだって
Guest
ま、そのまんま。cssに書き下せるようにまでまだから、クラス名とかの名前が
Guest
一致していくように、持っていけるっていうのは、まあ、やっぱりあ、うん、大きいのかなって思ってますね。はいはい、
Guest
あのね、うん、確かに確かにそういうマップ含めて
Guest
そうですね、そう共通共通ではないですよね、そのあの意識があのそう馴染になるっていうところっていうのはそうです。めちゃくちゃ大事なとこですよね、
Guest
ありがとうございますでは、ハトコーデさん
Guest
はい、ああ、そうですね、1つあるとすると、ここまで一切言及してなかったんですけど、
Guest
テイルウインドは結構テイルインドがなぜいろんなところで採用できるかっていうと、
Guest
ほんとに見た目だけをえ、これまでのシーフレームワークと同様、ほんとにシフレームマークとして、見た目だけに関与してきたからかなと思っていて、
Guest
つまりはえ、最近のコンポーネントライブ。じゃあ、例えばアントにしましょうかね。アントとかって、アントを導入した後に、ちゃんとした独自デザインにしようと思うと、
Guest
ルックアンドフィールのフィールの部分まで、オピニオンがついてしまってるのが結構カになるんですよね。
Guest
で、そこのルックだけに、関心を持っているっていうのが、テイルウインドのいいところかなと思っていてま。弱いとこでもあるんですけど、
Guest
なんか、そのルックに関する問題ってのは改善できて、かなり構造的に管理できるし、さらに
Guest
なんでしょう。ちゃんとデザインがある世界でも使えるcssフレークになってると思ってるんですよね。
Guest
そのかた、片手間でいい考える人がいないから、コンポーネントライブで使うとか、えーブ使うではなくて、ちゃんとデザインを考える現場で使える技術になってるのはそこがあるかなと思ってますと
Guest
で、ただ、そのフィールの部分ってっていうところは、テイルウィンドとかって、まだ例えば、その
Guest
トランジションとかを指定できるぐらいで、正直すごく弱いっていうのがあって、これをただのcssだけで解決できる気も。あんまりしていないっていうのがあって、ここのフィールの部分をどうやって
Guest
埋めていくんだろうっていうのは、なんかウォッチしないといけないかつ、それをしないと、やっぱり、コンポーネントライブラリーとの差を埋め切られないのかなとも
Guest
思っていて、cssって病気で考えるなら、ここは結構重要になってくるのかなと思っています。
Guest
うん、うん、うん、うん、
Guest
フィールじゃフィールっていうのは、割と広い意味での
Guest
そうですね。ま、そのなんでしょうまあ、そのただ性的な見た目以外って感じですかね。まあ、そのあそうさ、触り心地とかに影響するような部分ていうのに、
Guest
うん、どうやって響そうっすね。まあまあ、例えばその簡単な例で言うと、アニメーションとかでもいいと思うんですけど、例えばそのなんでしょう。
Guest
アントででで選択の画面をやると、こうにょんって出てきて、フェードして、選ぶまで全部は揃っちゃってるから、上書きしづらいみたいな話もそうだと思うんですけど、ま、そういったところまで含めて、どうやって
Guest
取り扱っていくのがいいんだっけ。あるいはそれをu愛、コンポーネント、ライブラリを上書きする以外の方法は、我々に何かあるんだっけっていうのは
Guest
考えていきたいよなっていうのが、
Guest
いやいや、大事だけど、めっちゃ難しそうですよね。結構そうち中症度が全然違う。
Guest
そうなんですよね、嫌なのでうん。
Guest
ただ、そこはテイルウィンドだけで解決できないんで、なんかどうしていくべきなんだろうなっていうのが
Guest
いや、すぐには答えてなさそう。
Guest
まて、そのゆその辺はちょっと見たい。なんか、なんか、解決策がを出すような事例があったら、積極的に試したいなと思ってるところ
Guest
で。そうですね。そうですね、ここ割とまあまあ私たちが出すべきところかもしれないし
Guest
もすべきところかもああまあうんややっていきましょうそ、
Guest
あまり出せるシーンはない。
Guest
いやいや、まあ結構じゃあそこが注目すべきところっていうとこですね。はい、ありがとうございます。はい
9. クロージング
Guest
というわけで、今回はえーテールウィンドcss
Guest
をテーマに。今後のまcssの設計、やま、色々なそういう
Guest
cssのま、これからについて話していきました。
Guest
私達ytのメンバーが所属するライン株式会社では、このようなフロントエンドに関する議論を日々行っております。
Guest
はいえ、今後もUITeサイトでは、社内社会とはどんどん情報を発信していきたいと思っています。
Guest
それでは、また次回のエピソードでお会いしましょう。つばさん、フォーディーさん、ありがとうございました。