- 0.0.1. Node.jsでGCEのインスタンスを作成・削除する
- 0.0.2. React + IndexedDBでCRUD作成、Form登録など #React #React.js #node
- 0.0.3. Node.js の beforeExit で非同期処理を書くと終わらなくなる
- 0.0.4. Deno対Nodeのパフォーマンスについて
- 0.0.5. ReactとNodeでsocket
- 0.0.6. 簡単レシート印刷 receiptline と 20 行の JavaScript でレジプリンターをインスタントカメラにしてみた
- 0.0.7. Mac上でnodenvをインストール、任意のバージョンを有効化
- 0.0.8. Discord botのglitchを使った常時起動でUptimerbotが使えなくなってしまった話。
- 0.0.9. npm と node.js のインストールから Hello World まで。
- 0.0.10. npmパッケージをオフラインインストールするためのツール
- 0.0.11. Node.jsのasync queueを使ってみた
- 0.0.12. 簡単レシート印刷 receiptline でサーマルロール紙に印刷してみた
- 0.0.13. node.js はじめ方
- 1. コマンドラインでの準備
- 2. ブラウザ側での準備
Node.jsでGCEのインスタンスを作成・削除する
## 作成
“`js
const Compute = require(‘@google-cloud/compute’);
const compute = new Compute();
const option = { ………. };
const zone = compute.zone(‘asia-northeast1-b’);
const [vm, operation] = await zone.createVM(vmName, option);
await operation.promise();
console.log(vmName + ‘ created!’);
“`option の中身はGCPのコンソールでポチポチやった時のパラメータ(下記参照)をコピーして使うと良い
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/610207/2d1f1f07-1e87-bacc-05c7-b1574f54ed60.png)
![image.png](https://q
React + IndexedDBでCRUD作成、Form登録など #React #React.js #node
# 概要
React ,node.js版で
IndexedDBのCRUD作成となります
dexieライブラリで、IndexedDB操作して。
ブラウザ内に保存する形で。使用を想定しています# 環境
react
react-dom
react-router-dom
dexie# 画面
・リスト![ss-crud-0724a.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/159710/53360589-3607-8551-7261-52be69e2bd4a.png)
・編集
![ss-crud-edit-0724b.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/159710/a9252bda-fa0f-ea2d-bf35-c7eb0eff272d.png)# 参考のコード
https://github.com/kuc-arc-f/react_cms1_1crud
***
### 実装など、React
Node.js の beforeExit で非同期処理を書くと終わらなくなる
Node.js で終了時のクリーンアップ処理を書こうとすると、 `exit` イベントか `beforeExit` イベントの2択になる。 `exit` だと非同期処理が書けないので、事実上 `beforeExit` の1択…と思って使ってみたらちょっとだけハマったのでメモ。
“`javascript
process.on(‘beforeExit’, (code) => {
console.log(‘Delayed’);
setTimeout(() => {
console.log(‘Process beforeExit event with code: ‘, code);
}, 1000);
});process.on(‘exit’, (code) => {
console.log(‘Process exit event with code: ‘, code);
});console.log(‘This message is displayed first.’);
“`こんな感じの検証コードを書いて実行したら、 `beforeExit` の
Deno対Nodeのパフォーマンスについて
# Performance aspect of Deno vs. Node
## この記事に関して
[Performance aspect of Deno vs. Node](https://dev.to/gjuoun/perfomance-aspect-of-deno-vs-node-js-4dke)を翻訳しました。
また、私のブログからの[転載](https://github.com/yoshixmk/profile/blob/master/translations/001-perfomance-aspect-of-deno-vs-node-js.md)です## Deno対Nodeのパフォーマンスについて
パフォーマンスが良いことは、素晴らしいことです。
数日前、Craig Mortenの投稿[What Is The Best Deno Web Framework?](https://dev.to/craigmorten/what-is-the-best-deno-web-framework-2k69)「DenoのWebフレームワークで最適なものは何か?」を読みました。
ReactとNodeでsocket
## Node.js
“`
% npm i socket.io
“`“`js
server = app.listen(port);
var socket = require(‘socket.io’);
io = socket(server); // ①
io.on(‘connection’, (socket) => { // ②
const usr = Object.keys(io.sockets.sockets).length
console.log(“Hi Server”)
console.log(usr)
socket.on(‘SEND_MESSAGE’, function(data){ // ③
io.emit(‘RECEIVE_MESSAGE’, data); // ④
})
});“`
## React
“`
% sudo yarn add socket.io socket.io-client
“`“`js
import soc
簡単レシート印刷 receiptline と 20 行の JavaScript でレジプリンターをインスタントカメラにしてみた
日本発のオープンソース receiptline でレシート印刷に少しずつトライしています。
今回は、[前回](https://qiita.com/dopperi46/items/7584bb72f56ad1dc8e31)のレシートプリンターと変換 API を使ってアプリを作ります。# 実はこれを作りたかった
“レジプリンター式インスタントカメラで「レシート日記」はなぜ楽しいのか?”
https://weekly.ascii.jp/elem/000/004/004/4004167/“1枚1円の安さが正義、レシート現像のトイカメラが楽しい|ベストバイ2019”
https://japanese.engadget.com/jp-2019-12-23-1-1-2019.html“むしろ大人が欲しい多機能ぶり! プリンター内蔵の子ども用カメラ「myFirst Camera Insta 2」”
もっと大きく撮りたい! を叶えるニコンZマウント初のテレコンバーター「Z TELECONVERTER TC-1.4x / TC-2.0x」
そうです。インスタントカメラです。
記事を読んでいるだけで楽しさが伝わってきます。早速これを receiptli
Mac上でnodenvをインストール、任意のバージョンを有効化
# nodenvをインストール
参考 : [https://github.com/nodenv/nodenv#basic-github-checkout](https://github.com/nodenv/nodenv#basic-github-checkout)
“`sh
git clone https://github.com/nodenv/nodenv.git ~/.nodenv
cd ~/.nodenv && src/configure && make -C src
“`上記サイトで
“`txt
2.Add ~/.nodenv/bin to your $PATH for access to the nodenv command-line utility.
For bash:
$ echo ‘export PATH=”$HOME/.nodenv/bin:$PATH”‘ >> ~/.bash_profile
“`と説明されているので、
“`sh
echo ‘export PATH=”$HOME/.nodenv/bin:$PATH”
Discord botのglitchを使った常時起動でUptimerbotが使えなくなってしまった話。
ある日の筆者
茶番⤵︎ ︎は読みたくなけりゃ飛ばしておけ「あれ?なんかdiscordのbotが落ちてるな……」
「しかもglitchでUptimerbot使って起動してる奴じゃん」
「あれー?前エラー治してから何もいじってないはずなんだけどなぁ」
「とりまエラー探すかぁ」
(数時間後……)
「どこにもエラーがねぇぇぇぇぇぇぇ」
(知人に相談したら…)
**uptimerobotはglitchからBANされて使えなくなったよ**
「なんだとぉぉぉぉぉ!?」はい。
uptimerobotが使えなくなってしまった
–
Discord botの動作環境として結構使われているGlitchですが、glicthはタスクを閉じてから5分くらいたつとアプリケーションは落ちてしまいます。
それの回避方法として[UptimeRobot](https://uptimerobot.com/)というものがよくつかわれていました。
これは簡単に言ったらURL指定して定期的にリクエスト送る…的なやつだったはずそれが、glitch有料化が出てからから少しした後?UptimeRobotはglit
npm と node.js のインストールから Hello World まで。
Linux もしくは Windows Subsystem for Linux のターミナルから以下のコマンドを実行し、npm と node.js をインストールする。
“`bash
sudo sed -i -e ‘s%http://.*.ubuntu.com%http://ftp.jaist.ac.jp/pub/Linux%g’ /etc/apt/sources.list
sudo apt update
sudo apt upgrade
sudo apt-get install -y nodejs
sudo apt install npm“`
任意のフォルダを作成し、その中で npm init コマンドを実行し package.json を作成する。
expressのパッケージをインストールし、アプリケーションのエントリーポイントとして app.js を作成する。“`bash
mkdir hoge
cd hoge
npm init
npm i express –savetouch app.js
“
npmパッケージをオフラインインストールするためのツール
# はじめに
[【Yarn】パッケージをオフラインでインストールする](https://qiita.com/TakuyaHara/items/a2683c74c1827cb07583) という記事に触発されて、npmパッケージのオフラインインストール用のツール[yarn-offline](https://github.com/kannkyo/yarn-offline)を作った。
npm自体はオフラインインストールに対応していないのでyarnを使う。
# ディレクトリ構成
ツールのディレクトリ構成はこんな感じ。
“`shell
yarn-offline
├── .gitignore
├── .yarnrc
├── CHANGELOG.md
├── LICENSE
├── README.md
├── offline-cache
│ └── .gitkeep
└── package.json
“`ツールのミソは[.yarnrc](https://github.com/kannkyo/yarn-offline/blob/master/.yarnrc)。プロジェクトディレク
Node.jsのasync queueを使ってみた
## async queueについて
– 非同期処理を順番に実行してくれる
– async.queueの第一引数は非同期処理
– async.queueの第二引数はqueueを同時に実行する数
– async.queueの返り値はqueueを表すオブジェクト## queueオブジェクトの中身
### push
– queueの最後尾にデータを追加### unshift
– queueの最初にデータを追加### length
– 待機しているqueueの数### running
– 実行中のqueueの数### pause
– queueの処理を一時停止### resume
– queueの処理を再開## サンプルコード
“`javascript=
const async = require(‘async’)// 第一引数がqueueのパラメータ、第二引数が次のqueueの処理に入るトリガー
const q = async.queue((data, callback) => {
const obj = {
length: q.length()
簡単レシート印刷 receiptline でサーマルロール紙に印刷してみた
日本発のオープンソース receiptline でレシート印刷に少しずつトライしています。
[前回](https://qiita.com/dopperi46/items/6043b936d28f6adf8cf4)まで開発ツールと仮想プリンターを利用していましたが、今回はいよいよ実機を使った印刷です。![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669512/6527e949-12fc-d37f-869d-90e53ea4d7d4.png)
# レシートプリンター
落札に成功したレシートプリンターです。LAN 接続に対応しています。
## TM-T88V
海外旅行へ行くとレジでこれの黒色モデルをよく見かけるような気がします。
新品だと結構なお値段ですが、かなり使い込まれた中古品なので格安で入手。
それでも不具合なく現役バリバリで高速。お値段以上の耐久性はあると思います。![02.jpg](https://qiita-image-store.s3.ap-northeast-1.am
node.js はじめ方
node.jsのはじめる時にやったことを簡単にまとめてみる。
コマンドラインでの準備
- mkdir,touchでそれぞれ新しいディレクトリとファイルを作る。
- npm init コマンドで、package.json ファイルを作成する。
※package.json・・・依存関係を記載するファイル。
コマンド入力後、基本エンターキー連打でOK- npm install 〜でnpmをインストールし、プロジェクト開始する。
※–saveはいらない
このコマンドを入力することによって、package.jsonに依存関係の記載を行うことができる。- node ファイル名.js
node.jsのファイルを実行させる方法- nodemon ファイル名.js
こちらも実行させる方法であるが、実行させたまま、ファイルを更新しても、自動的にサーバが再起動が可能になる。
※nodemonを事前にインストールしておく必要あり。ブラウザ側での準備
node.jsを実行させ
LINE BOTとIFTTTでなんちゃってポケモンGO作ってみた
## はじめに
LINE BOTとIFTTTを組み合わせてポケモンGOのようなものを作ってみました
今回は新宿御苑に近づいたらLINEにポケモンの画像がpush通知してくる仕組みを作りました
本当はその後捕まえたいし、色んな場所に出現させたいんですけどね
[![Image from Gyazo](https://i.gyazo.com/1e82f73ab68d975ebd97b0a6b97fc5d1.png)](https://gyazo.com/1e82f73ab68d975ebd97b0a6b97fc5d1)
LINEではこんな見た目のがpushされます
## 開発環境
* Node.js v14.5.0
* express v4.17.1
* line/bot-sdk v7.0.0
* axios v0.19.2ポケモンのAPIとして[こちら](https://pokeapi.co/)を利用しました。
利用したときはv2でした。## 手順概要、目次
1. LINE BOT作成
1. LINE Developerに登録
2. LINE BOTの
1日の仕事の振り返りで使えるコーチング用LINE BOTを作ろうとした
#はじめに
自社のWEBサイトのQ&Aで、LINE BOT作れたらなと考え、
とりあえず何か簡単なLINE BOTを作ってみようと思いました。普段、人材開発の仕事に携わっているので、
自分の1日の振り返り用のLINE BOTだったら実用的かなと、
作ることにチャレンジしました。#コーチング用LINE BOTの意図
振り返りで自動化したいことは、
・月間目標のリマインド
・月間の残り日数
・振り返りの質問
・PDCAを回す時の視点
です。そのあたりを自動化しつつ、
明日の行動をイメージできるように、
明日の天気も自動で取得できるようにしてみました。#結果できたLINE BOT
天気apiを使うまでのLINE BOTは作れた。
![8619_0.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/664861/87faa404-4028-03cb-c371-cb141cc5ad2f.jpeg)
“`Javascript
“use strict”;const express
簡単レシート印刷 receiptline で仮想プリンターを使ってみた
日本発のオープンソース receiptline でレシート印刷に少しずつトライしています。
先日落札したレシートプリンターは、セルフテストして投稿用に写真撮影しました。
IP アドレス設定中のため、[前回](https://qiita.com/dopperi46/items/7f06d5125cc6755f8235)利用した開発ツールを引き続き使います。
今回は仮想プリンターを使った印刷です。![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669512/3dc7f402-8084-b42a-0526-7dab62b8297f.png)
# ファイルのロード
receiptline に添付されているサンプルデータを開発ツールで読み込んでみましょう。
フォルダアイコンをクリックすると、ダイアログボックスが開きます。![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/669512/69114224-
【LINE BOT】WebAPIを使用し自動返信BOTを作ってみた
###はじめに
LINE BOTを利用し、六曜日とその内容を自動で返信するものを作りをました。
入力文字を替えることで、NASA(非公式)の「今日の天文学写真」を楽しむこともできます。
###目的
六曜にこだわる人は少なくなってきていると思いますが、まだ大安などの吉日を好む人は多いと思います、個人的なイベントが発生すると「今日は大安だっけ?」「友引かな?」などとたまに気にすることがあるので、「今日は」と入力する今日の六曜日を自動返信するBOTを製作しました。別で作ったほうがいいかと思いましたが、今回は練習も兼ねてで画像も取得したいと思いましたので、「今日の画像は」と入力するとNASA(非公式)より「今日の天文学写真」を取得し自動で表示します。宇宙の美しさ広さをみて、自分の小ささを感じます。
###作ったもの
[![Image from Gyazo](https://i.gyazo.com/91a89a2d1162de6394b784000408651a.gif)](https://gyazo.com/91a89a2d1162de6394b784000408651a)
#構成
#
TensorFlow.jsノードをNode-REDで使ってみる
日立製作所OSSソリューションセンタの横井です。今回は、画像認識を行うNode-REDのTensorflow.jsノードの使い方をご紹介します。
# Tensorflow.jsとNode-RED
TensorFlow.jsとは、TensorFlowのJavaScript実装です。TensorFlow.jsを用いることで、ブラウザ上やサーバサイドのNode.jsで学習や推論処理をリアルタイムに実行できます。また、Node-REDは、主にIoT向けに開発されたピジュアルプログラミングツールです。[InfoQの記事](https://www.infoq.com/articles/javascript-web-development-trends-2020/)によると、2020年のトレンドとしてTensorlow.jsはEarly Majority、Node-REDはEarly Adoptersという流行っている/流行りつつあるOSSとして位置付けられています。![infoq.jpg](https://qiita-image-store.s3.ap-northeast-1.amazon
Sassを今この瞬間から使えるようになるまでの手順
# はじめに
HP制作の段階で「CSSある程度理解して使えるようになったから、Sassを触ってみよう!」と思っても実際に使えるようになるまでにはいくつかの壁があります。
そのうちの1つが環境構築です。HTMLファイルのheadタグ内にはcssを読み込ませる必要がありますね。
しかし、Sassを使ってサイトのスタイルを整えるためにはそのままHTMLに読み込ませる事はできず、Sass→CSSに変換する必要があります。(これをコンパイル)といいます。そこで今回は、僕のような初心者向けに”Sass”を使って開発できるようになるまでの手順を示します。
## 目次
1.[Node.jsをインストールする](#anchor1)
2.[Node.jsがインストールされているかターミナル/コマンドプロンプトで確認](#anchor2)
3.[gulp-cliをインストールする](#anchor3)
4.[package.jsonを作成する](#anchor4)(←gulpインストール済みの人はここから)
5.[gulpとgulp-sassをローカル環境にインストール](#anchor5)
6.
[AWS]Slack + AWS Chatbot + Lambdaで朝会のファシリテーター指名してみた
現職場では、デイリースタンドアップとして、朝会を実施している。
そして、いつも開始日時になると、「え、今日・・・司会担当・・・だれ・・・?」
とTheWordになる。
※TheWord ・・・ リモート会議において、 無音が続き、最初に話した人がファシリテーターをしなければいけない空間のこと一応、[SlackBot](https://slack.com/intl/ja-jp/help/articles/202026038-Slackbot-%E5%85%A5%E9%96%80)を使用して、それとなく機械的にファシリテーターを指名しているのだが、
「この人お休みだよ〜」 や 「昨日もやったんですけど〜」 とか
**いちいち面倒臭い。**
よし。朝会のファシリテーターをいい感じ(前回当たった人は当たらない、スムーズに再抽選ができる、~~自分が選ばれない~~)に決めるToolを作ろう。
# はじめに
コミュニケーションToolはSlack
プラットフォームはAWSとする。# 構成
全体構成はこんな感じ。
![構成.png](https://qiita-image-s