並び順

ブックマーク数

期間指定

  • から
  • まで

1801 - 1840 件 / 2783件

新着順 人気順

*JavaScriptの検索結果1801 - 1840 件 / 2783件

  • [すべて無料]Remix+Cloudflare Pagesでブロクシステムを作成する | 空雲 Blog

    上記構成で作りました。 バックエンドとフロントのビルドを統合したかったので、GraphQL サーバは、Remix に載せる形になっています。この構成の凄まじいのは、ローカル環境からコマンドを実行して約 17 秒で、CloudflarePages にビルド込みでデプロイされることです。 Next.js から Remix への移植理由 もともと React のフレームワークは Next.js を使っていました。しかし商利用も可能で制限がゆるい Cloudflare Pages をインフラとして使いたかったので、相性の良い Remix に移植することにしました。 一応 CloudflarePages でも Next.js は動くのですが、私の Blog システムで Edge 設定を行うと、謎のビルドエラーが出ました。配置したファイルの数を減らすと内容に関係なく何故かビルドが通ります。容量的に問題

      [すべて無料]Remix+Cloudflare Pagesでブロクシステムを作成する | 空雲 Blog
    • 次世代Rx「R3」解説 - Qiita

      今回の内容 C#向けの新しいReactiveExtensions(Rx)ライブラリ「R3」について、従来のRxとの変更点を紹介します。 R3について リポジトリ R3 開発元はUniTaskやMagicOnionなどを公開しているCysharp社であり、メインの開発者はUniRxの作者でもあるneuecc氏です。 どんなライブラリか 「R3」はReactiveExtensions(Rx)を現代に合わせてより洗練した形に再定義/再実装した、C#用のライブラリです。 というのも、Rxは10年以上前に登場した概念であり、当時はまだ非同期処理に対するベストプラクティスが模索されていたタイミングでした。 そのためRxは「LINQをEventにも適用できる」という側面も持ちつつ「非同期処理にも用いることができる」という2つの側面をもった、少しややこしいライブラリとして登場しました。 そして2024年現

        次世代Rx「R3」解説 - Qiita
      • Node.js / Deno の徹底討論を Node 学園で行いました。 - from scratch

        3/17 に徹底討論という形で denoland の 日野沢さん をお呼びして Node学園で徹底討論という形で討論しました。 いくつか面白いトピックがあり、参考になると幸いです。 少しだけ紹介します。 ESM vs CJS ESM と CJS の対応が Node.js がグダグダだと思っていると言われた点がありました。 討論内でも Twitter を見ていても、そういう意見があって、意外だなーと思いました。 もちろん現実的に ESM / CJS の移行は今はまだ過渡期です。既存のエコシステムを壊さないために CJS との相互運用性を持ち込むしかなかったという状況においては現時点の拡張子やpackage.jsonでの指定で識別可能にし、既存のエコシステムを壊さないように乗り切ったというところはむしろ評価していました。この移行措置が無く、もしも Node.js v20 からは ESM でしか

          Node.js / Deno の徹底討論を Node 学園で行いました。 - from scratch
        • JSONの小ネタと、JSONに対する拡張

          JSONは最も普及したデータ形式の一つでしょう。JSONの仕様はECMA-404やRFC 8259として標準化されています。 ECMA-404 - Ecma International RFC 8259 - The JavaScript Object Notation (JSON) Data Interchange Format 細かいネタ 文字コード RFC 8259では、外部と交換するJSONテキストはUTF-8でエンコードされなければならないということになっています。BOMは禁止です。昔のRFCではUTF-16やUTF-32も許容されていました。 ただし、キーや文字列の中身としては単独のサロゲート(例:"\uD800")は禁止されていません。JSONのキーや文字列はUnicodeスカラー値の列とは限らないのです。 UTF-8を前提とする実装にとっては、単独のサロゲート(不正なUTF-

            JSONの小ネタと、JSONに対する拡張
          • node-jsonwebtokenで学ぶJWTのalg=none攻撃 - Qiita

            Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

              node-jsonwebtokenで学ぶJWTのalg=none攻撃 - Qiita
            • Nx Agentsを導入してフロントエンドのCIを約40%高速化しました - Findy Tech Blog

              ファインディ株式会社でフロントエンドのリードをしている新福(@puku0x)です。 弊社では Nx を活用してCIを高速化しています。この記事では、最近導入した Nx Agents でフロントエンドのCIをさらに高速化した事例を紹介します。 Nxについては以前の記事で紹介しておりますので、気になる方は是非ご覧ください。 tech.findy.co.jp フロントエンドのCIの課題 Nx Agents Nx Agents導入の結果 Nx Agents利用上の工夫 プロジェクトを細かく分割する Node.jsのバージョンを揃える キャッシュの活用 特定のステップの省略 高度なエージェント割り当て まとめ フロントエンドのCIの課題 これまで「キャッシュの活用」や「並列化」「マシンスペックの向上」といった工夫により、フロントエンドのCIを高速化してきました。 しかし、コードベースの増大により時間

                Nx Agentsを導入してフロントエンドのCIを約40%高速化しました - Findy Tech Blog
              • スタディサプリENGLISH の web フロントエンドプロジェクトで Renovate を半年運用して得た Tips 8選 +α | リクルート テックブログ

                前置き スタディサプリENGLISH の web フロントエンドアプリは、実に多くの node モジュールライブラリ(以下、ライブラリ)に支えられています。 当初は開発メンバーが有志でそれらのライブラリを手動アップデートする運用で回していましたが、2021年3月頃より Renovate を本格導入することで依存ライブラリのアップロードを自動化する運びとなりました。 Renovate とは Whitesource Renovate: Automated Dependency Updates プロジェクトで依存しているライブラリ等のアップデートを自動化してくれるツール(≒ サービス)です。依存ライブラリのバージョニングを監視し、アップデート版が公開されるとそれに追従するためのプルリクエスト(以下、プルリク)を自動で作成してくれるという優れものです。かつては有償のサービスでしたが1)セルフホステ

                  スタディサプリENGLISH の web フロントエンドプロジェクトで Renovate を半年運用して得た Tips 8選 +α | リクルート テックブログ
                • Renovateの導入と半年間の運用の振り返り

                  TERASSのsunadoiです。 みなさん、ライブラリのアップデートは定期的にしていますか。 今回はライブラリを定期的にアップデートするという目標を掲げてプロジェクトにRenovateを導入してから半年程経ったのでその振り返りを残しておこうと思います。 実際に半年ほど運用してみて知見が溜まってきたので、どんな感じの設定をしているかを導入当時の背景とともに紹介しつつ振り返っていきます。 導入したプロジェクトの構成はReact, TypeScript, Cloud Functions for Firebaseのモノレポです。 Renovateとは プロジェクトの依存関係の更新を自動化してくれるツールです。 npmライブラリだけでなく、GitHub Actionsで使うコマンドやDockerイメージのバージョンなんかも監視してくれて、バージョンアップのためのPR作成まで自動で行なってくれます。

                    Renovateの導入と半年間の運用の振り返り
                  • Next.js の fetchCache を考える

                    Next.js App Router は global のfetch関数に patch をあてており、自動でデータ取得が最適化されるように設計されています。そのうちの一つが、取得したデータをキャッシュし、再利用する最適化です。キャッシュされた取得データは、必要に応じて任意のタイミングで Revalidate(データ再取得・キャッシュ更新)が可能です。本稿はこのfetch関数を経由してキャッシュされる「fetchCache」について、どのように向き合うべきか考察したメモです。 検証留意点 はじめに、筆者が検証にあたり留意した点を書いていきます。本稿を読んでみて「自分でも検証してみたい!」となった方は、参考にしていただければと思います。 【1】取得データがキャッシュされるタイミング タイミングは2通りあります。 ビルド時: next buildで Next.js アプリをビルドした時 リクエス

                      Next.js の fetchCache を考える
                    • head内の各要素とその重みをリスト化し、プライオリティが高い順に並べ替えてくれるツール -capo.js

                      head内に記述する要素の順番はページのパフォーマンスに影響を与える可能性があります。記述の順番が間違っている要素を特定し、プライオリティが高い順にしてくれるツールを紹介します。 指定したページのhead内の各要素とその重みをリスト化し、プライオリティが高い順に並び替えたものもリスト化してくれます。 2023年最新版: HTMLのheadの書き方、head内に記述する要素の総まとめ capo.jsの使い方 capo.jsを実際に使ってみた capo.jsの使い方 capo.jsを使用するには、2通りの方法があります。 デベロッパーツールのスニペットで実行する ブックマークレットで実行する 手順は簡単です。 capo.jsのJavaScriptをコピーします。 コピーしたJavaScriptをデベロッパーツールのスニペットで実行するか、ブックマークレットを作成します。 ※ブックマークレットは

                        head内の各要素とその重みをリスト化し、プライオリティが高い順に並べ替えてくれるツール -capo.js
                      • Rust+WASMでWebクローラーのXMLパースを高速化

                        本記事はストックマークAdvent Calendarの21日目の記事です。 はじめに こんにちは、ストックマークの谷本です。 ストックマークでは、ビジネス情報に特化したデータプラットフォームを独自に構築しています。 本記事では、そのデータプラットフォームの中核であるWebクローラーのパフォーマンスを、Rust+WASMでコスパ良く改善できたという事例を紹介したいと思います。 何が問題だったか Webクローラーは、国内外のニュースサイトや企業サイト、ブログを回覧してビジネス情報をデータ化します。 そのさい、読み込むSitemapやRSS(これらはXML形式で配信されています[1])のサイズが大きいと解析にかなり時間がかかり、想定していた処理時間を超えてタイムアウトエラーを起こすケースがありました[2]。それが少数のサイトであればまだインパクトは小さいですが、回覧するサイトは日々増えており、W

                          Rust+WASMでWebクローラーのXMLパースを高速化
                        • HTMLでLottieを配置する方法 - ICS MEDIA

                          「Lottieロッティー」はベクター画像のアニメーションを実現できる技術・ファイルフォーマットです。 Lottieアニメーションの作り方編の記事(Figma編、After Effects編)では、Lottieの概要から作り方、ファイルの書き出し方までを紹介しました。本記事では、Lottieアニメーションの実装方法について紹介します。 Lottieの組み込みはプラットフォームに応じたさまざまな実装方法が用意されていますが、一般的なウェブの方法を例に紹介します。実装編の前編となる本記事では、手軽に組み込むことができるWeb Playerツールを使用して実装します。 アニメーションの実装 ウェブ向けの実装方法は大きく2パターンあります。HTMLメインの方法と、JavaScriptメインで実装する方法です。 HTMLメインで実装:dotLottie-wc 後述する「dotLottie-web」をウ

                            HTMLでLottieを配置する方法 - ICS MEDIA
                          • 「The Art of WebAssembly」を読んだ - dackdive's blog

                            The Art of WebAssembly: Build Secure, Portable, High-Performance Applications 作者:Battagline, RickNo Starch PressAmazon 読んだので簡単なまとめを。 この本について 前半は WebAssembly の基本的なしくみや Node.js・ブラウザで動かす方法、後半はパフォーマンス測定やデバッグ方法について学べる本。 また、特定の言語やツールチェイン(たとえば Rust だったら wasm-pack とか)に依存した内容ではなく、WAT と呼ばれる WebAssembly のテキスト表現を書きながら実装する。 構成 ざっくり Chapter ごとにやってることを書く。 Chapter 1: Introduction to WebAssembly WebAssemblyとは何か、その

                              「The Art of WebAssembly」を読んだ - dackdive's blog
                            • monorepo開発を快適にするツール選定

                              先日、location-stateというパッケージについての記事を公開しました。 履歴に基づいて状態を復元できるReact系ライブラリで、現在はNext.jsを重点的にサポートしています。このライブラリの構成はcoreとなる部分とNext.js依存な部分を切り離しscoped packageとし、内部構成もこれに合わせていわゆるmonorepo構成で開発を行なっています。 @location-state/core: coreとなる部分 @location-state/next: Next.js依存な部分 この記事では、monorepoのパッケージ開発を快適にするために実際に採用したツールを紹介していきます。本稿で紹介するツールは以下になります。 pnpm turborepo tsup changesets Renovate pnpm まずパッケージマネージャーですが、個人的に最近はpnpm

                                monorepo開発を快適にするツール選定
                              • ESLintのローカルルールで独自のコーディング規約を実装する - ドワンゴ教育サービス開発者ブログ

                                この記事はドワンゴ Advent Calendar 2023 の 22 日目の記事です。 ドワンゴ教育事業Webフロントエンドチームの berlysia です。1 この記事では、オンライン学習サービスN予備校の開発を支えるコーディング規約の考え方に少し触れ、その運用を支えるESLintの活用を紹介します。 この記事の内容は、他社様主催イベントにて発表した内容の再構成です。 speakerdeck.com コーディング規約は実行可能にしたい 教育事業のWebフロントチームには、細かいコーディング規約が書かれた文書は存在しません。コーディング規約はESLintをはじめとする各種ツールによって、自動で検出・修正可能な形になっています。 文書という形でなく、各種ツールのコンフィグファイルとそのコメントとしてまとまっている、と言い換えてもよいかもしれません。ドキュメンテーションは重要な仕事ですが、そ

                                  ESLintのローカルルールで独自のコーディング規約を実装する - ドワンゴ教育サービス開発者ブログ
                                • JSのデザインパターンライブラリを試作した話と、それをJSRにアップロードしたら無茶苦茶簡単で感動した話

                                  デザインパターンライブラリを作った JSRの話だけ読みたい人は読み飛ばしてもOKです。 JavaScriptのtry-catchはC++の影響を受けており、以下の特徴があります。 (A) throwは大域脱出的である。 (B) try-catchはブロック内の全ての例外副作用に対して一括で作用する。 (C) try-catchは文であり、値を返せない。 (D) TypeScriptにおいて、例外型は明示されない。 このうち (B), (C), (D) の問題を解決するため、RustのResultや類似のパラダイムをJSに輸入する試みがしばしば行われています。しかしこの解決手段にはいくつかの問題があり、 (E) rethrowの専用構文がないためボイラープレートが増える。 (F) 出力ストリームに対するwriteなど、戻り値を持たない副作用関数に対するエラーハンドリングが抜け落ちないようにL

                                    JSのデザインパターンライブラリを試作した話と、それをJSRにアップロードしたら無茶苦茶簡単で感動した話
                                  • ライブラリ自動更新にrenovateを導入してみる - APC 技術ブログ

                                    renovate導入の話 みなさんはアプリケーションで使用しているライブラリ等の更新どうされていますか? 手動で行われていますか?それとも何か自動ツールを利用されていますか? 今回はそうしたライブラリ等の自動更新ツールであるrenovateを導入したときの 模様をお伝えしたいと思います。 といっても、インストールなどの方法は様々なところで紹介されているので省略し、導入過程でどういった状況になったかという ところをお伝えしたいと思います。 最初の実行 いくつかアプリケーションを開発していますが、まずは最初に Typescript / Node.js / NestJS を技術要素とするアプリケーションに 適用してみました。 まずは何も設定を行わず、単純にrenovateコマンドを実行しただけの状態です。 すると・・・出ました、たくさんのPull Requestが。初期状態だと以下のような動作を

                                      ライブラリ自動更新にrenovateを導入してみる - APC 技術ブログ
                                    • 「こんなにも愛してくれた人がいた」孤独死した67歳の弟は寂しい人生? 姉がたどり着いた意外な真実(47NEWS) - Yahoo!ニュース

                                      人嫌いで変わり者の弟が2021年、故郷の関西を遠く離れた札幌市で孤独死した。67歳だった。知らせを受けた大阪に住む姉は想像した。「きっと寂しい晩年を送っていたのだろう」。しかし、飛行機に乗って弟宅の整理に訪れると、ある女性の存在が浮かび上がってきた。「ひょっとして幸福な人生を送ったのかもしれない」。そう思い直した姉は、弟と女性の影を追い始めた。(共同通信=武田惇志) 遺族と対話、感謝を胸に 孤独死見つめる特殊清掃員 ▽突然の連絡 2021年6月、大阪府八尾市で事務所を営む司法書士の増田正子さん(51)は、旧知の女性から「弟と連絡が取れなくなった」とLINEでメッセージを受信した。 送り主は、尼崎市出身で八尾市在住の主婦、永江(旧姓、川崎)洋子さん(73)。洋子さんには、3歳年下で気むずかしい性格の弟、雅樹さんがいた。 雅樹さんは京都府の私立大学を卒業後、華道の流派団体に職員として就職。40

                                        「こんなにも愛してくれた人がいた」孤独死した67歳の弟は寂しい人生? 姉がたどり着いた意外な真実(47NEWS) - Yahoo!ニュース
                                      • GitHub - embedpdf/embed-pdf-viewer: A PDF viewer that seamlessly integrates with any JavaScript project

                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                          GitHub - embedpdf/embed-pdf-viewer: A PDF viewer that seamlessly integrates with any JavaScript project
                                        • SharePoint のファイル管理機能をどう使っていくべきか?

                                          COVID-19 の影響も後押ししているようで、多くの組織で急激に Microsoft Teams の導入が進み、同時に Power Platform の人気もあり  SharePoint を意識的に使い始めた人も増えているようです。Teams では SharePoint は切っても切り離せない関係にありますし、Power Platform と SharePoint を連携させる業務も多いため当然といえるでしょう。20年弱 SharePoint に携わり続けている私としては、かつてに比べて SharePoint の認知度が随分と上がっていて(それでも知らない方がもちろん多いんですが)、感慨深く思っています。 ちなみにTeams と SharePoint の関係性については昨年末に日経BP社より発行した拙著『ひと目で分かる Microsoft 365 SharePoint 運用管理編』で詳し

                                            SharePoint のファイル管理機能をどう使っていくべきか?
                                          • tigerbutter on Twitter: "まさか永代供養の広告で「包丁人味平」の文字を見るとは https://t.co/7JjjbvJQ2A"

                                            まさか永代供養の広告で「包丁人味平」の文字を見るとは https://t.co/7JjjbvJQ2A

                                              tigerbutter on Twitter: "まさか永代供養の広告で「包丁人味平」の文字を見るとは https://t.co/7JjjbvJQ2A"
                                            • 顧客体験(CX)とは|CX向上が必要な3つの理由とは?

                                              「顧客体験ってなんだろう?」 「顧客体験を向上させるにはどうしたらいいのかな?」 このようにお考えではないですか? 顧客体験(カスタマーエクスペリエンス、CX)とは、顧客と企業やブランドが接触するあらゆる接点での顧客の体験のことです。 顧客体験が指す範囲は、商品・サービスの利用時だけではありません。購入前から購入後に至るまで、すべての体験を含んで「顧客体験」といいます。 顧客体験で重要なのは、顧客の心の動きです。顧客が抱く感情や心境の変化などの心理的な体験も含んだ概念が顧客体験となります。 このように、顧客が商品やサービスを購入、利用するための全ての接点が顧客体験となるのです。 商品以外の価値に顧客が満足すれば、それは競合他社に対する差別化となります。顧客が商品のコストパフォーマンスとは別に、「この企業の商品やサービスを使いたい」と感じてくれれば離脱せず、ロイヤルカスタマーへと育ってくれる

                                                顧客体験(CX)とは|CX向上が必要な3つの理由とは?
                                              • 900以上のアニメーションが利用できる無料モーションライブラリ 『Noitom mocap.market 』

                                                無料モーションライブラリ『mocap.market 』 『mocap.market』は、Perception Neuron を開発する Noitom による無料モーションライブラリです。このモーションライブラリでは、Noitomによって開発された Perception Neuron でキャプチャされた900以上のアニメーションにアクセスすることができます。モーションはすべてPerception Neuron Studioで作成され、Noitom独自のキャプチャ・録画ソフトウェア Axis Studio から直接エクスポートされているとのことです。 すべては確認していませんが、モーションは、FBX、CSV、MBX形式でダウンロードすることができ、CC BY-SA 4.0 ライセンスの下で利用可能です。 mocap.market ウェブサイトへ Noitomについて 2011年に設立されたNo

                                                  900以上のアニメーションが利用できる無料モーションライブラリ 『Noitom mocap.market 』
                                                • Unityのゲーム開発でよく使うOSS一覧

                                                  はじめに Unityでゲーム開発でよく使うOSS一覧をまとめておきます。 (カテゴリごとにどこかで整理します) 注意 過去の経験に基づいていますが、大規模のスマホゲーム・個人規模のインディーゲームなどいろいろ混ざっています。ただデフォルトのものをいれており、プロジェクトの設計思想などによるものは(独断と偏見で)いったん省いています OSS一覧 UniTask async/awaitライブラリ unity-overwriter Unityにアセットを追加する際に上書きを可能にする拡張機能 ZString 文字列連携(StringBuilder)のZero Allocationのライブラリ NaughtyAttributes インスペクター拡張 LitMotion Zero Allocation Tweenライブラリ R3 Rxのライブラリ UniRx Rx系ライブラリ(新規で入れるなら、R3

                                                    Unityのゲーム開発でよく使うOSS一覧
                                                  • 【AWS】Next.js+LaravelをECS+Fargateにデプロイする時のアレコレ | yutaro blog

                                                    最近業務でNext.js+LaravelのアプリケーションをAWSのAmazon ECS(Fargate)にデプロイするタスクを担当しているので、デプロイするにあたりNext.js側、Laravel側でやっておくこと、エラー対応などをまとめておく。 ECSへのデプロイはEC2へのデプロイに比べそもそもネットに情報が少ないECSの中でもデータプレーン(コンテナ実行環境)にEC2を使った記事が多くFargateを使った記事はかなり少ないECS+Fargateへのデプロイでも本記事のようなフロントエンド+APIの構成のデプロイ例はマジで少ない という状態で結構苦戦したので、自分で苦戦したことを残しておくとともに同じ構成でデプロイする方に向けて参考になれば嬉しいです。 ECS、ECR、Fargateについての技術説明・全体的なデプロイ作業の手順についてはこの記事では扱わないが、この記事(というかZ

                                                      【AWS】Next.js+LaravelをECS+Fargateにデプロイする時のアレコレ | yutaro blog
                                                    • Nova.js - A collection of dependency-free React hooks

                                                      A collection of dependency-free React hooksCarefully developed React hooks that you can copy and paste into your projects.

                                                      • Next.js 12.3

                                                        We've shipped some quality-of-life improvements to Next.js with 12.3: Improved Fast Refresh: .env, jsconfig.json, and tsconfig.json files now hot reload. TypeScript Auto-Install: Add a .ts file to automatically configure TypeScript and install deps. Image Component: next/future/image is now stable. SWC Minifier: Minification with the Next.js compiler is now stable. New Router + Layouts Update: Imp

                                                          Next.js 12.3
                                                        • Next.jsで不要なファイルを一掃する

                                                          Knipというツールが便利。JaveScriptやTypeScriptで書かれているプロジェクトの未使用のファイルやexportを見つけることができる。 Find unused files, dependencies and exports in JavaScript and TypeScript projects https://knip.dev/ インストールせずに使いたいのでnpxコマンドを使って実行する。 また、Next.jsのプロジェクトで使いたいのでプラグインを導入する。 上記のプラグインの中にNext.jsがあるのでこれを使う。 knip.jsonというファイルをプロジェクトのルートに配置する。除外したいディレクトリはignoreで指定できる。 { "ignore": [ "hoge" ], "next": { "entry": [ "next.config.{js,ts,c

                                                            Next.jsで不要なファイルを一掃する
                                                          • GitHub - 5alidz/tiny-schema-validator: JSON schema validator

                                                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                              GitHub - 5alidz/tiny-schema-validator: JSON schema validator
                                                            • GitHub - yeemachine/kalidokit: Blendshape and kinematics calculator for Mediapipe/Tensorflow.js Face, Eyes, Pose, and Finger tracking models.

                                                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                GitHub - yeemachine/kalidokit: Blendshape and kinematics calculator for Mediapipe/Tensorflow.js Face, Eyes, Pose, and Finger tracking models.
                                                              • スキーマバリデーションライブラリの標準インターフェース standard-schema

                                                                スキーマバリデーションライブラリはここ数年で人気を集めています。多くのライブラリが登場する中で、standard-schema はスキーマバリデーションライブラリの標準インターフェースを提供します。これにより、エコシステムツールがユーザー定義の型検証ツールをより簡単に受け入れられるようにすることを目指しています。 Zod や valibot, ArkType などを代表とするスキーマバリデーションライブラリはここ数年で人気を集めています。これらのライブラリは TypeScript の型システムを活用してスキーマを定義し、それに基づいてバリデーションを行います。バリデーションを行った結果は型安全に扱うことができるのが特徴です。 ユーザー入力のように外部からのデータを安全に扱いたいような場面では、スキーマバリデーションライブラリは非常に有用です。Next.js の Server Actions

                                                                  スキーマバリデーションライブラリの標準インターフェース standard-schema
                                                                • Next.js で React Compiler を試しつつ出力コードを見てみる

                                                                  React Compiler React 19 Beta から React Compiler が導入され利用可能となりました。 ※単体での検証としては次の記事が参考になります。 Next.js での利用 React Compiler のドキュメント内には、各種バンドラやフレームワークで利用する方法も記載されています。 というわけで、Next.js で実際に試してみよう、というのがこの記事の主旨です。 事前準備 / セットアップ 基本的にドキュメントに従って進めます。注意点としては、執筆時点での Next.js の Stable バージョン 14.2 ではまだ React 19 が利用できないため、canary バージョンの利用が必要です。 適当なディレクトリを作成し、その中で create-next-app を実行します。 実験用のためオプションは適当に選択しますが、せっかくなので Tur

                                                                    Next.js で React Compiler を試しつつ出力コードを見てみる
                                                                  • Rustを使ってCLI(Rust)とVSCode拡張(TS+Wasm)を同時にモノレポでリリースしてみました

                                                                    Rustを使ってCLIとVSCode拡張を同時に作ってみたよという記事です! ここで言う「同時に作った」とは「CLIとVSCode拡張に共通するコアの処理をRustで実装し、CLIはコア処理以外もRustで実装する一方、vscode拡張はTSベースで実装してコア処理はWasmに変換して呼び出す実装にした」という意味です。 それをモノレポでやってみて、けっこう色々いい感じだった&勉強になったので記録を残しておいてみます👶 なお、ツールのアイデアをくれたtaisaさん、Wasmを使うアイデアをくれたyokoishiさん本当にありがとうございました! 作ったもの MySQLのINSERTクエリをテーブルのような見た目に、つまりカラム名と各行の値がタテ方向に並んで見えるようフォーマットするというものです。 自分の勤め先ではテストデータを大量のINSERTクエリで表現する場面がしばしばあり、地味な

                                                                      Rustを使ってCLI(Rust)とVSCode拡張(TS+Wasm)を同時にモノレポでリリースしてみました
                                                                    • わずか数行のコードで1つの要素を別の要素にスムーズに遷移させる、フレームワークに依存しないJavaScript -Blendy

                                                                      数行のコードと外部スクリプトを記述するだけで、1つの要素を別の要素にスムーズに遷移させるJavaScriptを紹介します。 フレームワークやライブラリなど他のスクリプトに依存することなく、単体で動作し、もちろん他のフレームワークと一緒でも動作します。 Blendy Blendy -GitHub Blendyとは Blendyのデモ Blendyの使い方 Blendyとは Blendyはわずか数行のコードを記述するだけで、1つの要素を別の要素にスムーズに遷移させるJavaScriptです。依存関係はなく、単体で動作し、React, Vue.js, Angularをはじめ、ほぼすべてのフレームワークと一緒でも動作します。 MITライセンスで、商用プロジェクトでも無料で利用できます。

                                                                        わずか数行のコードで1つの要素を別の要素にスムーズに遷移させる、フレームワークに依存しないJavaScript -Blendy
                                                                      • Hono・Prisma・AWSでGeoなAPI開発

                                                                        日本全国・都市3D化プロジェクト「PLATEAU」とデータ変換OSS「PLATEAU GIS Converter」の公開

                                                                          Hono・Prisma・AWSでGeoなAPI開発
                                                                        • TypeScriptで.envを脱却する話

                                                                          最近では、環境別に.env.development や.env.production などのファイルを作って運用する形態も増えています。 弊社では、TypeScript+Node.js によるバックエンド開発をしていますが、node では process.env で環境変数を参照します。しかし、process.env の型は 以下のように定義されており、型付けが弱く、補完が効かないという難点があります。また、string しか表現できないため、数値などはパースする必要があるのも面倒です。

                                                                            TypeScriptで.envを脱却する話
                                                                          • 続・SPIモードにならないSDカードが流通していなかった件(大土下座)

                                                                            SPIモードに成らないSDカードについて 前回、SPIモードに成らない件、多くの方に興味を持っていただき、有識者(主に高校時代の部活の後輩)に見て頂き、大きなミスに気が付いたのが、本件謝罪の記事になります。 前回の記事はこちら そこ、ちがくね? ここでは友人Aとしよう。友人Aとは高校時代の部活で後輩だったりで、なが~く話はして無かったんだが、XにてSDカードについて話題が出たのでメールを頂きました。ありがとうございます。 議題になった箇所は、ACMD41(CMD55)でレスポンスが返ってこなかった点 です。 友人Aからのご指摘がこちら。前回の記事から、ACMD41を行う際のロジアナを見て、CRCが0x00であることに気が付いた形です。 本来のSDカードのコマンドは、CRC8では無く、CRC7になり、1bit目はEnd-bitになるそうです。 そう言う規格です。 更にややこしい事に、SPIモ

                                                                              続・SPIモードにならないSDカードが流通していなかった件(大土下座)
                                                                            • Node.jsで機能やパッケージの非推奨メッセージを通知する方法

                                                                              ライブラリやツールなどを作っているときに、特定の機能やパッケージを非推奨にする場合があります。 これらの非推奨はリポジトリ上のREADMEやIssueなどに書いても、利用者が気づかないことがあります。 そのため、利用者が気付けるように非推奨の機能やパッケージを使った場合に警告を出す方法を紹介します。 非推奨にはいくつかの段階があり、それに応じてやり方を変えられるので、それぞれの方法を紹介します。 パッケージの非推奨化: npm deprecate <package> <message> コードレベルの非推奨化: JSDocタグの@deprecated 実行時の非推奨化: process.emitWarning() パッケージの非推奨化: npm deprecate <package> <message> npmのパッケージレベルで、そのパッケージが非推奨であることを通知するにはnpm de

                                                                                Node.jsで機能やパッケージの非推奨メッセージを通知する方法
                                                                              • Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ

                                                                                OSS開発者は今何をするべきか?ソフトウェアサプライチェーン侵害対策を考える June 23, 2026

                                                                                  Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
                                                                                • Rustでつくる もう一つの将棋ライブラリ - すぎゃーんメモ

                                                                                  昨年末に出版された「強い将棋ソフトの創りかた」という本を読んで、自分も将棋AIを作ってみたいと思った。 強い将棋ソフトの創りかた 作者:山岡忠夫,加納邦彦マイナビ出版Amazon この本では主にPythonでの実装が紹介されていたが、自分は最近はRustが好きなのでRustで自分で実装してみたい、と考えた。 最近では自作詰将棋SolverもRustで書いている。 memo.sugyan.com 局面探索、パフォーマンス まず、局面の探索について考えた。 詰将棋Solverの場合も同様だが、将棋ソフトを作る場合にも、とにかく「今の局面からこの先どのような局面が発生し得るか」を高速に大量に探索していく必要がある。 現局面を根とするゲーム木を、合法手を辿って次々と子ノードに移ったり戻ってきたりして探索することになる。 これは、「各局面における合法手の列挙」と「指し手の適用(また、その巻き戻し)に

                                                                                    Rustでつくる もう一つの将棋ライブラリ - すぎゃーんメモ

                                                                                  新着記事