Node学園37時限目で発表した WHATWG Stream の話です。
Stage 1 (explanation) TC39 proposal champions: Daniel Ehrenberg, Yehuda Katz, Jatin Ramanathan, Shay Lewis, Kristen Hewell Garrett, Dominic Gannaway, Preston Sego, Milo M, Rob Eisenberg Original authors: Rob Eisenberg and Daniel Ehrenberg This document describes an early common direction for signals in JavaScript, similar to the Promises/A+ effort which preceded the Promises standardized by TC39 i
;; &() is object literal used with quasiquote (let ((obj `&(:name "LIPS Scheme" :version ,lips.version))) ;; you can access JavaScript properties ;; with dot notation, print is display + newline (print (string-append obj.name " " obj.version)) ;; you can mix scheme and JavaScript (setTimeout (lambda () (alert (JSON.stringify obj))) 1000) #void) With LIPS you can mix Scheme and JavaScript. You can
Webpack no longer automatically polyfills Node.js APIs. This is a huge breaking change and will inconvenience both users and package maintainers. Most packages on npm are mainly made with Node.js in mind. However, thanks to automatic polyfilling, most of them have for years worked fine in the browser too. The problem is that Webpack created convenience by automatically polyfilling and then now sud
Background [OpenCV][C++]テンプレートマッチングを使って複数検出してみた、ではOpenCVのTemplateMatchingを使ってクリボーを検出していました。用意したクリボーの画像を上から下へ走査して形状が類似しているエリアを算出するのですが、上部の雲がクリボーと似ているらしくて雲とクリボーが一緒に出てくると雲の方が先に検出がかかってしまいました。 大雑把に類似度の高いエリアをトリミングして、その後でテンプレート画像とヒストグラムか背景差分を使って判定はできそうなのですが、今回は趣向を変えてyolov3を使った物体検出をしてみます。 Device CPU AMD Ryzan 5 1400 GPU GeForce GTX960 Mother Board MSI B450 GAMING PLUS MAX B450 Memory DDR4 8G × 4枚 = 32G CU
JSer.info #601 - Node.js 18.6.0がリリースされました。 Node v18.6.0 (Current) | Node.js Node.js 18.6.0ではexperimentalで実装されている--loaderの挙動の変更が含まれています。 複数の--loaderを指定した場合の順番を変更。またloaderの実装はshortCircuitを返すのが必須となっています。 そのため、すでに公開されているloaderが動かなくなっている場合があります。 詳しくは、次のIssueと記事で解説されています。 esm: add chaining to loaders by JakobJingleheimer · Pull Request #42623 · nodejs/node Custom ESM loaders: Who, what, when, where, why
この記事で紹介している機能はApollo Sandboxという名称でログインなしで利用可能となりました。 複数のエンドポイントをダッシュボードで管理したい場合などはこの記事の手順でログインして利用した方が便利ですが、とりあえずクエリ発行してレスポンス見たい!という場合は上記の Apollo Sandbox を利用した方が便利そうです。 Apollo Studioで Graph 作成時に設定していたエンドポイントはサイドメニューから設定してください。 Apollo Studio? ブラウザ上から指定したエンドポイントへ向けて GraphQL クエリを発行し Response を確認できる無料のツールです(有料プランも有り)。 Apollo チームが開発しているものですが、クエリを実行して Response を見るだけなので、 ApolloServer, ApolloClient などのライブ
この記事に辿り着いたという事は、プラグインやライブラリに頼らずにスライダーを書きたい、もしくはプラグインを使う事に抵抗はないけれど仕組みを理解しておきたいという方だと想定しています。 大前提 他人の書いたコードはクソ 今からお見せするのは「他人のコード」です。 (他人のコードといっても自分で書いてますが、読者からしたら他人だと思うので) 他人のコードは基本的に不正解だと思ってかかってください。私は正解を発表しているのではなく、アイディアの一つを投げかけているにすぎません。 もしかしたらバグが眠っているかもしれない、もっといい書き方があるかもしれないという視点を常に持ち、そしてにわかコーダー私にJavaScriptをご教示頂けたらと思います。 挙動 実装した機能 スライドの枚数に応じてスライダー内部のスタイル・ドットが自動で調整される(htmlを書き換えるだけでスライドの枚数を変更可能) ド
Next.js で開発していると、複数のページの getServerSidePropsで同じようなコードを度々書くことになると思う。例えば 「GraphQL クライアントでクエリを fetch して、そのレスポンスをpagePropsに焼き込むロジック」であったり、「(マルチテナントアプリケーションにおいて) リクエストヘッダーからテナントを特定するロジック」であったり。こうした大部分のページで使われるロジックのコードは、何度も書かずに済むよう、何らかの共通化をしたくなる。 すでに色々な人が似たような動機でgetServerSidePropsを共通化する方法を紹介していると思う。それを参考にしながら id:mizdra も自分流の共通化方法を実践している。何度か Next.js アプリケーションを作っているうちに、自分の型のようなものが身についてきたので、それを紹介してみる。 はじめに結論
はじめに State of React Native 2024 が公開されました🎉 2024年12月9日〜2025年1月8日の約1か月間にわたり、3,501人の開発者の声が集まりました。このレポートを読み最新のトレンド、技術的な進化、そして今後の展望を独断と偏見も含めてまとめてみました。 アプリ開発の選択肢として 「React Native、アリかも?」 と思ってもらえたら嬉しいです🙇♂️ 個人的熱々ポイント🔥 Expoの世界観 最も大きな変化の一つが Expo の台頭です。Expoは、React Native開発を簡単にするためのツールセットで、現在では約8割の開発者がExpo CLIを利用しています。 さらに、React Native公式も 「Expoなどのフレームワーク利用が新規プロジェクトの推奨手法」 と明言するまでになりました。 Expoが提供する EAS(Expo Ap
はじめに 基本的な使い方は公式ページがわかりやすいのでサラッと書いてます。 具体例は実際に Zod を使ってみて気になった部分を書きました。 基本的な使い方 import { z } from "zod"; // 文字列のスキーマを作成する const mySchema = z.string(); // スキーマから型を生成する type MySchema = z.infer<typeof mySchema> /* 生成される型の中身 type MySchema = string */ const input: MySchema = 100; // TypeError (型 'number' を型 'string' に割り当てることはできません!) const input: MySchema = "hello!"; // OK! z.infer<typeof T> とすることでスキーマから
This domain may be for sale!
@spring_rainingが@hanak1a_と@uhyo_に、今開発しているフロントエンドのためのOSSライブラリや、個人開発をし続ける理由について聞きました。 Members @uhyo_ LINE フロントエンドエンジニア Router Library の Rocon を開発中 https://speakerdeck.com/line_developers/super-type-safe-routing-with-rocon @hanak1a_ VRoid Hub フロントエンドエンジニア Router Library の Froute を開発中 https://speakerdeck.com/hanakla/reactrutaxuan-ding-shu-2020nian-falsehuainaruansa https://github.com/fleur-js/froute H
JavaScriptなどWebの技術を利用して、デスクトップアプリを開発できるElectronをご存じでしょうか。Electronを使うと手軽にWindowsやmacOS、Linuxで動くデスクトップアプリを作ることができます。つい先日、9月1日にElectronのバージョン10.1.1が公開されました。本稿では最新バージョン10を使って簡単にアプリを作ってみましょう。 Electronとは?代表アプリは? 『Electron』とは、HTML/CSS/JavaScriptといったWebの技術を利用して、デスクトップアプリを作ることができるフレームワークです。Windows/macOS/Linux上で動くデスクトップアプリを開発できます。 ElectronのWebサイト Electronを使って作られた代表的なアプリには、GitHubが開発しているテキストエディタの「Atom」や、マイクロソ
Node.js での devServer の構築では初手 unjs/get-port-please の導入が便利2022/11/14 業務で複数の devServer を同時に立ち上げたいケースがあり、チーム内で「React.jsプロジェクト(APP_A)を起動してからNext.jsプロジェクト(APP_B)を起動するとNextが気を利かせてくれるが、Nextを起動してからReactだとポートが専有されていてエラーになっていて地味に不便」という声が上がっていた。 かねてから課題ではあったものの、それぞれ実装を進めることから、同時に立ち上げる機会がそこまで多くなくこれまで放置されていた。しかしそうは言っても不便ではあった中、get-port-please の存在を思い出したので試しに導入してみることにした。 結果として、好感触でなかなか良いライブラリだったので本記事で紹介したいと思う。 un
Popularity Understand the prevalence of an open source package using metrics such as downloads and source code repository stars to measure popularity. Maintenance Get insights about an open source dependency health and assess the sustainability of the project. Security Quickly assess the security posture of an open source project and its past versions. Further connecting your project with Snyk wil
The fact that the native :has pseudo-class: https://drafts.csswg.org/selectors/#relational takes forgiving-relative-selector-list as an argument: https://drafts.csswg.org/selectors/#forgiving-selector means the contents are not validated. jQuery has supported the :has pseudo-class for ages. However, its support is more powerful; in particular, it allows for jQuery extensions like :contains to appe
2022/07/14追記 改良版のChoomameについての記事も書いています。ぜひご覧ください。 概要 Googleの検索結果に期間や言語の絞り込みボタン、検索ワードに関連したリンクを表示するChrome拡張機能「Amazing Searcher」を作りました。この記事はその際の備忘録です。 ↓公開先 ↓紹介編 Manifest V3 以前作ったChrome拡張機能「Mr.Sagasu (紹介記事)」や「Mr.Jimaku (紹介記事)」は Manifest V3 の登場前だったため、Manifest V2で作成しましたが、今回作成した Amazing Searcher はV3です。 V3での変更点については、Manifest V3 への移行ガイド やManifest V3 チェックリスト を参考にしました。 自動リロード対応 background pagesが Service work
WebサイトやスマホアプリのUIで日にちや時間、年の範囲の書式を自動的に短く、読みやすく、理解しやすく表示するJavaScriptのライブラリを紹介します。 このライブラリを使用すれば、シンプルで一貫性のある書式で表示できます。 little-date -GitHub little-dateの特徴 日時範囲のフォーマット little-dateの使い方 little-dateの特徴 WebサイトやスマホアプリのUIで日時範囲を表示するときに、日時の範囲が長すぎたり、繰り返しが多かったりして、読みにくいことがよくあります。little-dateは日時範囲を短く、読みやすく、理解しやすくすることでこの問題を解決します。 たとえば、下記をご覧ください。 // よく見かける長いフォーマット console.log(`${from.toLocaleString()} - ${to.toLocaleS
tf.kerasが終了 Keras 3がTensorFlowから独立し、マルチバックエンド復活!:TensorFlow 2+Keras(tf.keras)入門 TensorFlow+Kerasの最新情報として、Keras 3.0のリリースに伴い、TensorFlowから独立し、TensorFlow 2.16以降でKeras 3がデフォルトとなったことについて紹介します。また、Keras 3(TensorFlowバックエンド)での書き方や、今後のディープラーニングライブラリの選び方についても私見を示します。 連載目次 もう4年も前になりますが、2020年5月に「マルチバックエンドKerasの終焉(しゅうえん)、tf.kerasに一本化」という記事を書きました。しかしその後、逆の動きが起きています。本稿では、前回の記事をフォローアップする目的も兼ねて、最新の状況をお伝えします。 そもそもKer
DockerでNode.jsアプリケーションを動かす際に色々と考慮しなければいけない点があるのでそのあたりを解説していきます こんにちは!バックエンドとインフラを勉強中のこのぴーです 前回はDockerイメージを軽量化する方法について解説しましたが、今回はDockerでNode.jsアプリケーションを動かす際に色々と考慮しなければいけない点があるのでそのあたりを解説していこうと思います また、今回作成するDockerfileや.dockerignoreはGitHub上から確認できます やってしまいがちな例 まず、悪い例として何も考えずにexpressのサーバをDockerを使って立ててみます index.js (expressのドキュメントより引用) const express = require('express') const app = express() const port =
現状 Vitest が Jest など他のテスティングフレームワークに比べて遅くなる場合があることがわかっています。 (確実に遅くなるとはいえない。が、私自身もテストの速度が遅くなったことを経験しています。) また Vitest を実行する場合、--single-threadオプションをつけると速くなるということもわかっています。 (0.29.0以前は --no-threads) 公式 Docs にも最大3倍速くなることが記載されています。 WARNING This option is different from Jest's --runInBand. Vitest uses workers not only for running tests in parallel, but also to provide isolation. By disabling this option, yo
day.jsを使ってたけど、サイズも小さく軽量とのことで、 ちょっと試してみたときの備忘録(*´ω`*) tempo.formkit.com FormKitのチームが開発したらしい formkit.com Tempoとは nativeのDateを操作するユーティリティなライブラリ。 day.jsとは違い、Date自体を直接操作する感じ。 import { format, parse } from "@formkit/tempo" // Dateのformat const readable = format(new Date(), "full") // Dateへのparse parse(readable, "full") タイムゾーンのサポートも手厚い。 import { tzDate, format, applyOffset, offset } from "@formkit/tempo"
2025-05-06, Version 24.0.0 (Current), @RafaelGSS and @juanarbol We’re excited to announce the release of Node.js 24! This release brings several significant updates, including the upgrade of the V8 JavaScript engine to version 13.6 and npm to version 11. Starting with Node.js 24, support for MSVC has been removed, and ClangCL is now required to compile Node.js on Windows. The AsyncLocalStorage API
はじめに 皆さんはnpm, yarn, pnpmどのPackage Managerを使っていますか? yarnしか使わない!という方もいるかもしれませんが、pnpm評判いいみたいだし使ってみようかなとか、チーム開発では安定のnpmなんだよなとか、複数のPackage Managerを使用するケースって少なくないかと思います。 そういった場合、それぞれのコマンドを覚えるのも面倒ですし、プロジェクトに応じて頭の切り替えをしないといけないのは大変です。 本記事は、そういった悩みを解決する方法を紹介します。 ni niはnpm,yarn,pnpm,bunに対応していて、それぞれのlockfileを読み取って、適切なコマンドを実行してくれるPackage Managerです。 niのコマンドは短く、わかりやすいのですぐ覚えられると思います。 ちなみに、作者はVueやNuxt、Viteなどのコアチーム
今までCapacitor(=WebViewのみ)で実装されていたユビーのモバイルアプリ(Android/iOS)を、React NativeとWebViewを組み合わせたハイブリッドアプリとして刷新しています。その過程で、WebView内で実行されるJavaScriptから、React Native側で定義した関数を型安全に呼び出せるライブラリを実装しました。その使用例と仕組みを紹介します。 使い方 React Native側の実装 まずライブラリをインストールします。Peer dependenciesであるreact-native-webviewとcomlinkも入れてください。 npm install @react-native-webview-rpc/native npm install react-native-webview comlink # peer dependencies
こんちには。 データアナリティクス事業本部 インテグレーション部 機械学習チームの中村です。 今回は大規模言語モデルをシングルGPUで動かせるという噂のFlexGenについて使ってみて紹介したいと思います。 FlexGenとは FlexGenは、大規模言語モデル(LLM: Large Language Model)をシングルGPU(例えば、16GBのT4や24GBのRTX3090)で実行可能な高スループットな生成エンジンです。 以下がGitHubになります。 FlexGenは、Meta社が開発したOPT(Open Pre-trained Transformer)を動かすことができ、実際にAIアシスタントと会話することができます。 参考までにOPTに関する論文は以下です。 使用環境 Google ColaboratoryのPro環境を使います。モデルのアーキテクチャによって動作させるスペック
はじめに 今回は、初心者から中級者になるためのJavaScriptを学んでいきましょう。 JavaScriptを全く勉強したことがないという人には以下の記事がおすすめです。 【JavaScriptの超基本】ファイルのインポートやエクスポートについて簡単に解説 【JavaScriptの超基本】コールバック関数について簡単に解説 【JavaScript】プリミティブ型とオブジェクト型を理解したい それでは、頑張っていきましょう。 配列やオブジェクトのちょっと便利な構文 それではJavaScriptのちょっと便利に構文について学んでいきましょう。 オブジェクトのkeyとvalueに変数を指定 JavaScriptではオブジェクトのkeyとvalueに変数を指定することができます。以下のコードです。
Features Seamless TypeScript execution Run TypeScript code without worrying about configuration! tsx runs your TypeScript code with modern and sensible defaults, making it user-friendly and especially great for beginners. Seamless CJS ↔ ESM imports No need to wonder whether a package is CommonJS or ESM again. If you've encountered the ERR_REQUIRE_ESM error in Node, you'll never see it again! Wa
jQuery Attack Hits NPM and GitHub; Can Extract Web Form Data The trojanized jQuery attack has been spread on npm, GitHub and elsewhere since May. A trojanized version of jQuery has been spreading on the npm JavaScript package manager, GitHub and elsewhere, for use in a jQuery attack, security researchers have discovered. Phylum researchers said they have been monitoring the “persistent supply chai
CoC が苦手な奴、認知資源が乏しいだけ説 「設定より規約」「CoC (Convention over Configuration)」と呼ばれる設計思想がある。 参考 : 設定より規約 - Wikipedia フレームワークやライブラリ側で、ベストプラクティスなデフォルト設定を規約として決めておくから、利用する開発者はイチイチ考えなくていいよ、というワケだ。 コレは、ともすれば、「Opinionated (自己主張的)」なフレームワークやライブラリだとみなすこともできるだろう。 参考 : Opinionatedなライブラリとチーム開発 - Runner in the High 僕は CoC が割と好きだし、CoC か否かに関わらず、Opinionated なツールも好きである。だが、自分の回りでは「CoC が苦手」とか「柔軟性のないフレームワークは嫌い」といった人が多く、疑問を持っていた。
Today I'm excited to announce the official release of Vite 2.0! Vite (French word for "fast", pronounced /vit/) is a new kind of build tool for frontend web development. Think a pre-configured dev server + bundler combo, but leaner and faster. It leverages browser's native ES modules support and tools written in compile-to-native languages like esbuild to deliver a snappy and modern development ex
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く