ゆずめも

メモ的なブログです。主に勉強した事について書いてます。

typescript

slackに毎日情報を流しているbotをcloudflare workersに移植してみる

前の記事で調べていた時にschedule triggerを使えば無料枠でもcron的な事ができそうだったので移植で素振りしてみる yuzu441.hateblo.jp cloudflare workersでslack botを動かすには@slack/botは動かないらしいので、以下の記事で紹介されているものを使う z…

cloudflare workerを始める

cloudflare workerずっと気になってたのでhelloworldとそのテストを触ってみたメモ 事前にアカウントは作っておいたのでプロジェクト作る所から。 プロジェクトを作る pnpm create cloudflare@latest これを実行するとcliでログインしていなければブラウザが…

chakra-uiでthemeからカラーコードを取得する

chakra uiのテーマ機能を使用しgray.300のような値を特定のカラーコードに変換できるようになっているが、chakra uiのコンポーネントでは無いものに値を渡すに当たってカラーコードハードコードするのも…と考えていた所、ちゃんとカラー文字列をカラーコード…

astroを実践投入してみた

所属企業のHPのホスティングサービスを引っ越ししようとしたら、最新LTSのnodejsでビルドできなくなっていて会社に相談した所手を入れる時間を確保できたのでライブラリのアップデートなど色々手を入れてみた。 astro.build tl;dr astro簡単に導入できたし、…

aws-cdkでapigatewayに独自ドメインを設定する

自分のメモ用 前提 紐付けたいドメイン(例: example.com)をroute53に登録し、NSレコードのdns設定が済んでいる。 独自ドメインを設定するための定義 api gatewayにapi.example.comを設定する import * as apigw from "aws-cdk-lib/aws-apigateway"; import…

tanstack-routerのquick startやってみた

健康診断に向かってる途中にtwitter見てたらtanstack-routerが発表されていた。 100% Typesafeと書かれているのが気になってとりあえず試してみることにした。 そこでソース読んだり色々試す前にquickstart動かしてみようと思ったら地味にハマったのでそれの…

prismaのquickstartであるstarterを1から作ってみた

prismaのquickstartはすぐにできたので、この環境を0から作ってみる sqliteの説明はないのでDBは適当に選択した www.prisma.io 今回はyarnとesbuild-registerでやる やってみたソース github.com プロジェクトの作成と必要なもののインストール yarn init -y…

ts-jestではなくesbuild-jestを試してみる

開発にgoogleapisを使っているとtscが遅くなってしまったのでテストの実行だけでも早くならないかと思い調べるとesbuild-jestとswr-jestというのがあることを知った github.com github.com aws-cdkの@aws-cdk/aws-lambda-nodejsがbuildにesbuildを使っている…

typescript 4.5 betaでes modulesを試す

node.jsでes modulesがサポートされた時にやってみようと思ったがts→mjsに変換する方法が無くて諦めたやつができるようになったっぽいので試してみた。 devblogs.microsoft.com 一応試したコードはgithubに上げてある。 github.com インストールと設定 beta…

javascriptのオブジェクトから特定のプロパティを取り出しつつeslintのlintを回避する

javascriptであるオブジェクトから特定のプロパティを除いたオブジェクトが欲しい時にdeleteではなくSpread構文を使って取得し、その際のeslintのlintの対応をしたメモ developer.mozilla.org 特定のプロパティだけを取り出す Spread構文を使ってプロパティ…

node.jsでgoogle recaptcha v3の検証をする

クライアント側で取得したGoogle reCAPTCHA トークンの検証をNest.jsでやろうと思ったら、無駄にハマったのでメモ tl;dr データをapplication/x-www-form-urlencodedで送れ 検証方法 公式のドキュメントで指定されているエンドポイントに対してPOSTでクライ…

Nest.jsで特定のAPIだけset-cookieを削除する

gaeにデプロイされているNest.jsプロジェクトで、レスポンスをエッジサーバーにキャッシュさせたい。 tl;dr いい感じのHeader設定すればキャッシュできそう csurf使ってるとset-cookieが邪魔 interceptorでresponseのheaderからset-cookieヘッダーを削除 GAE…

nestjsでpostのraw bodyを取得する方法

webhookのverificationでbodyParseされてないraw bodyが必要になって割と困ったのでメモ tl;dr 結局方法3で実装した ダメだったやり方 検索すると一番最初に以下のstack overflowが引っかかって、raw-bodyというnpmモジュールをインストールしてrawbodyを渡…

nest.jsで特定のパスだけcsrufのチェックを回避する

nest.jsで開発をしていて、webhookを利用したい時に特定のパスだけcsurfチェックを外したい時に公式の説明とかだと「csrfのガードの前に特定のエンドポイントを設定する」方法しか書かれていなくてnestでは使えなかった。 そのため直接app.use(csurf())する…

tsでクラスからファンクション以外のプロパティを抜き出した型を作る

Typescriptでコードを書いていてクラスの型から関数以外を抜き出した型が欲しくて、typescript meetupでMapped Typesとかのセッション見て頑張ったらできるのではということでやってみた typescript-jp.connpass.com 要するに以下のようなクラスからxとyだけ…