並び順

ブックマーク数

期間指定

  • から
  • まで

2001 - 2040 件 / 3664件

新着順 人気順

*JavaScriptの検索結果2001 - 2040 件 / 3664件

  • 【2024年】ハンバーガーメニューの作り方決定版【コピペ可能】 | techlab / baigie

    はじめに 今やあらゆるサイトで使用されているハンバーガーメニュー。 私たちウェブサイト系のエンジニアは数え切れないくらい実装してきている定番パーツです。 しかしながらその実装は容易ではありません。自分の作り方に自信を持てていない方も少なくないのではないでしょうか。 ただ単にそれっぽく動くものを作るのであれば簡単ですが、アクセシビリティやメニュー展開時の他の箇所の挙動など、不具合がないように徹底的に作り込もうとするとなかなか難しいものです。 今回はそんな厄介な存在であるハンバーガーメニューについて、私なりの現在の作り方を紹介したいと思います。。 ハンバーガーメニューの実装で気を付けるべきこと ハンバーガーメニューの作り方を見る前に、ハンバーガーメニューのあるべき姿、実装時に気を付けるべきことを洗い出してみましょう。 私が思い浮かぶものだと以下のようなものがあります。 メニューボタン、アコーデ

      【2024年】ハンバーガーメニューの作り方決定版【コピペ可能】 | techlab / baigie
    • Next.jsで戻る厨を満たすrecoil-sync-next

      以前、Next.jsのスクロール位置復元について記事を書きました。 上記記事でSPAとMPA(Multi Page Application)における、ブラウザバック/フォワード時のスクロール位置復元について言及しました。 MPAではスクロール位置がブラウザによって復元されることがある(ブラウザの実装に依存) SPAではこれらが軽視されがち Next.jsにおいても、デフォルトでは復元されない(ChromeでSSGページなど一部条件下では復元される) Next.jsではexperimental.scrollRestorationを有効にするとスクロール位置をsession storageに保存し復元する これらと同様に、ブラウザバック/フォワード時のUI復元についても軽視されがちなものの1つです。最近もこの手のUI体験の悪さについて、問題提起がされ話題になりました。 ブラウザバック/フォワー

        Next.jsで戻る厨を満たすrecoil-sync-next
      • 次の時代のCSS in JSはWeb Componentsを従える

        CSS in JSはJavaScriptのコード中にCSSを書くプログラミング手法で、styled-componentsなどがメジャーどころです。現代的な開発では、ReactやVueといったフロントエンド用のViewライブラリを使う際にCSS in JSのお世話になることがよくあります。 この記事では、次の時代のCSS in JSはWeb Componentsベースのものになるのではないかという話をします。 Web Componentsの復習 Web ComponentsはいくつかのWeb標準の総称であり、特に重要なのはCustom ElementsやShadow DOMです。いずれも、V1と呼ばれる仕様は全てのモダンブラウザでサポートされています(Safariが一歩遅れていて少し心配ですが)。 https://caniuse.com/custom-elementsv1 https://c

          次の時代のCSS in JSはWeb Componentsを従える
        • JSのプラグインシステムについて書くJavaScript Plugin Architecture 2.0をリリースしました

          JSのプラグインシステムについて書くJavaScript Plugin Architecture 2.0をリリースしました JavaScriptのプラグインシステムについて書いた小さな電子書籍であるJavaScript Plugin Architecture 2.0をリリースしました。 1.0(初版)公開時の記事は次のページから参照できます。 JavaScript Plugin Architectureというプラグイン設計について学ぶ無料の電子書籍を書いた | Web Scratch 2.0の詳しい変更点についてはリリースノートを参照してください。 Release v2.0.0 · azu/JavaScript-Plugin-Architecture 2.0リリース時にGitBookからHonKitに移行しました。 そのため、公開するURLが次の場所に変更されています。 https://a

            JSのプラグインシステムについて書くJavaScript Plugin Architecture 2.0をリリースしました
          • お手軽で欲しい機能が揃っている実験管理ツールGuild AIの紹介 - kuromt blog

            機械学習の実験管理ツールにGuild AIというものがあります。特に大きな特徴はコード追加なしで実験管理ができるというものです。 試しに触ってみたところ、まさにコード追加なしで簡単に試せる、ちょっとした条件を変えた実行も簡単、結果の可視化はシンプルなCLIもリッチなGUIもどちらも用意されている、ローカルだけではなくS3にもデータを保存できる、しかもWebサーバを別に立てる必要がなく手元の環境で完結します。 ただ、Guild AIは一部の方にSNS上で言及されているものの日本語で書かれたドキュメントやブログは見つかりませんでした。良いツールが埋もれるのはもったいないと思いGuild AIの記事を書くことにしました。 この記事の前半では実行条件を変えながら実行して結果を可視化するまでの流れを紹介します。Guild AIのお手軽さをお伝えすることを意識しました。 後半はある程度実務での状況を想

              お手軽で欲しい機能が揃っている実験管理ツールGuild AIの紹介 - kuromt blog
            • Webサービス開発でのmonorepo環境(Turborepo, nx)

              Webサービス開発の文脈で、モノレポ環境を作る方法について整理しました。 ※バックエンドもフロントエンドも全てTypeScriptで開発している前提 この記事を書いた背景 世間で言われる「モノレポ」がどのように達成されているのか知らなかった 参考記事を読んでると実現方法が異なっていたり、運用のイメージが見えなかったり、ベストプラクティスが分かりづらかった Turborepoのようなモノレポツールを導入すれば解決しそうだが、このツールが何をしてくれるのか理解できなかった モノレポ何も分からない………になった この記事ではモノレポに関連する仕組みを1つ1つ丁寧に把握し、最終的に理想的なモノレポ環境を実現することを目指します。 モノレポとは? まずは用語の整理から。 モノレポを素直に訳せば「1つのリポジトリ」という意味でしかなく、1つのリポジトリで開発していればそれは「モノレポ」と呼べそうです。

                Webサービス開発でのmonorepo環境(Turborepo, nx)
              • Web相互運用性JavaScriptランタイムコミュニティグループ

                本日、CloudflareはVercel、Shopify、およびNode.jsとDenoの両方の中心的な個々のコントリビューターと協力して、Webブラウザではない、JavaScriptベース開発環境で標準化Web APIを相互運用できる実装に焦点を当てた、新しいコミュニティグループの設立を発表いたします。 W3CおよびWeb Hypertext Application Technology Working Group(WHATWG)は、開発環境としての標準化APIとWebの機能を、長い間先頭に立って開発してきました。fetch()、ReadableStreamおよび WritableStream、URL、URLPattern、TextEncoder などのAPIは、現代のWeb開発における馴染みの、そして貴重なコンポーネントになりました。ただし、これら既存グループは常にWebブラウザの特定

                  Web相互運用性JavaScriptランタイムコミュニティグループ
                • 【LT参加レポート】GoによるGraphQL実装 - カミナシ エンジニアブログ

                  はじめまして。株式会社カミナシでアプリケーションエンジニアをやってる keinuma です。 カミナシではAPIの開発にGo言語を使用しています。自分はGraphQLが好きなのですがこれまでGoのライブラリを利用してGraphQLランタイムを実装したことがありませんでした。なのでGoのライブラリの一つであるgqlgenを利用してサンプルアプリケーションを実装してみました。 今回は勉強会で発表した内容を編集して書いていきます。 speakerdeck.com ※ただし書き カミナシのプロダクトではGraphQLを使っていません。 サービスサイトではGatsbyを使っていてこちらについてのまとめは後日公開予定です。 GraphQLの実装手段 BaaS GraphQLはクライアントの柔軟性が高い分、ランタイムが複雑になりがちです。 そのため実装するときはGraphQLランタイムをBackend

                    【LT参加レポート】GoによるGraphQL実装 - カミナシ エンジニアブログ
                  • 再訪 React Native

                    最近React Nativeを使ってアプリを作る機会があり、React Nativeの進化に驚いたのでシェアします。 筆者のReact Native歴 元々はAndroidとiOSでそれぞれネイティブアプリを作っていました。 2017~2019年くらいに仕事と趣味の両方でReact Nativeを使っていました。 2019年くらいからFlutterを使ってアプリ開発をするようになり、それ以降はFlutter or ネイティブ開発のみで、React Nativeは使わなくなりました。 当時(~2019)のReact Nativeの印象 5年以上前なので朧げな部分もあります。 一つのソースコードでAndroidとiOSのアプリがどちらも作れて便利 パフォーマンスはネイティブほどではないが、ほとんどの画面で別に気にならない。アニメーションを大量に入れようとすると明らかにカクツク。 当時はパフォー

                      再訪 React Native
                    • webpack4系から5系にアップデートした際の対応事項とかメモ - Madogiwa Blog

                      個人で開発しているサービスでフロントエンドのbuildにwebpackを利用しているのですが、4系から5系にアップデートしたので、そのあたりで対応したことをメモしておきます📝 利用していたwebpackのビルド構成 webpackアップデート時の対応事項メモ modeを明示的に指定するようにした デフォルトでinstallされなくなったNode.js系のpolyfilをinstallした [hash]ではなく[contenthash]を利用するようにした その他の対応事項 webpack-assets-manifestのデフォルトのファイルパスが変わる おわりに 利用していたwebpackのビルド構成 基本的には以下のようなライブラリを利用したBabel + TypeScript + Vueで、 mini-css-extract-pluginでcssを別ファイルで生成するようにして、we

                        webpack4系から5系にアップデートした際の対応事項とかメモ - Madogiwa Blog
                      • jQuery、今までありがとう【移行すべき理由と代替案3選】

                        世界で一番初心者に優しいWeb制作のメディア。HTML/CSS/JavaScript、WordPress、Web制作の考え方を解説します。

                          jQuery、今までありがとう【移行すべき理由と代替案3選】
                        • JavaScript開発環境構築(macOS編)

                          JavaScript開発を行うために、Node.js などをセットアップする記事です。 昨今の、React, Vue, Angular などの開発に必須なものです。 対象は macOS ですが、気が向いたらWindows編を書くかも知れません。 ただし、あなたが開発に参加しているプロジェクトで、セットアップ手順が存在している場合はそれに従ってください。この記事は、そういったしがらみがない人向けの記事です。 初心者向けの記事です。もしこの手順でダメだった場合や、疑問点があればお気軽にコメントなりいただければ幸いです。 インストールするものについて概要説明 まず、macOS で開発環境を構築するときに必須ともいえるパッケージマネージャーである Homebrew を前提とします。 さらにバージョン問題対策のため、anyenv + nodenv という定番のバージョン管理ツールを導入したうえで N

                            JavaScript開発環境構築(macOS編)
                          • プログラミング初心者でもOK! Arduinoで多機能DJミキサーを1万円で自作する|fabcross

                            以前、お手頃な価格のDSPを使ったポータブルDJミキサーを作成した記事を作成しました。 近年はArduinoなどの汎用マイコンでも基本性能が向上しており、AIや画像処理、音声認識などが可能な機種も開発されています。中でもTeensyのシリーズは性能も高く、エフェクターが簡単に作れるライブラリがあり、Arduinoの開発環境で開発できるので、私のようなプログラミング初心者でも使いやすい製品でした。Teensyシリーズの「Teensy4.0」を使って前回の記事からさらに発展させた、エフェクター搭載のDJミキサーを作ってみました。 高性能で使いやすいマイコンTeensy プロ用のDJミキサーなどには音声入力にエコーやフィルターなどのエフェクターが搭載されているものがあります。市販されているエフェクター搭載のDJミキサーの場合は、まず音声入力をAD変換(アナログデジタル変換)し、デジタル化された音

                              プログラミング初心者でもOK! Arduinoで多機能DJミキサーを1万円で自作する|fabcross
                            • ヘッドレスUIコンポーネントでいこう -- Radix UI + Stitches がいい感じ

                              こんにちは! 株式会社ココナラの法律相談事業部でWebエンジニアをしている 原井 です。 ココナラ法律相談 と ココナラエージェント という2つのプロダクトのWebフロントエンド・バックエンド開発を担当しています。 この記事は、フロントエンド開発に使うUIコンポーネントライブラリの技術選定をするシーンでのお話です。 私たちが何を課題に感じていたのか、どう考えて Radix UI と Stitches の採用に至ったのか、採用してみてどうだったのかをご紹介します。 UIコンポーネントを開発していて思うこと 世の中にはUIコンポーネント集とでも呼ぶべき便利なライブラリがたくさん公開されています。 例えば以下のようなものがあり、他にも把握しきれないほどあると思います。 MUI (Material UI) Ant Design Chakra UI Vuetify これらのUIコンポーネントライブラ

                                ヘッドレスUIコンポーネントでいこう -- Radix UI + Stitches がいい感じ
                              • GitHub - abi/screenshot-to-code: Drop in a screenshot and convert it to clean code (HTML/Tailwind/React/Vue)

                                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 - abi/screenshot-to-code: Drop in a screenshot and convert it to clean code (HTML/Tailwind/React/Vue)
                                • Denoのフロントエンド開発の動向【2021年秋】

                                  半年ほど前にDenoのフロントエンド開発についてまとめた以下のような記事を書きました。 ここ半年程でまた色々と変化があったため、改めてまとめてみます。 要約 DenoにNode.js互換モードが実装されました Aleph.js v0.3 betaがリリースされました Freshやpackup, Ultraなどの新しいフレームワーク/ツールが登場しました SnelによってSvelteアプリが作れるようになりました vnoがSSRやSSGなどをサポート VelociraptorがGit hooksをサポート npmパッケージとの相互運用性について Node.js互換モード Deno v1.5でNode.js互換モードが実装されました。 現時点でもexpressやkoaなどのパッケージがある程度動作するようです。 現在、このNode.js互換モードを使用して、ViteやNext.jsなどを動かす

                                    Denoのフロントエンド開発の動向【2021年秋】
                                  • 書いたコードを公開するのかしないのかについての僕の考え | うなすけとあれこれ

                                    経緯 失われた「フリーソフト」の哀愁と、今を生きる開発者への願い。 - Zopfcode とインターネット上の反応を読んで、自分がコードを公開する場合、しない場合それぞれの理由を現時点で書いておきたいなと思ったので、書きます。 公開する理由 利用しやすい 例えば便利なライブラリを思いついて実装したとします。そのライブラリを実際に使う場合、実装したコードがある手元のマシンであればそのまま使用することができますが、どこかのクラウドで動かしてるWebアプリで使用したい場合はどうすればいいでしょう? Repositoryが公開されているのであれば、大抵のパッケージマネージャーではgit repositoryのURLを指定することでインストールができるでしょう。ではそのrepositoryがprivateの場合はどうでしょうか。readを許可したPersonal Access Tokenを発行して適

                                      書いたコードを公開するのかしないのかについての僕の考え | うなすけとあれこれ
                                    • モダンJSの一時代を築いたBabelから学ぶトランスパイル

                                      はじめに 今回この記事を書こうと思ったのは、JavaScriptのパーサ関連の記事が定期的に投稿される中で、 ESTreeの話はよく出てきていて反響がありそうだけれど、それを利用したツールは実際にどのようにコードを解析しているかが詳しく書かれている記事が少ないなあと思ったためです。 この記事では、トランスパイラとしてモダンJSの一時代を築いたBabelを例にトランスパイルについて、詳しく解説できたらと思います。 詳しい仕様などは日本語訳がされたハンドブック もありますが、 あいまいな訳になっているため、英語版のハンドブックをわたしはお勧めします。 記事の対象者 JavaScriptやTypeScriptを利用している JavaScriptなどのコードは書けても実際にブラウザでどのように実行されているか気になる JavaScriptなどのパーサや言語処理、トランスパイラ、コンパイラに興味があ

                                        モダンJSの一時代を築いたBabelから学ぶトランスパイル
                                      • Edge Functionsはブラウザ - laiso

                                        Cloudflare Workers Cloudflare Workersのようなサーバーレスなコンピューティングプラットフォームとしてここ数年活発な「エッジサーバーでプログラムを実行する環境」(呼び方が定まらないので一旦Edge Functionsとする)でアプリケーションを作る*1とブラウザが通信する先にもう1つブラウザが存在するような妙な感じを覚えていた。 例えばNext.jsのAPI Routesなら書いたコードはNode.jsで動くので頭をサーバーサイドモードにすればいいが、Cloudflare Workersで動くエンドポイントを書く時はそうでない…… おまえ、ブラウザなのか? みたいな でもよく考えたらこれらのプラットフォームはSpiderMonkeyやらV8やらのブラウザと同じJavaScriptエンジンを組み込んだ実行環境を持っていて、APIも環境の制限(TCP接続とかフ

                                          Edge Functionsはブラウザ - laiso
                                        • NestJS を使って最速リリースを目指している話 - ROBOT PAYMENT TECH-BLOG

                                          こんにちは。ROBOT PAYMENTでエンジニアをやっております 牧野です。 今回は新規プロダクトの立ち上げに伴い開発言語からインフラ設計まで0→1でサービスリリースするのに必要な技術選定を行いました。 その際の選定理由や、実際に開発を進めていて得た所感などを書いてみたいと思います。 私は主にバックエンド(フロントエンド以外)を中心に技術選定を行っためそちらを中心に書かせていただきます。 チーム規模 選定技術 TypeScript NestJS GraphQL PostgreSQL AWS App Runner まとめ チーム規模 バックエンドエンジニア2人 フロントエンドエンジニア1人 PM 1人 デザイナー1人 上記を1チームとして最短距離でリリースすべくスクラム開発を行なっています。 既存の請求管理ロボ開発においては、厳密ではないですがコンテナ運用や監視ツール、CICDなど機能開発

                                            NestJS を使って最速リリースを目指している話 - ROBOT PAYMENT TECH-BLOG
                                          • 個人ブログをNext.jsのSSGからHonoのSSGに移行した

                                            「Honoのv4が2月9日にリリースされます」という記事にてHono v4ではSSGモードがサポートされると発表があった。この機能を試す目的で今までNext.jsのSSGモードで構築していた個人ブログをHonoのSSG機能で書き換えた。 ブログ https://yuheinakasaka.github.io/gialog-diary/ リポジトリ https://github.com/YuheiNakasaka/gialog-diary 元の個人ブログではr7kamuraさんのr7kamura/gialog: Blog template to use GitHub Issues as article editor.というテンプレを使っている。これはGitHub IssuesをCMSとして用いて記事を書き、issueの作成などのイベントをフックにしてGitHub Actionsを起動させて記

                                              個人ブログをNext.jsのSSGからHonoのSSGに移行した
                                            • Goにおいてアクターモデルを実現するライブラリ"Molizen"とその未来

                                              こんにちは。@sanposhihoです。 この記事では、アクターモデルとはなんぞやという話から始まり、僕が卒業論文のプロジェクトとして作成したGoのライブラリ、“Molizen”の紹介をします。 わりと長く、乱文ですが、適宜読み飛ばして興味のある部分だけをご覧いただければと思います。 マサカリは優しく投げてください。ここはこうした方がいいんじゃないかみたいなのも参考にしたいので是非。 Twitter(@sanpo_shiho)に投げていただいても、雑にGitHubのissueを立てていただいてもいいです。 sanposhiho/molizen: Molizen is a typed actor framework for Go. Goのアクターモデルのフレームワークを公開しました。未完成なので暖かく成長を見守ってください🌱 sanposhiho/molizen: Molizen is a

                                                Goにおいてアクターモデルを実現するライブラリ"Molizen"とその未来
                                              • 次なる`pkg/errors`を探して - カンムテックブログ

                                                エンジニアの宮原です。 今回はGoでスタックトレースを取得するライブラリ選定についての記事です。 この記事は 【Gophers Talk】スポンサー4社による合同LT & カンファレンス感想戦で発表したものです。 発表スライドはこちらから確認できます。 この記事の目的 この記事ではpkg/errorsからの移行先を探すための参考情報を提供することを目的とします。 Goのエラーハンドリングのやり方等についてこの記事では触れないこととします。 pkg/errors とはなにか pkg/errorsとは、githubのREADMEを引用すると Package errors provides simple error handling primitives. とあり、直訳すると、「エラーハンドリングの基礎を提供するパッケージ」となります。 pkg/errorsを利用することで、Go本体にはないスタ

                                                  次なる`pkg/errors`を探して - カンムテックブログ
                                                • Java の CLI アプリケーション用フレームワーク picocli はミスタイプ時にサジェスチョンを出してくれる - Mitsuyuki.Shiiba

                                                  長くなっちゃったから最初にまとめ まとめ picocli は便利。 デフォルトでサジェスチョンの機能がついている。なので、オプションやサブコマンドの定義だけしておけば、ミスタイプしたときにサジェスチョンを出してくれる。 オプションの場合は、先頭2文字が一致するオプション一覧 サブコマンドの場合は、先頭2文字じゃなくて、似たものを出してくれる こんなつぶやきを見かけて がくぞさんのこんなつぶやきを見かけて そういえばCLIのオプションパーザのライブラリは多種あるけど、定義されてないオプションが指定されたときにオプション名から類推して正しくはコレじゃない?ってサジェストしてくれるような機構まで盛り込んだライブラリってあるのかな?— がくぞ (@gakuzzzz) August 11, 2021 あぁ、たしかにそういうのフレームワークに含まれてたら便利だなー、picocli だったらありそうだけ

                                                    Java の CLI アプリケーション用フレームワーク picocli はミスタイプ時にサジェスチョンを出してくれる - Mitsuyuki.Shiiba
                                                  • Node.jsの2022年を振り返り、Node.jsの未来を見つめてみた ~TechFeed Experts Night#8講演より | gihyo.jp

                                                    TechFeed Experts Night Pick up Node.jsの2022年を振り返り、Node.jsの未来を見つめてみた ~TechFeed Experts Night#8講演より 本記事は、2022年11月に開催された「TechFeed Experts Night#8 ~ JavaScriptランタイム戦争最前線」のセッション書き起こし記事「Node.jsの2022年を振り返り、Node.jsの未来を見つめてみた by @shisama_」を転載したものです。オリジナルはTechFeedをご覧ください。 「Node.jsの2022年と未来」というタイトルで話します。よろしくお願いします。サイボウズでフロントエンドエンジニアをやっているshisamaです。 今日はNode.jsの18と19の主な変更点を紹介したいと思います。その後は、現在実装中の機能から、いくつかおもしろそう

                                                      Node.jsの2022年を振り返り、Node.jsの未来を見つめてみた ~TechFeed Experts Night#8講演より | gihyo.jp
                                                    • UIでボタンをクリックするのが楽しくなるエフェクトがたくさん揃ったJavaScriptライブラリ -Party.js

                                                      ユーザーがボタンのクリックなど、アクションをした際に紙吹雪やハートをクラッカーで弾けたようなエフェクトで表示する、楽しさを演出するJavaScriptライブラリを紹介します。 クリックするのが楽しくなるエフェクトがたくさん揃っており、「おめでとう!」「ありがとう!」「うれしい!」などを視覚的に伝えることができます。 Party.js Party.js -GitHub Party.jsの特徴 Party.jsのデモ Party.jsの使い方 Party.jsの特徴 Party.jsは「おめでとう!」「ありがとう!」「うれしい!」などを視覚的に表現するエフェクトを実装し、ユーザーのサイトエクスペリエンスを明るく楽しくするJavaScriptライブラリです。 ユーザーのアクションに伴い、紙吹雪やハートやキラキラなどのエフェクトを簡単に実装できます。 実装が簡単 ライブラリをHTMLファイルに含め

                                                        UIでボタンをクリックするのが楽しくなるエフェクトがたくさん揃ったJavaScriptライブラリ -Party.js
                                                      • URL Pattern API - Web APIs | MDN

                                                        The URL Pattern API defines a syntax that is used to create URL pattern matchers. These patterns can be matched against URLs or individual URL components. The URL Pattern API is used by the URLPattern interface. The pattern syntax is based on the syntax from the path-to-regexp library. Patterns can contain: Literal strings which will be matched exactly. Wildcards (/posts/*) that match any characte

                                                          URL Pattern API - Web APIs | MDN
                                                        • freeeの礎となる認証認可基盤のマイクロサービス化プロジェクトの経緯と振り返り - freee Developers Hub

                                                          こんにちは、認証認可基盤・課金基盤のエンジニアリングマネージャーを務めている muraと申します。直近2年間は、今回お話しするfreeeの認証認可基盤のマイクロサービス化のプロジェクトにバックエンドエンジニア、エンジニアリングマネージャーとして携わってました。最近はfreeeが利用する課金基盤のエンジニアリングマネージャーも兼務するようになり、本格的にマネージャーの道を歩み始めたところになります。 本日は、私が2年間携わってきた「認証認可基盤のマイクロサービス化」のプロジェクトについてお話しします。このプロジェクトは私が入社するより前の2019年から進められてきたプロジェクトで、2022年6月末に移行に一区切りがついたものになります。プロジェクトの始まった経緯や実際の移行作業に加えて、4年間という長期間のプロジェクトへの振り返りについてお話させて頂ければと思います。 freeeの認証認可基

                                                            freeeの礎となる認証認可基盤のマイクロサービス化プロジェクトの経緯と振り返り - freee Developers Hub
                                                          • プロトタイピングツールとしての RedwoodJS

                                                            本稿は、Webアプリのプロトタイプを作るための道具として RedwoodJS を紹介する記事です。 前説:プロトタイピングにおける技術選定 シンプルなWebアプリのプロトタイプを作るとき、みなさんはどのような技術選定を行うでしょうか。 プロトタイプと言えど UI の検証もある程度は含んでいる場合がほとんどなので、筆者としては UI の構築には React を利用したい[1]ところです。テンプレートエンジンでは著しく開発効率が落ちるので、フルスタックフレームワークとしての Rails や Django はこの時点で選べないことになります。 しかし、React を選んだとしても大半のアプリケーションでは永続層が必要ですし、フロントエンドで計算させたくないロジックも多々あります。バックエンドを別で作る場合に直面するのは、クライアント側とのAPIスキーマの整合性をどう取るかという問題です。できれば

                                                              プロトタイピングツールとしての RedwoodJS
                                                            • Sass製SVG爆速表示ライブラリのご紹介 - dwango on GitHub

                                                              こんにちは。ニコニコ生放送生放送フロントエンドシステムセクションのmisuken(GitHub/Twitter)です。 今回は10月に公開したsmart-svgとreact-sass-inlinesvgという2つのSVG表示ライブラリに関して、作成に至った経緯、ライブラリの特徴、工夫したポイント、パフォーマンス等の話をしていきたいと思います。 ライブラリを作成した経緯 これまでのSVGの表示方法 ニコニコ生放送ではこれまで、SVGを表示する際にはreact-inlinesvgというライブラリを使用していました。 react-inlinesvgは<img>のようにsrcにURLを渡して表示するタイプのライブラリです。 SVG要素がDOMに展開されるため、CSSからスタイルを適用できます。 react-inlinesvgのREADMEに書いてある使用例。 import React from '

                                                                Sass製SVG爆速表示ライブラリのご紹介 - dwango on GitHub
                                                              • Pythonで文字列の類似度を120倍高速に計算するRapidFuzzを勧めたい - Qiita

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

                                                                  Pythonで文字列の類似度を120倍高速に計算するRapidFuzzを勧めたい - Qiita
                                                                • Next.jsにnext/testmodeという概念が出現しMSW x Playwrightのテストがやりやすくなりそう

                                                                  2023年8月15日にリリースされた Next.js v13.4.16から next/experimental/playwright next/experimental/playwright/msw が登場してテストがしやすくなりそう。というお話です! 前提条件 今回お話するのは、Next.js の開発サーバーに対してMSWによりAPI通信をモックしてPlaywrightで行うブラウザテストのことをお話します これまでは? Page RouterかつCSRに関して言えば、MSWでモックすることは可能でした。exampleとしてすでに公式が提供しているので、これをベースにセットアップすれば可能です 現状の課題 Page Router CSRの場合はブラウザ上のservice worker経由でmswが実行されています。なのでmswのserver.useを使うにはそこそこ工夫が必要です。 有志

                                                                    Next.jsにnext/testmodeという概念が出現しMSW x Playwrightのテストがやりやすくなりそう
                                                                  • Deno 1.28登場、npm対応が安定版に到達。130万種以上のnpmモジュールを利用可能に

                                                                    オープンソースのJavaScript/TyeScriptランタイム「Deno」の最新版となる「Deno 1.28」がリリースされました。 Deno 1.28の最大の新機能は、8月に発表されていたnpmモジュール対応が安定版となったことです。これで130万種類以上のnpmモジュールがDenoで利用可能になったと説明されています。 Deno v1.28 is released: npm compatibility is now stable!https://t.co/V6Z36PrHyi — Deno (@deno_land) November 14, 2022 シンプル、セキュア、簡単なDenoのnpm対応 Denoでのnpmモジュール利用は非常にシンプルで、npm installコマンドも、package.jsonファイルも、node_moduleフォルダも不要だと説明されています(互換性

                                                                      Deno 1.28登場、npm対応が安定版に到達。130万種以上のnpmモジュールを利用可能に
                                                                    • 【Python】データ可視化ライブラリ Altair を使いこなす - Qiita

                                                                      更新のお知らせ 好評につきまして Altair のハンズオン資料を大幅アップデートしました。ぜひこちらもご活用ください。 概要 本稿ではグラフ可視化ライブラリ Altair を用いて、interactive な図を作成する方法を紹介する。前稿では Kaggle のデータセットを用いたが、今回は乱数を用いてクロスセクションデータ(ある一点のデータ)と時系列データをそれぞれ生成し、それぞれに適した可視化を説明する。 ハンズオン (2022年11月26日追記) 本稿のipython notebookを公開しました(WEB形式, ソースコード)。よろしければご活用ください。 Altair の長所 データ可視化記述フォーマット VEGA に準拠したデザイン streamlit などでサーバーを立てなくても interactive な図を html や vega で出力できる。(interactive

                                                                        【Python】データ可視化ライブラリ Altair を使いこなす - Qiita
                                                                      • Apple Silicon 動作確認記 (随時更新) - Qiita

                                                                        Apple M1チップ搭載13インチMacBook Proを購入したので、各アプリケーションの対応状況を確認していきますー。 ソフトウェアエンジニアなので、その周りのアプリケーションを中心に。 対応状況は、あくまでその時点までの確認です。 使っていたら、別の状況が見えてくるかもしれませんね! では、書いていきます。 Chrome 動く。 今この記事を書いているのも、M1 + Chrome。問題なく動作しています。 最初にRosettaをインストールしますか?って聞かれますが、すぐにインストールされました。 Google日本語入力 個人的に大好きなのでインストール。問題なく動作しています。 iTerm2 動く 問題なし。 Node.js (v14.15.1) Hello Worldは問題ない。

                                                                          Apple Silicon 動作確認記 (随時更新) - Qiita
                                                                        • 最近話題の TS 製 ORM「Prisma 2」でログイン処理を試してみたら超快適だった

                                                                          はじめに この記事は、Qiita: TypeScript Advent Calendar 2020 24 日目の記事です 🎄✨ 今回は、Front-End Study #1「Cloud Native時代のフロントエンド」 - connpass で紹介されていた Prisma 2 を、同じく紹介されていた frourio を使って試してみます。 環境構築 frourio で一気に まずは create-frourio-app でサクッと環境構築します。 今回は以下の構成で試してみます。 MySQL を建てるのが面倒な場合は、SQLite でもいいと思います。 Core framework of frourio : Fastify Frontend framework : Next.js Building mode : Basic HTTP client of aspida : axios

                                                                            最近話題の TS 製 ORM「Prisma 2」でログイン処理を試してみたら超快適だった
                                                                          • Streamlit アプリを簡単にデスクトップアプリ化するコマンドを作った

                                                                            Streamlit は簡単にデータサイエンス系のウェブアプリを構築できる Python ライブラリです。ウェブアプリなので、サーバーで起動してブラウザでアクセスすることになりますが、ローカルで動作するデスクトップアプリにして配布したい状況がありました。 Streamlitアプリをデスクトップアプリ化する方法はいくつかある[1][2]ようでしたが、制限があったり手間がかかったりするようでした。 「いや、お手軽にアプリにしたいんじゃっ」ということで、簡単にデスクトップアプリ化できる Streamlit Desktop App を作りました。このコマンドを使用すると、コマンド一発で Streamlitアプリをデスクトップアプリに変換できます[3]。ウィンドウを閉じたときに Stremlit のサーバープロセスが自動で Kill されるようにしたりと、細かい工夫も入っています。 なお、デスクトップ

                                                                              Streamlit アプリを簡単にデスクトップアプリ化するコマンドを作った
                                                                            • Lodashの代替ライブラリ、es-toolkitが強力 — 平均2倍高速、バンドルサイズ最大97%削減、移行も容易

                                                                              8月17日、海外のエンジニア向けメディアInfoQが「es-toolkit, a Modern Lodash Alternative」と題した記事を公開した。 この記事では、JavaScriptのモダンなユーティリティライブラリであるes-toolkitについて詳しく紹介されている。es-toolkitは、Lodashに代わるライブラリとして注目されている。 es-toolkitの特徴 es-toolkitは新たに登場したJavaScriptライブラリであり、LodashやUnderscore.jsの直接的な競合であり、以下のような特徴を持つ。 es-toolkitは、 debounce、delay、chunk、sum、pickなど、日常的に使用するユーティリティ関数を提供する es-toolkitは、最新の JavaScript 環境で2~3倍のパフォーマンスを実現する es-toolk

                                                                                Lodashの代替ライブラリ、es-toolkitが強力 — 平均2倍高速、バンドルサイズ最大97%削減、移行も容易
                                                                              • Node.js v15ではunhandled rejectionでプロセスがエラー終了する

                                                                                今月20日にInitial Releaseが予定されているNode.js v15ですが、ここでのunhandled rejectionの挙動変更について解説します。 unhandled rejectionとは async関数内でthrowされたエラーや、rejectされたPromiseが、.catch()などでハンドリングされずにrejectされたままになっている状態を、unhandled rejction(またはunhandled promise rejction)と呼びます。Node.js v14では、unhandled rejectionが発生すると次のような警告が出力されます。 $ node -e "Promise.reject()" (node:22145) UnhandledPromiseRejectionWarning: undefined (Use `node --trac

                                                                                  Node.js v15ではunhandled rejectionでプロセスがエラー終了する
                                                                                • WebサイトのUIにさまざまなフローティング要素を実装するためのJavaScriptのライブラリ -Floating UI

                                                                                  WebサイトのUIにフローティング要素、ドロップダウン、ツールチップ、ポップオーバー、ナビゲーションなどを実装するJavaScriptのライブラリを紹介します。 フローティング要素の実装で問題となる配置の向きや衝突やオーバーフローなどにも対応しており、アクセシブルなフローティング要素を実装できます。 Floating UI Floating UI -GitHub Floating UIの特徴 Floating UIのデモ Floating UIの使い方 Floating UIの特徴 Floating UIは、ドロップダウン、ツールチップ、ポップオーバー、ナビゲーションなどのフローティング要素を配置するためのJavaScriptライブラリです。 フローティング要素はコンテンツのフローを中断することなくUIの上に浮かぶため、配置するときに課題が発生します。Floating UIではフローティン

                                                                                    WebサイトのUIにさまざまなフローティング要素を実装するためのJavaScriptのライブラリ -Floating UI

                                                                                  新着記事