Bau

screenshot of Bau

Reactive library and components for building web user interface

Overview

Bau.js is a Javascript library that allows users to write reactive user interfaces for the web in under 350 lines of code. It provides a simple way to write UI components using Javascript, without the need for JSX, templating, or a virtual DOM. The library is reactive, meaning that when data is mutated, the corresponding views bound to that data are updated in the DOM. Bau.js also offers a set of additional libraries that provide a complete ecosystem for web development, including a CSS in JS library, a set of themable components, a router, a multi-page app starter kit, a static site generator, and integration for Astro.

Features

  • bau-css: A CSS in JS library in 33 lines of code.
  • bau-ui: A set of 50+ themable components, such as Button, Input, Tabs, Tree View, and Modal.
  • bau-router: A router with nested routes, asynchronous loading, and layout capabilities, with a bundle size under 0.6kB.
  • bau-kit: A multi-page app starter kit that includes all of the above features in a bundle size of only 5KB, representing a 20X decrease compared to the combo of React/Redux/React Router/Style Component.
  • bausaurus: A static site generator (SSG) that generates static sites from Markdown content.
  • bau-astro: Bau integration for Astro, allowing developers to leverage the server-side rendering (SSR) implementation provided by Astro.