20220110のNode.jsに関する記事は7件です。

Windowsでnode-gypが成功した話

エラーが出る人は下準備をしていない?! エラーが出るのはnode-gypの基準に満たしてないかも! node-gyp公式サイトに詳しい情報が載ってるので英語が得意な人は読んでみてください。 下準備 以下のことを順番通りにしてみてください! Pythonのインストール まず、Pythonをインストールしてください。 Microsoft StoreのPythonをおすすめします。 Visual Studio Build Toolsのインストール Pythonの次に、Visual Studio Build Toolsが必要です。 「Visual C++ build tools(Visual C++ビルドツール) ワークロード」もしくは、「Desktop development with C++(C++によるデスクトップ開発) ワークロード」をインストールしてください。 私の環境では、Visual Studio Build Tools 2019をインストールしました。 npmのコンフィグの設定 大半の人はこの設定をしていないのでしょうか? コマンドプロンプトもしくはPowershell等の、npmが使えるものを起動してください。 起動したら、 npm config set msvs_version インストールしたバージョン を入力してエンターキーを押します。 ※インストールしたバージョンは、先ほどインストールしたVisual Studio Build Toolsのバージョンを入れてください。(私の場合は2019です。) 下準備完了 これでおそらくWindowsでnode-gypのエラーを見ることはないでしょう。 試しにTensorFlow.jsのNode.js版をインストールしてみてください! 最新情報 この記事は、Renorariぶろぐで配信中です! 最新の情報を得るには、Renorariぶろぐをご参照ください!!
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

私がサクッと認証付きで Node.js からメールを送った話

認証付きで Node.js からメールを送るのは初心者には難しい? 人によって難易度は違うように感じますが、これはそこそこ難しいと思います。 どうしても、エラー文が分かりにくく解決策も簡単に見せてはくれません。 なので、挑戦するときは 挑戦して成功した人 と一緒に挑戦するといいでしょう。 必須条件 Node.js が扱える・動かせる メール・Node.js についての知識がそこそこある サーバーとドメインがある サーバーで、すでに Node.js 製の何か(Web サーバー等)があり、ドメインの設定等が済んでいる Zoho 契約 無料で使える Zoho メールサービスに契約 Zoho 公式サイトにアクセスして、契約してください。 契約はサイトの通りにしてください。 Zoho メールサービスのセッティング このサービスのセットアップウィザードは、非常に分かりやすいのでここに記載する必要はないでしょう。 おっと! Zoho のメールサービスのセットアップウィザードが便利すぎて、ここで解説することがなくなってしまいました! どうしましょう? 大切なことを忘れてませんか? この記事は、Node.js でメールを送信することを目標にしています。 はい、ということでここからは Node.js を使ってメールを送信の方法を説明していきます! Node.js でメールを送信! Node.js でメールを送信するには、「nodemailer」というパッケージが便利です。 npm install nodemailer nodemailer-smtp-transport と入力してインストールしてください。 次は、Node.js でコードを書いていきます。 //おなじみrequire var mail = require("nodemailer"); //メールのパラメータ var mailParam = { "host":"smtp.zoho.com", "port":465, "auth": { "user": "test@renorari.net",//ここはZohoで設定したものに! "pass": "renorari_is_god"//Zohoアカウントの設定 > セキュリティ > アプリ専用パスワード で取得したパスワード } }; //メール送信後のコールバック var callback = (err, result) => { if (err) { console.log("メール送信エラー: " + err); } else { console.log("メール送信完了!: " + result); }; }; //送信 var smtp = mail.createTransport("SMTP", mailParam); smtp.sendMail({ from: "メール送信テスト <test@renorari.net>", to: "your.address@example.com", subject: "メール送信テスト", text: "テストのメール!" }, callback); 最新情報 この記事は、Renorariぶろぐで配信中です! 最新の情報を得るには、Renorariぶろぐをご参照ください!!
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

PCB Art - What Is PCB(PCBとは何?)

