Node.js関連のことを調べてみた2022年03月25日

Node.js関連のことを調べてみた2022年03月25日

M1 macにてnodebrewをinstallしようとしたらnodebrew にて詰まった話

### M1 macにてnodebrewをinstallしようとしたら普通に詰まって大変だった(半泣き)

フロントエンドエンジニアには欠かせないNode.js

フロントエンドエンジニアを目指して日々勉強している身としては環境構築で戸惑ってしまうのは非常にロスだ。
こんなことが二度と起きないために書き記しておく。

– Homebrewのインストール

“`bash
% cd /opt
% sudo mkdir homebrew
% sudo chown $USER homebrew
% curl -L https://github.com/Homebrew/brew/tarball/master | tar xz –strip 1 -C homebrew

# PATHを通す
% cd
% vim .zshrc

export PATH=/opt/homebrew/bin:/usr/local/bin:$PATH

% source .zshrc
% which brew
/opt/homebrew/bin/brew

# Xcodeのライセンスにagree
% sudo x

元記事を表示

Node.js Expressでサーバ情報を隠蔽するには?

## 以下の記事を参照して頂ければと思います

https://note.com/shift_tech/n/nd76b27d81458

**※Qiitaの記事は全て個人的な記載であり、所属する組織団体とは無関係です**

## 補足
ソースコード全体は以下。

https://github.com/yuta-katayama-23/post-restaurant-reviews/commit/00786d6b94cefbfefd1159eb665dd9117cdbf36c

元記事を表示

Discord.jsでボタン式認証を作ろう

# Discord.jsでボタン式認証を作ろう
今回はフレンドに頼まれてボタン式の認証BOTを作っていました
2時間もかかってしまった、、、

# 必要なもの
Discord.jsv13
Node.jsv16以上
keyv@sqliteまたはaurora-mongo

`npm i discord.js @keyv/sqlite`

# コード
“`js
const { Client, Intents } = require(‘discord.js’);
//discord.jsを読み込みClientとIntentを省略
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
//Discordのインスタンスをインテンツを指定して作る
const newbutton = buttondata => {
//独自の関数を作る(ボタン作成の関数)
return {
components: buttondata.map(data

元記事を表示

【npmエラー】This is a problem related to network connectivity.

## 状況
ドキュメント通りにLaravelの環境構築をしていたとき

https://readouble.com/laravel/9.x/ja/frontend.html?header=CSS%25E3%2581%25AE%25E5%2587%25BA%25E5%258A%259B

Dockerで“`npm install“`する際、下記のエラー

“`
% docker-compose exec [service名] npm install

npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm ERR! code ERR_SOCKET_TIMEOUT
npm ERR! network Socket timeout
npm ERR! network This is a problem related to network connectivity.
np

元記事を表示

Windows 上で npm が primordials is not defined で起動しない場合の破壊的解決法

Windows上でWebアプリを開発する際に node.js を使いたいのに、
その環境構築の段階で、なぜか npm のバージョン確認すらできなくなり困ったので、
後々のためにメモを残します。

**症状**
“`
C:\Users\****\>npm -v
evalmachine.:47
} = primordials;
^

ReferenceError: primordials is not defined
at evalmachine.:47:5
at Object. (C:\Users\****\AppData\Roaming\npm\node_modules\npm\node_modules\npm-registry-client\node_modules\graceful-fs\fs.js:11:1)
at Module._compile (node:internal/modules/cjs/loader:1103:14)
at Object.Module._ext

元記事を表示

【LINE BotをAPI連携させたいだけなのに #1】エラー祭りへようこそ

# LINE Botを思い通りに動かしたーい!!
LINE Botでプッシュメッセージとリプライメッセージ(おうむ返しと固定テキスト)返すところまではできた。(やっとのことで。息も絶え絶えで。)
そして息切れしながら向かった先は、
## 脳みそに新たなひらめきをくれるAPI連携Botが作りたい
仕事ではプランナーとして企画制作の1000本ノックを日々行い、大学院ではアート作品を作る私。__煮詰まった時に脳みそをリフレッシュさせたい!自分の思考の外から新たな風がほしい!!__
そんな時のお助けアイテムとして、**「デザインに関してのインスピレーションを与える名言」** というステキAPIからお言葉を頂戴しようと思った。

### まずは単純なオウム返しBot
“`php5
‘use strict’;

const express = require(‘express’);
const line = require(‘@line/bot-sdk’);

const PORT = process.env.PORT || 3000;

const config = {
channelSe

元記事を表示

気になった飲食店を探すシンプルなLINE Botを作ってみた

## 飲食店をさくっと調べて、後から見返したい:fork_and_knife:

### 気になるお店が見つかった時、どうしますか?

いつもと違う道を散歩中にお好みの飲食店を発見したり、グルメな友達が行きつけのお店を紹介してくれたのを聞いて、**気になるお店が見つかった時、皆さんどうされていますか?**

### メモアプリは二度手間だし、ググると後から見返すのに不便:cold_sweat:

私はiPhoneの**メモアプリに店名を書き留めておくか、店名をググって、グルメ情報サイトを見るかどっちかだと思います。** 特に休日の朝は、カフェで大好きなカプチーノを飲みながらのんびりするのが好きなので、朝早くから営業している居心地の良さそうなカフェを見つけた時は宝物を探し当てたかのような、ほっこりした気持ちになります。更に、カプチーノがメニューにあれば、そりゃーもう言うことないですよ!そのまま入店できない時は、店名を絶対忘れないようにメモっておきます。
メモアプリに入力した場合は、**あとから店を探すのは意外にめんどくさくて二度手間です**。メモアプリからえぇーと、店名をコピーして、Go

元記事を表示

Node.jsで.csv形式でログを取って.tar.gz形式で圧縮する

https://soluna-eureka.hatenablog.com/entry/2022/02/26/070110

の続き

# 開発背景
電力が貴重なこの時代!学術研究でも計算機の消費電力は無視できない!そもそもCPU温度が下がらない状況は危ない!
ということで常駐で温度を監視してログを取れるやつにまで昇華しました,やってることは基礎的なことのはずなんだけどな…

ちなみに冷却装置の設定によっては室温との相関があるかもしれない,流体の熱伝導を考えればそれはそうという感じはあるが

# 機能

+ 1秒毎にCPU温度を監視
+ 設定温度を超過するとSlackにログを送信
+ 毎分10n秒でログを`.csv`に書き込む
+ excelとかで見るのを前提に
+ 毎時0分でSlackにログを送信
+ 動作確認の意味合いも兼ねて
+ 毎日0時5分に前日の`.csv`を`.tar.gz`に圧縮し元の`.csv`を削除
+ もちろん最大圧縮

# 以下,反省と言い訳

## csvの操作がクソ難しい
こちらもオブジェクト型や配列型の酷使に慣れてい

元記事を表示

zsh: command not found: npmが出た時の対処法

ある日npmコマンドを打つとエラーが出ました。

“`
$ npm -v
zsh: command not found: npm
“`

npmコマンドが一切使えなくなってしまいました。
解決までに行った方法を共有します。

環境はmacOS Montereyです。

## nodebrewがインストール済みか確認する
`nodebrew`と打って確認します。
色々と表示されれば問題ないです。一番上の行にバージョンの記載が出ます。
“`
$ nodebrew
nodebrew 1.2.0

Usage:
~~~
“`

### nodebrewをインストールする
もしnodebrewが入っていなけばHomebrewを使用してインストールします。
“`
$ brew install nodebrew
“`
Homebrewが入っていなれば下記コマンドでインストールできます。
“`
$ /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)

元記事を表示

asdfでNode.jsの環境設定

たまに Ubuntu の新しい環境で Node.js を入れることがあるので、メモ代わりに環境設定法を書いておく。

ネットで検索するとMacだったり、yarnを入れてなかったりするので。

# asdf インストール

基本は[公式サイト](http://asdf-vm.com/guide/getting-started.html)に従う。
非常に丁寧に書いてある。

## インストール
“`shell
apt install curl git
git clone https://github.com/asdf-vm/asdf.git ~/.asdf –branch v0.9.0
“`

## .zshrcに設定追加
“`text:~/.zshrc
. $HOME/.asdf/asdf.sh
“`

## 既存のバージョンファイルも有効にする
これで .node-version も有効になる。プロジェクトによっては .node-version を使っているものもあるので。
“`text:$HOME/.asdfrc
legacy_version_file = yes
“`

元記事を表示

VSCode上でNode.js(ES6で実装)のdebugをするための設定をしてみた

## 以下の記事を参照して頂ければと思います

https://note.com/shift_tech/n/n41b6195d6739

**※Qiitaの記事は全て個人的な記載であり、所属する組織団体とは無関係です**

## 補足
ソースコード全体は以下。

https://github.com/yuta-katayama-23/node-express/commit/6717893fbe15b7d80f34ad21f23d7168cdbf05ba

元記事を表示

GCP nodejs環境構築手順(nodeのバージョンを指定)

ほぼ自分用のメモです。

## 1インスタンス作る
インスタンスがmicroだと手順5で out of memoryになって進めない

## 2sshでコンソールに入る
これはSSHクリックするだけ
## 3gitをインストールする
“`
$ sudo apt-get update # いろいろパッケージを更新
$ sudo apt-get install git # git インストール
$ which git
“`
参考
https://zenn.dev/suyaa/scraps/a0e84f9cbf403b

## 4homebrewをインストール
“`
git clone https://github.com/Homebrew/brew homebrew
“`
“`
eval “$(homebrew/bin/brew shellenv)”
“`
“`
brew update –force –quiet
“`
↑ちょっと時間かかる
“`
chmod -R go-w “$(brew –prefix)/share/zsh”
“`
参考
https://do

元記事を表示

Node.js Jest : ReferenceError: require is not defined

package.json

}
“type”: “module”,
“jest”: {
“verbose”: true,
“transform”: {}
}

・リンク
https://jestjs.io/ja/docs/configuration

元記事を表示

Docker + Nginx + Node.js で開発環境構築

## はじめに
業務でNext.jsに触れる機会があったのでDockerで開発環境構築をやってみたいと思ったので書いていきます。実際にはMySQLも含みますがサーバーサイド側のため割愛します。

*ローカル開発環境構築の想定のため、セキュリティは本番環境を想定していません。

## やりたいこと
`docker-compose`で`Nginx`コンテナをリバースプロキシとして`Node.js`コンテナへリクエストを投げる環境の構築

##環境構築
Docker for Macをインストール済みかつNext.jsでプロジェクト作成済みを想定

#### docker version

“`terminal
$docker –version
Docker version 20.10.6, build 370c289
“`

#### ディレクトリ構造
“`terminal
├── docker-compose.yml
├── node
| ├── Dockerfile
├── nginx
├── default.conf

“`

#### docker-co

元記事を表示

サーバにJupyterLabを導入し、ローカルからhttpsでアクセス

**環境**
ローカルPC: MacBook Air(Monterey)
サーバPC: **Ubuntu Server** 20.04.4
※**オレオレ証明書**を使用
※サーバは**固定IP**を割り当て

# JupyterLab導入時に思ったこと
JupyterLabの導入をネットで調べると、ブラウザのアドレスバーに`http://`と入力させる記事がほとんどだった。しかし、通信のHTTPS化が進むこのご時世、私はJupyterLabのアクセスもhttpsでセキュアにしたかった!

# JupyterLabをサーバにインストール
今回はpip3で導入する。(他にもcondaなどで導入できる)
“`sh
pip3 install jupyterlab
“`
そして、`export PATH=”$HOME/.local/bin:$PATH”`を.zshrcなどに書き込み、sourceコマンドで適用する。

### Node.jsが必要
ただ、サーバに`Node.js`が導入されていないと**JupyterLabのカーネルが起動しない**らしい。つまり`.ipynb`が実行できな

元記事を表示

JavaScript環境構築まわりの用語

## Node.js

**Node.jsは、JavaScriptの実行環境のこと。**

Node.jsはサーバーサイドのプログラミング言語だと誤解されることがあるが、
プログラミング言語であるJavaScriptを、サーバーサイドでも実行できるようにするのがNode.js。
また、現在ではフロントエンドの開発環境としても広く使われている。
詳しくは↓の記事様がわかりやすい。

https://qiita.com/non_cal/items/a8fee0b7ad96e67713eb

 

## npm

**npmは、Node.jsのパッケージ管理ツールのこと。**
phpで言うところのcomposer、Pythonで言うところのpip。

npmにおけるパッケージとは、JavaScript のライブラリやフレームワークのこと。
ReactやVue.jsもnpmを利用してインストールできる。
詳しくは↓の記事がわかりやすい

https://reffect.co.jp/html/npm-package-manager-basic-for-beginner

 

## nvm、

元記事を表示

Dockerでfrourioを動かそうとしたら「System limit for number of file watchers reached」エラーの解決法について

こんにちは。
frourioいいぞ〜と聞いていたので今回の3連休で触ってみようと思ったら、環境構築時点でDocker周りのエラーに苦戦したので解決した方法を備忘録として残してみました。

# 環境
– MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) / Intel Chip
– Docker version 20.10.12, build e91ed57
– Docker Compose version v2.2.3
– Rancher Desktop Version: 1.1.1
– Container image node:16.13.2
– frourio 0.27.1

