Eventline ist ein Mikro-Framework für die Weiterleitung und Verarbeitung von Ereignissen für Bots und Anwendungen.
Es hilft dabei, auf einfache Weise Systeme zu erstellen, die konsistent auf eine Reihe von Ereignissen reagieren und leicht zu testen und zu verstehen sind.
Eventline konzentriert sich auf den Router im ERA-Architekturmuster (Event Source, Router, Action) und bietet gleichzeitig eine Konvention für das Konfigurationsdesign, um die Integration anderer Systeme zu erleichtern.
Sie können Eventline entweder allein mit benutzerdefinierten Ereignisquellen oder anderen Frameworks wie Botpress oder Botkit verwenden.
Zur Installation führen Sie einfach Folgendes aus:
npm install eventline --save
Um ein Beispiel zu sehen, klonen Sie dieses Repo und führen Sie Folgendes aus: npm run example
on ( event )
. then ( this )
. then ( that )
Konvention statt Konfiguration Wir haben Eventline für die Entwicklerproduktivität optimiert, indem wir eine deklarative API implementiert haben, die es einfach macht, zu verstehen, was Ihre Anwendung tut.
Leicht erweiterbar Wir verfügen über ein sehr flexibles Middleware- und Komponentensystem, mit dem Sie Ihre Anwendung problemlos um neue Funktionen erweitern und Bibliotheken nutzen können.
Das moderne, aber gut unterstützte Eventline ist in Typescript geschrieben, um sicherzustellen, dass der Code stabil und robust ist und gleichzeitig ECMAScript 5 unterstützt.
Async Support Eventline basiert auf ES5 Promises und macht asynchrones Verhalten zu einem erstklassigen Bürger, ohne in die Promise- oder Callback-Hölle stürzen zu müssen.
Lightweight Eventline ist der Router in der ERA-Architektur (Event Source, Router, Action). Es handelt sich um eine leichte Ergänzung zu Ihrem eigenen benutzerdefinierten Code oder Frameworks wie Botpress oder Botkit und nicht um ein weiteres Bot-Framework.
Wenn Sie uns nicht glauben: Es gibt insgesamt drei Abhängigkeiten.
Stateless Everything ist darauf ausgelegt, eine zustandslose Architektur zu fördern, wobei jede Aktion und Middleware auf funktionaler Programmierung basiert. Nehmen Sie ein Ereignis und geben Sie es zurück, um es dem nächsten Schritt zu übergeben.
Dies macht es einfacher, darüber nachzudenken, was in Ihrer Anwendung passiert.
Ich habe Eventline als einfache Möglichkeit geschrieben, einen einfachen Chatbot für Sure zu erstellen. Ich habe bereits Frameworks wie Bottr und Botpress entwickelt und dazu beigetragen, deren Einführung auf dem Alles-oder-Nichts-Prinzip basiert.
Mit diesem Framework ist es einfach, einen vorhersehbaren und leicht verständlichen Chatbot zu erstellen, ohne die gesamte App neu schreiben zu müssen.
Eventline zieht mit seiner komponenten- und deklarativbasierten Architektur Parallelen zu React, Express.js und Redux.
Es kombiniert Funktionen von Bottr, Botpress und BroidKit und bietet so ein flexibles und dennoch einfach zu bedienendes Routersystem.
Chatbots sind von Natur aus sehr asynchrone, zustands- und ereignisbasierte Anwendungen. Wie in der Redux-Dokumentation erwähnt, muss unser Code mehr davon bewältigen als je zuvor.
Um einen Eindruck von der Motivation hinter Eventline zu bekommen, sollten Sie die Redux-Dokumentation http://redux.js.org/docs/introduction/Motivation.html lesen
Wir haben versucht, einige dieser Überlegungen in die Chatbot-Welt zu übertragen, um es einfacher zu machen, Ereignisse auf deklarative Weise einer Reihe von Aktionen zuzuordnen.
Wir sind der Community dankbar, dass sie Fehlerbehebungen und Verbesserungen beisteuert.