{bidux}
brings the Behavior Insight Design (BID)
framework into your Shiny development workflow. Follow five staged
functions (Interpret, Notice, Anticipate, Structure, Validate) to
systematically apply behavioral science to UI/UX design and build more
intuitive dashboards.
bid_interpret()
)bid_notice()
)bid_anticipate()
)bid_structure()
)bid_validate()
)bid_ingest_telemetry()
){bslib}
, {shiny}
,
{reactable}
, {echarts4r}
, and moreInstall from CRAN:
install.packages("bidux")
Or the development version:
# install.packages("pak")
::pak("jrwinget/bidux") pak
library(shiny)
library(bidux)
# Document a simple BID pipeline
<- bid_interpret(
process central_question = "Which metrics drive decisions?",
data_story = list(
hook = "Key metrics hidden",
resolution = "Surface top metrics up front"
)|>
) bid_notice(
problem = "Users struggle to find key metrics",
evidence = "70% of users spent >30s searching"
|>
) bid_anticipate(
bias_mitigations = list(anchoring = "Contextual defaults")
|>
) bid_structure() |>
bid_validate(
include_exp_design = FALSE,
include_telemetry = TRUE,
include_empower_tools = TRUE
)
# View suggestions
bid_suggest_components(process, package = "bslib")
# Generate an HTML report
bid_report(process, format = "html")
Leverage real user behavior to pinpoint UX friction with {shiny.telemetry}
data:
# Ingest telemetry from SQLite or JSON
<- bid_ingest_telemetry(
issues "telemetry.sqlite",
format = "sqlite"
)
# Inspect detected issues
str(issues)
bid_ingest_telemetry()
automatically flags five friction
indicators:
Use these insights to fuel the Notice stage and
drive data-informed UI improvements. See the full example and thresholds
customization in the See the package vignette ‘Telemetry Integration’
for a full example (accessible via
vignette("telemetry-integration", package="bidux")
).
Explore detailed guides:
vignette("introduction-to-bid")
: BID framework
overviewvignette("getting-started")
: Quick start guidevignette("concepts-reference")
: Comprehensive concept
dictionaryvignette("telemetry-integration")
: Integrating
telemetry with BIDUXWe welcome all contributions! Please see Contributing Guide for guidelines, issue templates, and code style.
This project is MIT licensed. By contributing, you agree to our Code of Conduct.