# 実際に起きたエラー
Docker環境を立ち上げてからyarn runを実行した歳に発生したエラーです。エラーの内容は一部省略しています。

“`shell
Error: ENOSPC: System limit for number of file watchers reached
“`

調べてみるとNode.js系ではよく見かけるエラーのよ

元記事を表示

[JavaScript/node/WSH/Bat] 特定フォルダ下位にある画像ファイルをランダムで開く

Windowsです。

BingWallPaperナントカってアプリをいれて、Bingの背景画像を壁紙にしてくれて日々、きれいな壁紙が切り替わるようにしています。

が、5,6枚くらいしか前画像をたどれなくて、ときどきBingが虫とか植物の拡大写真や動物の変な写真がアップされて気に食わなかったりするときがありまう。俺は生物系ではなく風景の写真が壁紙になってほしいのです。生物系はぎょっとしたりキモかったりするときもあるので、壁紙にしたくない。(今日とかカエルだし、人を選ぶだろ、カエル画像とかさあ)

で、壁紙ファイルは次の場所に保存されていることがわかり、昔みた壁紙ファイルも保持されているからよかったのです。

C:\Users\<ユーザー名>\AppData\Local\Microsoft\BingWallpaperApp\WPImages
C:\Users\<ユーザー>\OneDrive\画像\Bing Images

