#js

AWS SESの受信メールを暗号化してs3に保存しLambdaで読み込む

jsの場合、複合処理を独自実装する必要がある

Next.jsのPreview Mode時はAnalyticsを無効化する

cookieの__next_preview_dataキーで判定

Next.js 11

手軽にアップグレードできた

VSCode Remoteで新規ファイルを作った際にTypescriptのPathが認識されない問題

「Ctrl + Shift + P」でコマンドパレットを開いて「Reload Window」を実行

jsの正規表現で拡張子を除いたファイル名を抽出する

キャプチャしてreplaceで置き換えた

jsの正規表現で変数を使いたい

String.rawと組み合わせることでリテラル記法のように書ける

「Unit testing security rules with the Firebase Emulator Suite」でセキュリティルールのtestを学ぶ

ローカルでセキュリティルールのtestができるようになったのはありがたい

Next.js + Prism.jsでコードのSyntax Highlightをする

highlight.jsから軽量のPrism.jsに移行

Nuxt + TypescriptプロジェクトにSentryを導入する

リリースにコミットハッシュを設定しておくと調査しやすくなる

Mackerelのグラフ画像をSlackbotに展開させる

同一URLだと展開されないのでランダムなパラメータを渡すようにした

PrismaでMany-to-manyのテーブルを定義する

暗黙のルールにハマった

webpackでproductionビルド時にminifyしないようにする

minimize: falseを指定する

CloudRunで動くexpressサーバにtimeoutを設定する

server.setTimeout OR req.setTimeoutを使う

Lighthouseの「Links do not have a discernible name」に対応する

aタグにaria-labelを付与した

Github ActionでCloudfrontのキャッシュをクリアする

デプロイ後にキャッシュクリアを行うように設定

開発環境ではSentryのエラー通知を無効化する

開発環境ではdsnを設定しないようにする

Next.js + typescriptでpathsのエイリアスがModule not foundになる

next.config.jsに追記する必要があった

Nuxt.jsのservice workerで環境変数を切り替えられるようにする

設定情報をハードコードしたくなかったので、ビルド時にnodeコマンドでファイル生成を行い環境変数を切り替えられるように対応した。

yarn run実行時の不要なログを抑制する

silentオプションを指定する

Full Stack OpenでReactを学ぶ

最新のフロント開発について体系的に学べる

ncuでpackage.jsonを更新する

yarn upgrade-interactiveだとpackage.jsonは更新されない

spawnSync /bin/sh ENOBUFS

第二引数に{ stdio: 'ignore' }を追加しログ出力を無効化した

react-hook-formとReact Datepickerを組み合わせる

Hook FormのControllerを使う

fastifyのLifecycle

公式ドキュメントを読もう

初めてのGraphQL

コードを書けばそのままAPI仕様のドキュメントになるのは便利

LINE Messaging APIでアカウント連携機能を作る

ドキュメントがしっかりしていて迷わず実装できた

Gridsomeで構造化マークアップに対応する

metaInfoにJSON-LD用のscript設定を追加する

Next.jsアプリケーションをPWA対応させる

next-pwaを使うとシンプルにPWA化できた

CircleCIでFirebaseHostingに自動デプロイする

workflowsのfiltersを使ってproductionブランチの場合のみbuildとdeployを行う

RaspberryPi ZeroにNode.jsの最新版をインストールする

vercel/install-nodeを使うと手軽にインストールできた

Next.jsで環境に応じて特定のページを非表示にする

NODE_ENVでredirectsを出し分けた