タグ

node.jsに関するhiroomiのブックマーク (33)

  • Node.js の進化に伴い不要となったかもしれないパッケージたち

    tl;dr はじめに 2024 年の 4 月 24 日に Node.js 22 がリリースされました。ESM を 条件付きで require する機能や、--run フラグによる npm スクリプトのパフォーマンス改善などが v22 で追加され、2009 年に Ryan Dahl が Node.js をリリースしてから 15 年が経つ今も、Node.js は進化を続けています[1]。 こうして Node.js 自身が強化されていくにつれ、以前はサードパーティーのパッケージを使用して実現することが一般的であった機能が Node.js のみで実現可能となり、当該パッケージが不要となるような場合があります。冒頭に引用した Ben Holmes の動画では、そのように不要となったパッケージとして dotenv node-fetch chalk mocha が挙げられていますが、この記事では「これら

    Node.js の進化に伴い不要となったかもしれないパッケージたち
  • 気象庁公式の天気予報の情報(JSON)を curl・Node.js で取得し Node.js での処理を試す - Qiita

    以前、話題になっていた以下の情報取得の話について、自分が仕様を理解するためや、後で見返したくなりそうな情報をまとめてメモしておく意味で記事を書きます。 一番伸びてるのはこれかしら。仕様の継続性や運用状況のお知らせを気象庁はお約束していないという意味で、APIではないと申し上げざるを得ないのですが、一方で政府標準利用規約に準拠してご利用いただけます。 https://t.co/QLuhI4DNDv — TOYODA Eizi (@e_toyoda) February 24, 2021 記事に書いた内容 この記事で書いた内容は、主に以下です。 天気予報の取得方法 URL 地域の指定 取得できる JSON の構造 取得した情報の処理 一部のみを取り出してみる 気象庁が提供している情報を取得する 天気予報の情報を取得 いろいろなサイト・SNS上の投稿に情報がありますが、以下のページを参照して進めて

    気象庁公式の天気予報の情報(JSON)を curl・Node.js で取得し Node.js での処理を試す - Qiita
  • Amazon.co.jp: 実践Node.js入門―基礎・開発・運用: 伊藤康太: Digital Ebook Purchas

    hiroomi
    hiroomi 2023/01/18
    978-4297129569
  • ゼロからはじめるJavaScript(22) iOS 16で連絡先の一括バックアップが容易に!Node.jsでvCardを読もう

    個人的にiOS 16になって最も嬉しかったのが「連絡先」アプリの大幅アップデートです。汎用的なvCard形式で連絡先が気軽に書き出せるようになりました。vCardはテキストベースの汎用的な電話帳データ形式です。今回はNode.jsからvCard形式を読む方法を紹介します。 スマートフォンからエクスポートしたvCardファイルをNode.jsで読んだところ クラウド時代であってもバックアップが大切 今やいろいろなデータがクラウドに保存されるようになりました。スマートフォン上のデータも例外ではなく、様々な情報がクラウドにバックアップされます。そのため、スマートフォンを新しくした際のデータ移行はずいぶん楽になりました。 しかし、先日、知人がApple IDが乗っ取りに遭い、iPhoneの再インストールを余儀なくされた話を聞きました。旧アカウントは利用することができなくなり、新たにアカウントを作る

    ゼロからはじめるJavaScript(22) iOS 16で連絡先の一括バックアップが容易に!Node.jsでvCardを読もう
  • Azure AD 認証でLinuxへログイン!!

    以前、「Linux ログインをAzureADで認証する!!」では、Node.jsでスクリプトを書き、AzureAD認証を実現しました。今回は、AzureAD認証用のエージェントがリリースされたので試したいと思います。 こちらの方が、楽に実装できるのでオススメです!! ※現時点では、Azure Linux のみサポート 全体の流れ Step1:Linuxサーバーの作成とエージェントのインストール Step2:Linux認証用ユーザーの作成 Step3:RBACでの権限付与 Step4:Linuxサーバーへの接続 Step1:Linuxサーバーの作成とエージェントのインストール 仮想マシンを新規作成ー[Azure Active Directoryでログインする]を有効 ※CentOSの場合は表示されないので、手動でエージェントをインストールします。 CentOSの場合 ※Cloud Shell

    Azure AD 認証でLinuxへログイン!!
  • Node.jsコンテナイメージを極限まで軽量化! サイズを1/10以下に|SHIFT Group 技術ブログ

    はじめにSHIFT DAAE の shinagawa です。表題の通りNode.jsで作成したコンテナのイメージサイズの軽量化に挑戦しました。 背景近年の多様化・高速化するビジネスに対応するITシステムの構築を実現する「クラウドネイティブ」の構成要素の一つとして 「コンテナ」という仮想化技術が存在し、当部門でも活用を進めております。 このコンテナイメージを作成するにはアプリケーションコードやライブラリ・モジュールなどの依存物、ランタイム等を1つのイメージとして組み立てて作成しますが、 この構成要素が増えるとイメージサイズが肥大化し保管時のストレージのコストの増加やイメージの転送、環境への展開に時間がかかることになります。 従ってイメージのサイズを削減することは、これらの点を改善することにつながります。 ここではネット上で紹介されている、あらゆる打ち手を組み合わせてコンテナイメージの軽量化に

    Node.jsコンテナイメージを極限まで軽量化! サイズを1/10以下に|SHIFT Group 技術ブログ
  • 今すぐにNext.jsでフロントエンド開発 or Web制作を快適に始めたい方におすすめの簡単セットアップを紹介する

    はじめに 株式会社LCLでフロントエンドエンジニアとして働いている「おとの」と申します。 今回は、今をときめくフロントエンドのフレームワーク「Next.js」を使って、個人もしくは複数人のチームで快適にフロントエンド開発を行いたい方にオススメのセットアップを紹介します。 セットアップを行うメリットは以下の通りです。 (自動formatが有効になる等)開発速度が増す (StylelintやEslintの静的解析により)不具合の発生や潜在的なエラーを防ぎやすくなる コードの品質と一貫性を保つことができる Next.jsを使いこなせれば、フロントエンド開発だけに限らず、ランディングページ(LP)など静的なWebサイトの実装を行うWeb制作にも有用です。 私自身、Webサイト1ページのコーディングが求められる際もNext.jsを使っています。セットアップも簡単に終わるので、今すぐ始めたい方はぜ

    今すぐにNext.jsでフロントエンド開発 or Web制作を快適に始めたい方におすすめの簡単セットアップを紹介する
  • 【Node.js】Raspberry Pi Zeroに最新のNode.jsをインストールする - たねやつの木

    公式ドキュメントにあるようにスクリプトを実行してみます。 $ curl -sL https://deb.nodesource.com/setup_10.x | bash - ## Installing the NodeSource Node.js 10.x repo... ## You appear to be running on ARMv6 hardware. Unfortunately this is not currently supported by the NodeSource Linux distributions. Please use the 'linux-armv6l' binary tarballs available directly from nodejs.org for Node.js 4 and later. CPUのアーキテクチャがARMv6なのでこの方法で

    【Node.js】Raspberry Pi Zeroに最新のNode.jsをインストールする - たねやつの木
  • Node.jsのMySQLパッケージにおけるエスケープ処理だけでは防げない「隠れた」SQLインジェクション - Flatt Security Blog

    記事は筆者styprが英語で執筆した記事を株式会社Flatt Security社内で日語に翻訳したものになります。 TL;DR Node.jsのエコシステムで最も人気のあるMySQLパッケージの一つである mysqljs/mysql (https://github.com/mysqljs/mysql)において、クエリのエスケープ関数の予期せぬ動作がSQLインジェクションを引き起こす可能性があることが判明しました。 通常、クエリのエスケープ関数やプレースホルダはSQLインジェクションを防ぐことが知られています。しかし、mysqljs/mysql は、値の種類によってエスケープ方法が異なることが知られており、攻撃者が異なる値の種類でパラメータを渡すと、最終的に予期せぬ動作を引き起こす可能性があります。予期せぬ動作とは、バグのような動作やSQLインジェクションなどです。 ほぼすべてのオンラ

    Node.jsのMySQLパッケージにおけるエスケープ処理だけでは防げない「隠れた」SQLインジェクション - Flatt Security Blog
  • グーグルが開発した画像圧縮ツールSquoosh。フロント開発向けにNode.jsで扱う方法まとめ - ICS MEDIA

    グーグルが開発した画像圧縮ツールSquoosh。フロント開発向けにNode.jsで扱う方法まとめ 『Squooshスクーシュ』というGoogleが開発した画像圧縮ウェブアプリがあります。ブラウザで変換結果を見ながら圧縮設定ができるので、画像圧縮の難しい知識を持たない方でも使いやすいことが特徴です。圧縮だけでなく、WebPなどの各種フォーマットへの変換・リサイズといったこともできる便利ツールです。 このSquooshをNode.jsで扱える『libSquoosh』が存在します。libSquooshは大量の画像を一括で圧縮、WebPへの変換、リサイズなどの処理をこれ1つで完結できるのがポイントです。昨今のウェブはページの読み込み時間が重視される傾向があります。画像のファイルサイズは読み込み時間に大きく影響するため、画像圧縮は重要なテクニックです。libSquooshをwebpack・Viteと

    グーグルが開発した画像圧縮ツールSquoosh。フロント開発向けにNode.jsで扱う方法まとめ - ICS MEDIA
  • Node.js Web アプリケーションを Docker 化する | Node.js

    Node.js Web アプリケーションを Docker 化する この例の目的は、Node.js アプリケーションを Docker コンテナに取り込む方法を説明することです。 このガイドは開発を目的としており、 番展開を目的としていません。 このガイドでは、正常に Docker がインストールされ、 Node.js アプリケーションがどのように構成されているかについての基的な知識があることも前提としています。 このガイドの最初の部分では、Node.js で単純な Web アプリケーションを作成してから、 そのアプリケーション用の Docker イメージを作成し、 最後にそのイメージをコンテナとして実行します。 Docker を使用すると、ソフトウェア開発用に、コンテナと呼ばれる標準化された単位に すべての依存関係を持つアプリケーションをパッケージ化できます。 コンテナは、Linux

    Node.js Web アプリケーションを Docker 化する | Node.js
  • GitHub - mozilla/send: Simple, private file sharing from the makers of Firefox

    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 - mozilla/send: Simple, private file sharing from the makers of Firefox
  • Markdownで年表的なタイムラインを管理するツール

    mdlineというMarkdownでタイムライン(年表)を書いて、HTMLなどの形式にしたりできるパーサ、ジェネレーターなどのツールを書きました。 特定の記法で書いたMarkdownから年表的なタイムラインを作成するツール書いた。 $ npx mdline ./timeline.md -o timeline.html 現在はMarkdown to HTMLができる。https://t.co/7Vv0DUmYkX pic.twitter.com/oYJICloElA — azu (@azu_re) January 20, 2019 たとえば、次のようにECMAScriptのタイムライン(年表)をmdlineが決めたMarkdown形式で書きます。 (実際にはただのMarkdownなのですが、次のように 日付: タイトル とHeaderのレベルを合わせるとタイムラインとして扱う感じです) ##

    Markdownで年表的なタイムラインを管理するツール
  • npm 5.2.0の新機能! 「npx」でローカルパッケージを手軽に実行しよう - Qiita

    npmとはNode.jsインストール時に付属するパッケージマネージャーで、Node.jsのパッケージの管理や実行を取り扱うものです。 npmのバージョン5.2.0で導入された「npx」を用いると、下記のようにローカルにインストールしたnpmパッケージを、npxコマンドだけで実行できるようになります。 npxはnpmにバンドルされているため、npxの個別インストールは不要です。 次のようにしてモジュールを実行できます。 従来のnpmの実行方法との比較 従来では、ローカルのnpmパッケージを使用するには、次のような方法が必要でした。 方法1: ./node_modules/.bin/(パッケージ名)で実行する 方法2: $(npm bin)/(パッケージ名)で実行する 方法3: package.jsonにnpm-scriptsを記述して実行する npxはいずれの方法よりも簡潔なコマンドで、パッ

    npm 5.2.0の新機能! 「npx」でローカルパッケージを手軽に実行しよう - Qiita
  • Node.js チュートリアル | Node ビギナーズブック

    書について 書は、Node.jsでのアプリケーション開発を始めようとする皆さんに、 ”高度な”JavaScriptについて知るべきあらゆることを解説します。 よくある”Hello World”チュートリアルの、はるか上をいくものです。 ステータス 貴方が読んでいるのは、書のいわゆる最終版となります。 つまり書は、間違いが見つかった場合や、 Node.jsの新バージョンにおえる変更点を反映する時のみ、改訂されます。 最終更新日は2012年2月12日です。 書内のコードのサンプルは、Node.jsのバージョン0.6.10でテストしています。 ターゲット読者 書は、RubyPythonPHPJavaのような、少なくともひとつのオブジェクト指向言語を理解しており、 JavaScriptについてはあまり経験がなく、Node.jsについては全く経験がないという、 著者と同じようなバッ

  • Node.jsのログ取得にはwinstonがオススメ - UTALI

    2017 - 06 - 20 Node.jsのログ取得にはwinstonがオススメ Node.js www.npmjs.com Expressでデフォルトで利用できるロガーと比較して多機能なWinstonをおすすめします。 Winstonはログの種類によるログファイルへの出力の振り分けや、データベースへの書き出しにも対応しています。 例えば、通常のログファイルはローカルのファイルに書き出す一方で、エラーログに限定してリモートのデータベースに保存するような使用法も可能になっています。 導入 sudo npm i winston --save
 const winston = require( 'winston' ); ログのレベルの振り分け ログはそのレベルによって分類が可能なように RFC5424 の規格で定められています。 そのレベルは { error: 0, warn: 1, info

    Node.jsのログ取得にはwinstonがオススメ - UTALI
  • npm パッケージの unpublish に関するゴタゴタの大まかなまとめ - ヤルキデナイズド

    (最終更新:3月24日16:50ごろ) 事件の流れ kik の作者が同名の会社 KIK の弁護士特許出願代理人からパッケージ名を変更するよう要請される 作者が拒否したところ弁護士代理人は npm の運営にコンタクトする 運営が作者の許可なくパッケージを unpublish するパッケージの所有権を移し替える 作者がこれに反発し自身が所有する270あまりのパッケージをすべて unpublish する I’ve Just Liberated My Modules — Medium unpublish されたパッケージは npmjs.com からダウンロードできなくなる unpublish されたうちのひとつである left-pad に間接的に依存したパッケージが多数あったため世界中でビルドがぶっ壊れる npmjs.org tells me that left-pad is not availa

    npm パッケージの unpublish に関するゴタゴタの大まかなまとめ - ヤルキデナイズド
  • 作業自動化のための Node.js 入門 - ほんじゃらねっと

    これまでいくつかの記事でNode.jsを使ったスクリプトを載せてきたが、 自動化のためのスクリプトを書いて動かす環境として Node.jsは手軽だし速いし色々ライブラリは揃ってきているし なかなか良い環境だと感じている。 Web系の仕事をしていればJavascriptはある程度親しみのある言語だろうし、 GruntやGulpのようなWeb関連作業を自動化する 機能満載のタスクランナーまで用意されている。 実行環境もインストーラをダウンロードしてインストールすれば パッケージ管理ツール付きで入手することができるので、 すぐに開発を始めることができる。 非同期処理が得意なサーバアプリケーションを作るための環境として 紹介されることが多いけど、この手軽に導入できて Javascriptでサクッとアプリが作れるところだけでも十分に価値があると思う。 ノンプログラマが仕事を効率化するためにプログラミ

    作業自動化のための Node.js 入門 - ほんじゃらねっと
    hiroomi
    hiroomi 2016/03/16
    "非同期処理が得意なサーバアプリケーションを作るための環境として 紹介されることが多いけど、この手軽に導入できて Javascriptでサクッとアプリが作れるところだけでも十分に価値があると思う。"
  • Node.jsの仕組みはWebアプリ開発者も知っておくべき

    インターネットのサービスは、アクセスしてきたユーザーを「待たせない」ことが大前提だ。「待たせない」サービスを実現するために、新しいインフラ技術が次々と登場している。例えばJavaScriptの実行基盤を構築するサーバー用ソフト「Node.js」もその一つ。大量の同時接続ユーザーに対して高速にレスポンスできる技術として、今、大きな注目を集めている。 Node.jsは、Webサーバー構築ソフト「Apache」やWebアプリケーションサーバー構築ソフト「Tomcat」などと置き換えて使う。ただし、単純に置き換えるだけで必ずレスポンスが高速になるわけではない。Node.jsが持つ来のパフォーマンスを引き出すには、実装するWebアプリケーションの開発に注意が求められる。 “ループ”を止めないアプリが不可欠 Apacheの場合、複数のスレッドを起動して並行処理することで、大量のアクセスに対応できるよ

    Node.jsの仕組みはWebアプリ開発者も知っておくべき
  • GREEが悩むNode.jsの問題を考えるヒント - ぼちぼち日記

    先日 GREEを支える大規模インフラテクノロジー」-GREE Platform Summer Conference 2012 という記事が公開され、GREEのCTOの藤さんが、 javascriptをサーバーサイドでも使うケースが多くなってきていて、必然的にnode.jsを使うことになるが、大きく3つの問題がある。 ひたすらすごい勢いでバージョンアップしているので安定しない。コストを払ってついていく覚悟を持って取り組んでいる。 メモリリークがあるので、サーバを起動しっぱなしにするとメモリがいつぶされる。 コードをデプロイしても再起動しないと読み込まれない。 (中略) これで絶対大丈夫という解決策がなくて、node.jsで一番悩んでいる。これでバッチリ解決するというものがあれば、是非教えて欲しい。 といった話が掲載されていました。 GREEさんに限らず一般的に Node に対して同じ問題

    GREEが悩むNode.jsの問題を考えるヒント - ぼちぼち日記
    hiroomi
    hiroomi 2013/01/01
    「API 仕様の変更がないので数バージョン飛ばしても動作がおかしくなるリスクは少ないです。ただし issue を報告する際は最新安定版での動作挙動を尋ねられますので、最新安定バージョンが…」