この記事はJLCPCBと共同で公開されています。JLCPCBはPCBのプロトタイプと製造の分野で10年以上の経験を持つ最も経験豊富なPCBメーカーのひとつであり、品質、納期、費用対効果など、さまざまな業界のお客様のニーズを満たすことに取り組んでいます。 これは入門レベルであり、ボードの準備に役立つ設計とテストに関してお話いたします。高度なトピックについては説明しませんが、ここで取り上げるスキルは、プロ品質の回路基板を作成するために役に立てます。 用品 PCBは「プリント回路基板」の略です。これは、ほとんどの電子消費者製品に搭載されている標準な回路基板です。 ところが、PCBは、電子消費者向け製品として使用されるだけでなく、ツールや芸術作品としても使用できる方法があると思います。まず、PCBとは何かを理解しましょう。 ステップ1:PCBとは PCBは、導電層と絶縁層の積層サンドイッチ構造です。PCBには2つの補完的な機能があります。1つ目は、はんだ付けによって外層の指定された場所に電子部品を貼り付けることです。 2つ目は、PCB設計と呼ばれることが多い制御された方法で、コンポーネントの端子間に信頼性の高い電気接続(および信頼性の高い開回路)を提供することです。 各導電層は、その導電層に電気接続を提供する導体のアートワークパターン(平らな表面のワイヤに似ています)で設計されています。 ステップ2:PCB4層 標準の回路基板には、私たちが気にする必要のある4つの層があります。これには、ベース、銅層、ソルダーマスク、シルクスクリーン層が含まれます。 通常、回路基板には2つの側面があります。つまり、上面と下面があります。各サイドには、これら4つのレイヤーすべてを含めることができます。この両面配置はかなり標準的です。 4つのレイヤーは、さまざまな組み合わせによってさまざまな視覚効果を発揮します 例えば: ・何もありません、ソルダーマスクが表示されます ・ソルダーマスクのみ、ベースが表示されます ・銅とソルダーマスク、銅が表示されます ・銅のみ、より暗いソルダーマスクが表示されます色 ・シルクスクリーン、白が表示されます ステップ3:PCBアートの設計 PCBの構造を理解すると、PCBアートの設計を開始できます。私は無料のソフトウェアEasyEDAを使用しました 。これは無料で使用でき、ブラウザで実行するだけで、必要に応じてオフラインのデスクトップアプリケーションがあります。 誘導灯を描きました。使用したレイヤーの組み合わせを知っていますか。 ステップ4:製造 最後に、それは工場で製造されています。 JLCPCBは、世界中の人々のために高品質のプロトタイピングPCBを製造しています。世界中に30万人以上の顧客がいて、1日あたり8000件以上の注文があります。彼らは10年以上の製造経験があり、非常に信頼性があります。自分で試してみて、JLCPCBでたった2ドルで10個のPCBを入手してください。 新規登録ユーザーUS $ 18オファー、こちらから注文https://jlcpcb.com/JPA JLCPCBからPCBを注文する方法の簡単な例 : 1)「QUOTENOW」を押す 2)「ガーバーファイルを追加」を押します 3)zipまたはrarをアップロードする 4)すべてのプロパティをデフォルトのままにすることができます *プロパティから変更する必要があるのはPCBカラーだけです PCBファイル ステップ5:何を設計する予定ですか 約数日後、PCBを受け取りました。 通常のように、JLCPCBはいくつかの超高品質で驚くべきPCBを提供しました。 皆さんがこの楽しい小さなプロジェクトを楽しんだことを願っています、あなたは何をデザインする予定でしょうか。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

そのオープンソースプロジェクト、公開前に大事な情報コミットしてない?

通常、秘密鍵やAPI Tokenはソースコードとは分離させ、.envファイルなどに保存しておいて、Gitのコミットには含めない。しかし、実装の初期には.envを一時的にコミットに含めている事例も珍しくない。それを後で削除してコミットしても、履歴としては残っている。 この記事では、スマートコントラクト用の秘密鍵や、APIトークンなどの情報をGitのコミット履歴から検索し、リポジトリを公開する前に安全を確認できるツールを紹介する。 コミット履歴を展開する 私の作ったesightというツールを使う。 git logを使って確認するのが一般的だが、一度全て展開した方が、後の編集や確認が楽になる。 インストール pip3 install git+https://github.com/TakutoYoshikai/elemental-sight.git コミット履歴の展開 出力先ディレクトリに、全てのコミットの差分ファイルが展開される。そこからターゲットとなる文字列を検索し、それを修正すればよい。 esight /path/to/repo {BRANCH} -o {OUTPUT DIR} 展開されたディレクトリはこうなっている コミットが順番に番号のディレクトリに出力されて、差分のファイルが保存されている。 APIトークンや秘密鍵などの文字列を検索するツール このesightを使用して、gitのコミット履歴を展開した後、正規表現でランダムな文字列を検索するツールshibaを開発した。 このshibaは、正規表現によってhex文字列や、普通の文字列を検索した後に、その文字列がランダムに生成されたかどうか、文字の出現頻度の分散を計算し、閾値以上のものを表示する。 インストール git clone https://github.com/TakutoYoshikai/shiba cd shiba ./install.sh #パスを通す echo "export PATH=\$PATH:/path/to/shiba/bin" >> ~/.bash_profile 使い方 # APIトークンを探す shiba /path/to/repo {BRANCH} {TOKEN LENGTH} # ./SHIBA_RESULT にコミット履歴が展開されている # hex文字列を探す shiba /path/to/repo {BRANCH} hex {TOKEN LENGTH} #例: ローカルにcloneしたreactのリポジトリの中から32文字のhex文字列を検索する shiba ./react master hex 32 結果は以下のように表示される ./0/message.json 4hQ0v2z7fNRvvOji0jShV5SpNqYEgajJ ./1/message.json zkjhJgeY336mqEADvkvE494xxi2XyB8u ./2/env oe7tGfeBW1YJga7DieAjtrxCgNhs1c5X コミット履歴を確認した後 公開してはいけないデータを見つけた場合の対処法が、以下のメルカリの記事に修正の方法がまとめられている。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

