n8n (Nodemation, n-eight-n:ネイテン)という最近お気に入りのソフトウェアがあります。ブラウザ上でブロックを繋ぐ事でシステムができるという今流行りのノーコードプログラミングの文脈でよく紹介されるソフトウェアです。一部ではiPaaS(Integration Platform as a Service)とも呼ばれているそうです。
上の画像はn8nで作成したbitcoind
を監視して新しいブロックが発見されたらPushover
へ通知するサービスの例です。コードを読むよりなんとなく全体が把握しやすいと思いませんか?このコードの大半がブラウザ上でお絵描きするようにして作る事ができます。
似たようなサービスにZapier があります。私は数年前からZaiperも有償プランで使っています。ZapierはZapierで良いところがあり、簡単に比較はできませんが、強いてn8nの利点をあげるとすればn8nは自分のサーバで動かすソフトウェアなのでノードを自分で作ることもできるので(性能面以外では)ほぼ実現できない事がありません。
上のBitcoinの例では、bitcoind
を使っていますがこれはn8n
配下にbitocoind
を走らせてn8n
から制御できるようにしています。このようなサーバ構成の変更を伴うようなことはZapier
では難しいですね。
インストール
早速n8nをインストールしてみましょう。インストールは簡単で以下のようにnpmでインストールします。
npm install n8n -g
n8n
n8nコマンドを実行すると、以下のように案内が出ます
❯ n8n [14:21:36]
n8n ready on 0.0.0.0, port 5678
Version: 0.103.1
Editor is now accessible via:
http://localhost:5678/
Press "o" to open in Browser.
案内通りo
を押すとブラウザが立ち上がりn8nのエディタが実行できるようになります。
つづく