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

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

Expressでnode_modulesのbootstrapをクライアント側から静的ファイルとして読み込む

# 方法
アプリ起動の起点となるjsファイル(多くの人は`app.js`が該当するかと)に以下のような1行を加える。
“`javascript:JavaScript
app.use(‘/bootstrap’, express.static(path.join(__dirname, ‘node_modules/bootstrap/dist’)));
“`
こうすることで`node_modules/bootstrap/dist`下のファイルに対して`/bootstrap`から始まるパスを指定すればアクセスすることができるようになる。
“`html:HTML


“`
# 何をしているのか(解説)
Expressの`app.use()

元記事を表示

Electronでアプリ作成3 ElectronでSqlite3を操作

 Node.js環境でブラウザベースのアプリが作成できるElectronですが、結構メジャーなアプリがElectronベースで作られているようでね。そんなElectornで取り扱いが簡単なデータベースのSqlite3が操作できたら、いろいろ便利だろうと思い、サンプルとなるアプリを作成しましのたで、投稿します。自分の知識不足で、結構ハマってしまった個所もありましが、とりあえずはデータの挿入、抽出は確認できています。

# 動作確認環境
Windows11
node.js v18.18.1
electron v27.0.0
sqlite3 3.43.0

# 参考になる記事、サイト等
Electronアプリの作成については過去の記事で触れてもらっています。

https://qiita.com/watmot/items/e79a3f3f8fe27fa54a33

https://qiita.com/watmot/items/5241c97350f3431bd09c

WindowsにSQLite3をインストールしています。こちらのサイト参考にさせてもらいました。大変丁寧で

元記事を表示

DiscordでAIと音声対話できるBOTを作ってみる

# はじめに
どうも、限界受験生です。
会話する相手が欲しいけどいない時間帯やコーディングしている最中に音声で質問したいときありますよね(きっと僕だけじゃないはず)
そこで、タイトルにある通りDiscordでAI(ChatGPT)とボイスチャンネルでずんだもんの音声で会話できるBOTを作ってみようと思います。
GCPやOpenAIのAPIは無料枠があるので今回の記事では基本無料で出来るものとなっています。

:::note alert
無料枠を超える場合は利用料金が発生するのでご注意ください。
また、バージョンにより、この記事とは違う部分が出てくるかもしれませんので、ご注意ください。
:::

# 使用技術
今回は僕の得意なJSを使用して書きたいと思います。
APIはDiscord API、Google Cloud Speech API、ChatGPT API、VOICEVOX APIの4つのAPIを使用していきたいと思います。
GCPのKeyFile発行やDiscordのTokenの発行、ChatGPTのKeyの発行方法は以下の記事をお読みください。
+ [GCP KeyFile発行

元記事を表示

非同期でのNode.jsのReadStreamの振る舞いを確認してみる

# 前準備
## 環境
OS:Windows 11 Home 64 ビット オペレーティング システム
CPU:11th Gen Intel(R) Core(TM) i7-1185G7 @ 3.00GHz 3.00 GHz
RAM:32.0 GB
Node.js:Node.js v20.4.0.

## 入力用テキストファイルを作成する
“`in.txt
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
(中略)
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
“`

## ログ

元記事を表示

Google Cloud Runのデプロイは.gitignoreを見ている

Cloud Runのビルドでハマったのでメモ

`gcloud run deploy`でCloud Runでデプロイ時に確実に含まれているはずのファイルが
`Module not found: Error: Can’t resolve ‘./setting’ in ‘/workspace/src’`
となる現象が発生。

しばらく悩んだところ、
デバッグ用の設定ファイルをgit commitでいちいち更新扱いになるのが面倒くさかったので.gitignoreにファイルを追加していたのが原因のようでした。

Cloud Runのビルドはどうやら.gitignoreを使用しているようで、ここでignoreしたファイルはdeployに含まれない模様。.gitignoreから削除したことで解消。

元記事を表示

npm i –legacy-peer-deps

“`
https://github.com/MicrosoftArchive/redis
https://github.com/coreybutler/nvm-windows/releases
nvm install 8.10.0
nvm use 8.10.0

npm i –legacy-peer-deps
“`

元記事を表示

Flask + Webpack with VSCodeの開発環境

# 概要

個人開発中のFlaskアプリでjavascriptが大きくなりすぎたため、jsファイルを分割して管理することにしました。

しかし分割しすぎるとパフォーマンスに問題がでるらしく、回避のためwebpackで数個のjsファイルにbundle(build)する形をとることにしました。

ここで困ってしまったのが、「**FlaskとWebpackを併用する場合のフォルダ構造やデバッグ/ビルドの設定のあるべき姿**」とは?という点です。

結局正解は分からないままなのですが、備忘録がてら自分がどうしたかを記載しておきます。

# 前提知識

### Flaskとは

Webアプリのバックエンドをpythonで書くことができるフレームワークの1つです。他にはdjangoなどがあります。