nvm-windowsでNode.jsをインストールする

nvm-windowsとは Node.jsのバージョンを管理するアプリケーション。 複数のバージョンをインストールして、好きなタイミングで使用するバージョンを切り替えたりできる。 nvm-windowsをインストールする Gitリポジトリからnvm-setup.zipをダウンロードし、nvm-setup.exeを実行する。 聞かれる質問は基本的に全てデフォルトで問題ないが、インストール先のフォルダのパスの半角スペースが含まれる場合、コマンド実行時に動作しない可能性がある。 mvnのバージョンを確認する インストールできたら下記のコマンドでバージョンを確認できる。 ❯ nvm version 1.1.9 インストール済みのNode.jsを確認する 現段階ではまだ何もインストールしていないため、No installations recognized.が出力される。 ❯ nvm list No installations recognized. Node.jsのLTS(長期の保守運用が約束されたバージョン)を確認してインストールする 下記コマンドでインストールできるNode.jsのバージョンを確認できる。 ❯ nvm list available | CURRENT | LTS | OLD STABLE | OLD UNSTABLE | |--------------|--------------|--------------|--------------| | 17.3.0 | 16.13.1 | 0.12.18 | 0.11.16 | | 17.2.0 | 16.13.0 | 0.12.17 | 0.11.15 | | 17.1.0 | 14.18.2 | 0.12.16 | 0.11.14 | | 17.0.1 | 14.18.1 | 0.12.15 | 0.11.13 | | 17.0.0 | 14.18.0 | 0.12.14 | 0.11.12 | | 16.12.0 | 14.17.6 | 0.12.13 | 0.11.11 | | 16.11.1 | 14.17.5 | 0.12.12 | 0.11.10 | | 16.11.0 | 14.17.4 | 0.12.11 | 0.11.9 | | 16.10.0 | 14.17.3 | 0.12.10 | 0.11.8 | | 16.9.1 | 14.17.2 | 0.12.9 | 0.11.7 | | 16.9.0 | 14.17.1 | 0.12.8 | 0.11.6 | | 16.8.0 | 14.17.0 | 0.12.7 | 0.11.5 | | 16.7.0 | 14.16.1 | 0.12.6 | 0.11.4 | | 16.6.2 | 14.16.0 | 0.12.5 | 0.11.3 | | 16.6.1 | 14.15.5 | 0.12.4 | 0.11.2 | | 16.6.0 | 14.15.4 | 0.12.3 | 0.11.1 | | 16.5.0 | 14.15.3 | 0.12.2 | 0.11.0 | | 16.4.2 | 14.15.2 | 0.12.1 | 0.9.12 | | 16.4.1 | 14.15.1 | 0.12.0 | 0.9.11 | | 16.4.0 | 14.15.0 | 0.10.48 | 0.9.10 | This is a partial list. For a complete list, visit https://nodejs.org/en/download/releases LTSの最新バージョンが16.13.1であることが確認できたため、バージョンを指定してインストールする。 ❯ nvm install 16.13.1 Downloading node.js version 16.13.1 (64-bit)... Extracting... Complete Installation complete. If you want to use this version, type nvm use 16.13.1 使用するバージョンを選択する PowerShellを管理者権限で実行し、下記のコマンドを実行する。 管理者権限で実行しない場合、「exit status 1」というメッセージが表示され、バージョン選択に失敗する。 ❯ nvm use 16.13.1 Now using node v16.13.1 (64-bit) インストール済みのNode.jsを確認する nvm listコマンドでインストール済みのNode.jsを確認できる。 下記は1つしか表示されていないが、複数のバージョンをインストールした場合はその全てが表示され、現在選択しているバージョンに「*」がつく。 ❯ nvm list * 16.13.1 (Currently using 64-bit executable) Node.jsのバージョンを確認すると、nvmで選択しているバージョンと一致していることが確認できる。 ❯ node -v v16.13.1 参考 nvm-windowsをインストールする 【入門】Electron完全に理解した
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Firebase CLIとかの出力が2022-01-10の一時期に乱れてた件

