fluent-behavior-tree - Typescript/Javascript behavior tree library with a fluent API

  •        77

JS/TS behaviour tree library with a fluent API. For a background and walk-through please see the accompanying article.

https://github.com/aequasi/fluent-behavior-tree#readme

Dependencies:

ts-data.stack : ^1.0.6
ts-iterable : ^1.0.1

Tags
Implementation
License
Platform

   




Related Projects

Brainiac Designer

  •    

Brainiac Designer is an open-source visual behaviour tree editor. It allows you to build behaviour trees by using simply drag&drop. The editor supports plugins, exporters and stores behaviours as XML files.

GoJS - JavaScript diagramming library for interactive flowcharts, org charts, design tools, planning tools, visual languages

  •    Javascript

GoJS is a JavaScript and TypeScript library for creating and manipulating diagrams, charts, and graphs. GoJS is a flexible library that can be used to create a number of different kinds of interactive diagrams, including data visualizations, drawing tools, and graph editors. There are samples for flowchart, org chart, business process BPMN, swimlanes, timelines, state charts, kanban, network, mindmap, sankey, family trees and genogram charts, fishbone diagrams, floor plans, UML, decision trees, pert charts, Gantt, and hundreds more. GoJS includes a number of built in layouts including tree layout, force directed, radial, and layered digraph layout, and a number of custom layout examples.

behaviac - behaviac is a framework of the game AI development, and it also can be used as a rapid game prototype design tool

  •    CSharp

behaviac is a framework of the game AI development, and it also can be used as a rapid game prototype design tool. behaviac supports the behavior tree, finite state machine and hierarchical task network(BT, FSM, HTN)

nested-set-behavior - AR models behavior that allows to work with nested sets tree.

  •    PHP

AR models behavior that allows to work with nested sets tree.

binarytree - Python Library for Studying Binary Trees

  •    Python

Binarytree is a Python library which provides a simple API to generate, visualize, inspect and manipulate binary trees. It allows you to skip the tedious work of setting up test data, and dive straight into practising your algorithms. Heaps and BSTs (binary search trees) are also supported. You may need to use sudo depending on your environment.


Favorez My Favorites JavaScript

  •    Javascript

This JavaScript is intended to simplify creating collapsible trees in DHTML pages. The script defines an abstract base class that encapsulates the general behavior of tree nodes. Two derived classes render nodes as either folders or URLS.

Timber - A logger with a small, extensible API which provides utility on top of Android's normal Log class

  •    Java

This is a logger with a small, extensible API which provides utility on top of Android's normal Log class. Behavior is added through Tree instances. You can install an instance by calling Timber.plant. Installation of Trees should be done as early as possible. The onCreate of your application is the most logical choice. The DebugTree implementation will automatically figure out from which class it's being called and use that class name as its tag. Since the tags vary, it works really well when coupled with a log reader like Pidcat.

btsk - Behavior Tree Starter Kit

  •    C++

Behavior Tree Starter Kit

Standard-Template-Protocols - Protocols for your every day iOS needs

  •    Swift

Swift 2.0 opens a world of opportunity with enhanced Protocols and Protocol Extensions. This library attempts to address some of the most commonly repeated patterns in iOS apps using protocol oriented programming and reduce the need to create deep, complicated subclassing trees. Too often we find ourselves locked into deep and complicated subclassing trees just to factor out common behavior in our apps. This makes our code inflexible, hard to navigate, and contain too many dependencies. Using protocols for common features allows us to create default behavior that is additive without complicated subclassing.

Remote Linq

  •    LINQ

Remote Linq is a simple and easy to use library to translate Expression Trees from and to strongly typed, serializable expression trees.

laravel-nestedset - Effective tree structures in Laravel 4-5

  •    PHP

This is a Laravel 4-5 package for working with trees in relational databases. The nested set model is to number the nodes according to a tree traversal, which visits each node twice, assigning numbers in the order of visiting, and at both visits. This leaves two numbers for each node, which are stored as two attributes. Querying becomes inexpensive: hierarchy membership can be tested by comparing these numbers. Updating requires renumbering and is therefore expensive.

