Skip to content

Latest commit

 

History

History
14 lines (11 loc) · 1.95 KB

File metadata and controls

14 lines (11 loc) · 1.95 KB

概要

これは開発中の分散型SNS Concrnt のクライアントを開発するプロジェクトです。 このレポジトリ一つで、モバイルアプリ版であるapp、webブラウザ版であるwebを開発しています。 この二つのディレクトリ内のコードは極力同じに揃えつつ、例えばルーティングなどのプラットフォーム固有の部分は差分を設けています。

ほかにも、共通して使う、Concrntにおける低レベルなapiライブラリであるclient, このクライアント独自の処理を加えた高レベルなapiライブラリであるworldlib、そして共通して利用するui用のディレクトリがあります。

開発時は、基本的に外部のプロセスでpnpm devがすでに実行されているため、これを内部から呼び出す必要はありません。

コーディングにおける注意点

  • ユーティリティー関数を極力作成しません。コードの重複を恐れないでください。同じコードを利用する部分が10を超えたとき、 そのときに初めてユーティリティー関数を作成することを検討してください。
  • 上記と関連し、cssスタイルを共通化したオブジェクトを作成することも避けてください。これらは、コンポーネントになるべきです。
  • 極力uiライブラリを生で使うようにしてください。uiライブラリをラップするコンポーネントは、機能が追加さる場合のみです。スタイルだけを変更したuiコンポーネントを作成することは避け、それぞれの場所でcssを直接埋め込んでください。
  • classNameは一切使わないでください。アニメーションや特定ライブラリのために必要な場合のみ、classNameを使うことを許可します。かわりに、style属性をつかい生のオブジェクトを渡してください。