※Firebase CLI については更新されたので npm update すればもう大丈夫です ※npm 側で対応して該当バージョンが削除されました。よって我々側の作業不要です。 どうした firebase-tools とかの出力がおかしい。 どうして 依存の依存の(中略)依存である colors に変なリリースがあった。作者故意のものなのでそこの更新は期待できなさそう。 v1.4.2, v1.4.1 ← 問題あり v1.4.0 ← 大丈夫 どうする ※既に npm 側で対応されたので、現在は作業不要です。 直接利用している場合 過去のバージョンで固定すれば大丈夫。 $ npm install colors@1.4.0 依存の依存の場合 基本的には対象パッケージの更新待ちです。動く状態の package-lock.json が残っている場合、そのままにしておきましょう。 更新が来たら npm update で新しいバージョンがインストールされます。 ちなみに対象パッケージ自体のバージョンを下げてもたぶん改善しません。 更新が必要だったり新規プロジェクトとかでロックファイルがない場合は、直接書き換えれば差し当たりは動きます。package-lock.json から "colors" で検索してね。(このやり方で大丈夫なのか不安。) "dependencies": { "colors": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.2.tgz", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", "integrity": "sha512-5QhJWPFZqkKIieXJPpCprdOytvH7v0AGWpu9K2jZ4LWkGg3dVBNoYPgGGRpEsc0jb8Boy0ElYrdjH9uXfhRSqw==" } } (1.4.x 以外は大丈夫なので 1.0.3 とかは放っておいてください。) ロックファイル更新したら npm ci で再インストールです。 他に overrides という仕組みが便利だそう。詳しくは azu さんの記事を。 どうしてこうなった faker と同じ作者さんです。2020 年に火事に遭い、寄付も集まらず「これ以上無償では働けない」とのことです。 今回のニュース。 npm はかつて faker はバージョンを戻すなどしたらしい。colors も待ってれば npm 側がうまいことやってくれるかも? やってくれました。もう該当バージョンはレポジトリーから消えています。 その他 出力が乱れるのはそれはそれでバグ? 作者さんがむちゃくちゃにしてやる!!という気持ちで更新したのは間違いないと思うんだけど本来は AA が表示される予定だったっぽい? color じゃないよ colors です。 https://www.npmjs.com/package/color https://www.npmjs.com/package/colors colors vs colors.js npm のパッケージ名は colors、GitHub のレポジトリー名は colors.js です。 https://www.npmjs.com/package/colors https://github.com/Marak/colors.js npm ls でリスト表示して確認 依存ツリーとバージョンを表示できるので、不安なひとはこれで確認してみてください。 $ npm ls colors my-project@0.0.0 /path/to/project └─┬ firebase-tools@10.0.1 ├─┬ cli-table@0.3.11 │ └── colors@1.0.3 └─┬ winston-transport@4.4.1 └─┬ logform@2.3.0 └── colors@1.4.0 試す 該当バージョンの colors を読み込むだけで発症?します。 npm 側が問題のあるバージョンを削除しました。 当時: $ npm install colors@1.4.2 $ node Welcome to Node.js v16.13.1. Type ".help" for more information. > require('colors') (ギャー) Ctrl+C で止めて Ctrl+D で Node.js の REPL 終了です。 今: $ npm install colors@1.4.2 npm ERR! code ETARGET npm ERR! notarget No matching version found for colors@1.4.2. npm ERR! notarget In most cases you or one of your dependencies are requesting npm ERR! notarget a package version that doesn't exist. Firebase CLI は直接ダウンロードできる 動かすだけならこれでも。 (日本語で読みたければ右上から言語選択してください。) もっと詳しく azu さんの記事が出たのでそちらをどうぞ。 おしまい やんやは終わりました。ひとまずおつかれさまでした。 しかし色々つらいね……。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

React Nativeのstart時にエラー

npx react-native start コマンド実行時に下記のようなエラーが出た。 failed to construct transformer envelope routines::unsupported digital envelope routines::initialization error そのため、npx react-native run-androidを実行すると、Androidの仮想デバイスも赤いエラー画面が出力。 調べたところ、どうやらnode.jsのバージョンがいけないらしい。 自分が使っていたのは最新バージョンの17.3.0 v17でこのエラーが発生するようなので、安定バージョンの16.13.1にダウングレードすることで解決しました。 ちなみにnode.jsのダウングレードはWindowsだとコントロールパネルからnodejsをアンインストールして、 node.js公式から16.13.1をダウンロードして、インストーラを走らせるだけ。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む