Open10
ベストイレブン研究所 | ElevenLabo 開発記録
久しぶりに個人開発を開始
今までは何となく XXX を作ってみよう!でスタートしていつも途中退場してたので、今回はアプローチを変更する
- テーマ(個人開発の内容)を決める # ここまでは今までと同じ
- 最初にFigmaを書いて、初回リリースの内容を確定する
- あれもできたらいいな、みたいな所謂Nice-To-Haveな画面や機能を極限まで減らす
- 対応する画面を減らす
- 今回はwebかつスマホ向け画面のみ作成する
- とはいえ、今後の自分や仕事につながる要素、チャレンジ要素も大事にする
当面やること
- Figma作成
- 初回リリース内容を確定
- Githubリポジトリ作成
- Docker + devcontainer環境を作成
- vscodeの設定を作成
- Nextjs の AppRouter で create-next-app
- linter と formatter に Biome を選定
- デザインコンポーネントにChakraUIを利用(サーバーコンポーネントには使えない)
- storybook を使ってみる
- storybook に ChakraUI を組み込んでみる
- 一旦Vercel にデプロイ
- CIを整える(depedabot & test & lint & format & tsc)
- Database 選定 -> Vercel Storage (Neon PostgreSQL)
- Storage 選定 -> Vercel Storage
- BaaSで対応するか考える & BaaS選定 -> Vercel で対応する
- IDaaS 選定 -> Clerk
Storybook に ChakraUI を組み込む
手順
$ yarn add -D @chakra-ui/storybook-addon
theme を 組み込んであげないとエラーになるので、雑にtheme.tsを作って利用
# src/app/theme.ts
export default {
// なにもしない
};
# .storybook/preview.ts
import type { Preview } from "@storybook/react";
import theme from "../src/app/theme";
const preview: Preview = {
parameters: {
chakra: {
theme,
},
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/i,
},
},
},
};
export default preview;
公式Doc
不慣れながらもある程度Figma頑張ってみた
deploy してみた
すごい参考になった。
横幅360pxのデバイスを基準点として、すべてのサイズをremで表現する手法
アイコンをドラッグして任意のポジションにセットする場合、event.movementX や event.movementY で位置を算出するが、これがpx単位のためremに変換する必要がある。
下記でざっくりremに変換して対応するとうまくいきそう
rem = px / (10 * ( window.innerWidth / 360 ))
すごい
この記事だと svg をドラッグしてグリグリ動かしてるけど、div要素でも問題なくいけた
これは素晴らしい記事だ
Github の README をしっかり整えてみた。
やっぱり画像系が加わるとすごく魅力的になる。
フォーメーションが動かせることが一目でわかるGIFを配置したのがなによりよかった。勿論OGP画像も。
あとは技術スタックをバッチ表示もわかりやすい。
むむ、これ使ってみよう