Eventline은 봇과 애플리케이션의 이벤트를 라우팅하고 처리하기 위한 마이크로 프레임워크입니다.
일관된 방식으로 이벤트 스트림에 응답하고 테스트하고 이해하기 쉬운 시스템을 쉽게 구축하는 데 도움이 됩니다.
Eventline은 ERA(이벤트 소스, 라우터, 작업) 아키텍처 패턴의 라우터에 중점을 두는 동시에 다른 시스템을 보다 쉽게 통합할 수 있도록 구성 설계에 대한 규칙을 제공합니다.
사용자 정의 이벤트 소스나 Botpress 또는 Botkit과 같은 다른 프레임워크와 함께 Eventline을 자체적으로 사용할 수 있습니다.
설치하려면 다음을 실행하세요.
npm install eventline --save
예제를 보려면 이 저장소를 복제하고 다음을 실행하세요. npm run example
on ( event )
. then ( this )
. then ( that )
구성보다 관례 우리는 애플리케이션이 수행하는 작업을 쉽게 이해할 수 있도록 하는 선언적 API를 구현하여 개발자 생산성을 위해 Eventline을 최적화했습니다.
쉽게 확장 가능 우리는 새로운 기능으로 애플리케이션을 쉽게 확장하고 라이브러리를 사용할 수 있는 매우 유연한 미들웨어 및 구성 요소 시스템을 갖추고 있습니다.
현대적이지만 잘 지원되는 Eventline은 ECMAScript 5를 계속 지원하면서 코드가 안정적이고 강력하도록 Typescript로 작성되었습니다.
비동기 지원 Eventline은 ES5 약속을 기반으로 구축되어 약속이나 콜백 지옥에 빠질 필요 없이 비동기 동작을 일류 시민으로 만듭니다.
경량 이벤트라인은 ERA(이벤트 소스, 라우터, 동작) 아키텍처의 라우터입니다. 이는 또 다른 봇 프레임워크가 아닌 Botpress 또는 Botkit과 같은 사용자 정의 코드나 프레임워크에 대한 가벼운 보완책입니다.
우리를 믿지 않는다면 총 3가지 종속성이 있습니다.
무상태 모든 것은 무상태 아키텍처, 함수형 프로그래밍을 중심으로 구축된 각 작업 및 미들웨어를 촉진하기 위해 구축되었습니다. 이벤트를 받아서 다음 단계로 넘기기 위해 반환합니다.
이렇게 하면 애플리케이션 내에서 일어나는 일을 더 쉽게 추론할 수 있습니다.
저는 Sure용 챗봇을 쉽게 구축하는 기본 방법을 얻기 위한 간단한 방법으로 Eventline을 작성했습니다. 저는 이미 양자택일 방식으로 채택하는 Bottr 및 Botpress와 같은 프레임워크를 구축하고 이에 기여했습니다.
전체 앱을 다시 작성하지 않고도 이 프레임워크를 사용하면 예측 가능하고 이해하기 쉬운 챗봇을 쉽게 구축할 수 있습니다.
Eventline은 구성 요소 및 선언 기반 아키텍처를 통해 React, Express.js 및 Redux와 유사합니다.
Bottr, Botpress 및 BroidKit의 기능을 결합하여 유연하면서도 사용하기 쉬운 라우터 시스템을 제공합니다.
챗봇은 본질적으로 매우 비동기적인 상태 및 이벤트 기반 애플리케이션입니다. Redux 문서에서 언급했듯이 우리 코드는 이전보다 더 많은 것을 관리해야 합니다.
Eventline의 동기에 대한 아이디어를 얻으려면 Redux 문서 http://redux.js.org/docs/introduction/Motivation.html을 읽어야 합니다.
우리는 이러한 생각 중 일부를 챗봇 세계에 적용하여 선언적 방식으로 이벤트를 일련의 작업으로 라우팅하는 것을 더 쉽게 만들려고 노력했습니다.
버그 수정 및 개선에 기여해 주신 커뮤니티에 감사드립니다.