Bosket
react-logo
angular-logo
vue-logo
vue-logo

Bosket is a collection of front-end tree view components.
A versatile, powerful and simple way to display nested data.

Why Bosket ?

Purpose

Bosket is a library of tree views implementations for well known front-end reactive frameworks such as Angular or React.
Tree views, which are basically an elegant way to display nested lists, are very versatile and can for example be used as file explorers, menus, table of contents or category lists.

The core logic is written in plain javascript, without any dependencies.
Framework implementations rely on this very same code, which makes new implementations easy to write and by extension new frameworks easy to support.

Features

Bosket supports advanced features out of the box, such as :

  • Drag and drop
  • Multiple, single or custom selection
  • Asynchronous loading and caching of children
  • Search, sort and filter
  • Keyboard modifiers

And more.

Flexibility

Appearance is controlled with CSS, and can be tweaked completely to suit your needs.
Bosket exposes numerous javascript hooks to easily enable/disable/modify almost every feature and behaviour.

Setup

As a dependency

Installing as a package dependency is the easiest and recommended way.

npm i @bosket/core @bosket/tools @bosket/

By cloning the repository

Best if you would like to hack a bit and contribute.

# Clone the master branch from the git repository
git clone https://github.com/elbywan/bosket
cd bosket
# Install the dependencies
npm install
# Development build with hot-reload served on localhost:8080
npm run dev-server
# Production build
npm start

After a build, you will find the generated files inside the /build folder.