tgboost - Tiny Gradient Boosting Tree

  •    Java

It is a Tiny implement of Gradient Boosting tree, based on XGBoost's scoring function and SLIQ's efficient tree building algorithm. TGBoost build the tree in a level-wise way as in SLIQ (by constructing Attribute list and Class list). Currently, TGBoost support parallel learning on single machine, the speed and memory consumption are comparable to XGBoost. Handle missing value, XGBoost learn a direction for those with missing value, the direction is left or right. TGBoost take a different approach: it enumerate missing value go to left child, right child and missing value child, then choose the best one. So TGBoost use Ternary Tree.

PhantomFlow - Describe and visualise user flows through tests with PhantomJS

  •    Javascript

Unmaintained notice: As of December 22nd 2017 this project will no longer be maintained. What started out as a creative experiment four years ago became a significant tool in Huddle's Web development workflow, as well as the workflows of external Web engineers. But like PhantomCSS, its time to move on. UI testing with decision trees. An experimental approach to UI testing, based on Decision Trees. A NodeJS wrapper for PhantomJS, CasperJS and PhantomCSS, PhantomFlow enables a fluent way of describing user flows in code whilst generating structured tree data for visualisation.

PhantomFlow - Describe and visualise user flows through tests with PhantomJS

  •    Javascript

Unmaintained notice: As of December 22nd 2017 this project will no longer be maintained. What started out as a creative experiment four years ago became a significant tool in Huddle's Web development workflow, as well as the workflows of external Web engineers. But like PhantomCSS, its time to move on. UI testing with decision trees. An experimental approach to UI testing, based on Decision Trees. A NodeJS wrapper for PhantomJS, CasperJS and PhantomCSS, PhantomFlow enables a fluent way of describing user flows in code whilst generating structured tree data for visualisation.

Tree - A basic but flexible tree data structure for php and a fluent tree builder implementation.

  •    PHP

In Tree you can find a basic but flexible tree data structure for php together with and an handful Builder class, that enables you to build tree in a fluent way. The Tree\Node\NodeInterface interface abstracts the concept of a tree node. In Tree a Node has essentially two things: a set of children (that implements the same NodeInterface interface) and a value.

angular2-materialize - Angular 2 support for Materialize CSS framework.

  •    TypeScript

This library adds support for the Materialize CSS framework in Angular 2. It is needed to add the dynamic behavior of Materialize CSS that is using JavaScript rather than plain CSS. To use the library you need to import it once per project and then use its MaterializeDirective directive for binding it to any component that needs a dynamic behavior, like collapsible panels, tooltips, etc.

Linguistic Tree Constructor

  •    C++

Linguistic Tree Constructor (LTC) is a tool for drawing lingusitic syntax trees. The user can define their own node categories, and can label each node with labels, also definable by the user. LTC supports quot;genericquot;, X-Bar and RRG trees.

hitchhiker-tree - Functional, persistent, off-heap, high performance data structure

  •    Clojure

Hitchhiker trees are a newly invented (by @dgrnbrg) datastructure, synthesizing fractal trees and functional data structures, to create fast, snapshottable, massively scalable databases. The hitchhiker namespaces contain a complete implementation of a persistent, serializable, lazily-loaded hitchhiker tree. This is a sorted key-value datastructure, like a scalable sorted-map. It can incrementally persist and automatically lazily load itself from any backing store which implements a simple protocol.

ijk - Transforms arrays into virtual dom trees; a terse alternative to JSX and h

  •    Javascript

This is a tiny recursive factory function that allows you to write terse, declarative representations of virtual DOM trees. It does not try mimic HTML or JSON syntax but instead a series of nested arrays to represent user interfaces. The above call to h returns a virtual DOM tree with named attributes that respect the provided schema. Expected output here, would be of the shape { x: 'main', y: {}, z: [...] }. A tree like this can be passed as a node to patch, diff and render algorithms exposed by libraries like Hyperapp, Ultradom or Preact.