Eventline は、ボットとアプリケーションのイベントをルーティングおよび処理するためのマイクロ フレームワークです。
これは、一貫した方法でイベントのストリームに応答し、テストと理解が容易なシステムを簡単に構築するのに役立ちます。
Eventline は、ERA (イベント ソース、ルーター、アクション) アーキテクチャ パターンのルーターに重点を置きながら、他のシステムの統合を容易にする構成設計上の規則を提供します。
Eventline は、カスタム イベント ソースまたは Botpress や Botkit などの他のフレームワークとともに単独で使用できます。
インストールするには、次のコマンドを実行するだけです。
npm install eventline --save
例を確認するには、このリポジトリのクローンを作成して、 npm run example
実行します。
on ( event )
. then ( this )
. then ( that )
構成よりも規約アプリケーションが何を行っているかを理解しやすくする宣言型 API を実装することで、開発者の生産性を高めるために Eventline を最適化しました。
簡単に拡張可能新しい機能でアプリケーションを簡単に拡張し、ライブラリを利用できる、非常に柔軟なミドルウェアとコンポーネント システムを備えています。
最新でありながら十分にサポートされているEventline は Typescript で書かれており、ECMAScript 5 をサポートしながらコードの安定性と堅牢性を確保しています。
Async Support Eventline は ES5 Promises の上に構築されており、Promise やコールバック地獄に陥ることなく、非同期動作を第一級市民にします。
Lightweight Eventline は、ERA (イベント ソース、ルーター、アクション) アーキテクチャのルーターです。これは、別のボット フレームワークではなく、独自のカスタム コードや、Botpress や Botkit などのフレームワークを軽量に補完するものです。
信じられないかもしれませんが、これには合計 3 つの依存関係があります。
Stateless Everything は、ステートレス アーキテクチャ、つまり関数型プログラミングを中心に構築された各アクションとミドルウェアを促進するように構築されています。イベントを取得して返し、次のステップに渡します。
これにより、アプリケーション内で何が起こっているかを推論しやすくなります。
私は、Sure 向けのチャットボットを簡単に構築する基本的な方法を取得する軽量な方法として Eventline を作成しました。私はすでに、導入に対してオール・オア・ナッシングのアプローチをとる Bottr や Botpress のようなフレームワークを構築し、貢献してきました。
このフレームワークを使用すると、アプリ全体を書き直すことなく、予測可能でわかりやすいチャットボットを簡単に構築できます。
Eventline は、そのコンポーネントと宣言ベースのアーキテクチャにより、React、Express.js、Redux との類似点を引き出します。
Bottr、Botpress、BroidKit の機能を組み合わせて、柔軟で使いやすいルーター システムを提供します。
チャットボットは本質的に非常に非同期で、状態およびイベント ベースのアプリケーションです。 Redux のドキュメントで述べられているように、私たちのコードはこれまで以上に多くのことを管理する必要があります。
Eventline の背後にある動機を理解するには、Redux ドキュメント http://redux.js.org/docs/introduction/Motivation.html を読む必要があります。
私たちはこの考え方の一部をチャットボットの世界に取り入れて、宣言的な方法でイベントを一連のアクションにルーティングすることを容易にしようとしました。
バグ修正と改善に貢献してくれたコミュニティに感謝します。