で、この中でお気に入りな画像を特定のフォルダに保存しています。

画像ファイラは、MassiGra使っているので、画像をみて気に入ったものがあれば壁紙に簡単にできるの

元記事を表示

Discord.js+Expressでグローバル変数っぽい挙動をしたいメモ

Discord.js+expressでサーバーを立ててますが、ファイル分割をしている末端のファイル`hoge.js`などのなかでDiscord.jsのClientを呼び出したいというニッチな話

“`
main.js
|- actions
|- router
|- hoge.js
“`

main.jsで`client = new Client()`をしていますが、末端でhoge.jsではclientオブジェクトが定義されてなく、`client.channels.cache.get().send()`を使いたいけど使えない、みたいな状態でした。

https://qiita.com/n0bisuke/items/cc4deef076ecf86421f5

main.jsで定義したclient変数をhoge.jsに持っていきたいなというところでしたが、公式ドキュメントとすぎゃーんさんの記事が参考になりました。

> [Express アプリケーションで使用するミドルウェアの作成](https://expressjs.com/ja/guide/writing-middlew

元記事を表示

【3分】global install用のyarnをこ◯してnpmに統一した

# npm経由でしかglobalにinstallさせないようにする

“`
# global addされたnode packageの在処を特定
yarn global dir

# 上記で特定した場所に移動
cd ${LOCATION}

# node_modulesを削除
rm -rf node_modules

# 再度新しいnode_modulesを作成
(at the same location) yarn
“`

これで完了

元記事を表示

OTHERカテゴリの最新記事