React Register Map Builder

The editable sibling of the Register Map: an inline field editor (name, [msb:lsb], access, reset, description) with live validation — bit-range errors, identifier checks, and overlap detection flag the offending rows in red with a message — a live bitfield preview rendered by the Register Map itself, and one-click export to IP-XACT 1685-2022 XML or a C header with _SHIFT/_MASK defines. New fields land in the lowest free bit automatically.

FieldMSBLSBAccessResetDescription

Live preview

DMA_CTRLoffset 0x0004
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
BURST
BitsFieldAccessResetDescription
[31]BUSYRO0x0Transfer in progress
[24]ERRW1C0x0Error flag, write 1 to clear
[16]IRQ_ENRW0x0Interrupt enable
[5:4]BURSTRW0x0Burst size
[1]DIRRW0x0Transfer direction
[0]ENRW0x0Channel enable

Edit bits to create an overlap and watch validation flag it; fix it and export IP-XACT or a C header.

Installation

Depends on register-map (renders the preview).

npx shadcn@latest add register-builder.json

Usage

Loading...

Props

PropTypeDefaultDescription
initialNamestring"NEW_REG"Register name
initialOffsetstring"0x0000"Byte offset
initialFieldsOmit<BuilderField, "id">[][]Starting field set
widthnumber32Register width in bits

Exports are disabled while any validation error exists — the generated artifacts are always consistent.