abaabil

Abaabil vs React Bootstrap

Both libraries, measured the same way on the same day: each entry point bundled with its own module graph, gzipped, React treated as external. All twenty-three abaabil components together come to 7,364 B. The same set from React Bootstrap, over the 21 it offers, comes to 34,319 B, or 4.7x the size.

What React Bootstrap is

Bootstrap's markup and behaviour as React components, on top of the Bootstrap stylesheet you load separately.

react-bootstrap.github.io

Per component, gzipped

abaabil's column is its a11y tier, the one most applications should use. 21 components are directly comparable; the widest gap is tooltip at 39x. React Bootstrap has no equivalent for 2 of the twenty-three (combobox, file), so those are left out rather than counted as a win.

JavaScript weight in gzipped bytes, abaabil against React Bootstrap, per component.
ComponentabaabilReact Bootstrapratio
button5571,5892.9x
dialog5809,99417x
popover49517,99936x
menu1,12016,73115x
tooltip45918,02239x
input5012,0334.1x
textarea5062,0334.0x
checkbox5342,2554.2x
radio4442,2555.1x
switch4232,2555.3x
select5301,1842.2x
slider7051,1291.6x
accordion3646,16917x
tabs7869,61912x
toolbar7841,2181.6x
breadcrumb3352,0616.2x
pagination6892,2433.3x
progress4931,5053.1x
alert3416,62619x
avatar4601,5803.4x
badge2671,1334.2x
all of them, one bundle7,36434,3194.7x

The last row matters more than any single one above it. A library with a large shared runtime pays for it once, so the gap always narrows as you use more of it. Quoting only the widest row would be the easiest way to mislead you with real numbers.

Reading this fairly. React Bootstrap looks light here because its weight is not in JavaScript. Its select is a thin wrapper around the native element, but nothing on the page looks like Bootstrap until you also load bootstrap.min.css, which is 30,823 B gzipped as a single stylesheet you import whole. That figure is not in the numbers below.

abaabil's figures are JavaScript only, the same as every other column here, and unlike React Bootstrap it arrives already styled. That cost is real and tracked separately rather than folded in: the whole stylesheet is 5,217 B gzipped if you import all of it. The method, and every library at once, is on the Why page.

When to choose React Bootstrap instead

Your organisation already runs on Bootstrap. Matching an existing design language is a real constraint, and reproducing Bootstrap in something else is a much larger project than accepting its weight.

abaabil is twenty-three components and stops there. It has no date picker, no data grid, no virtualised list, and no plans for any of them. If the thing you need is on that list, the size comparison above is irrelevant to your decision, and you should take the library that has it.

If abaabil is the right fit

Setup is four steps and the first one is npm i abaabil. Every component has its own page with a live example at the tier you would actually import. Or read when not to use it first, which is the section written to talk you out of it.

Compare against another library.