Publications by hrbrmstr

Using WebR + Pyodide To Fill In The (Temporary) Package Gaps

29.03.2023

I won’t wax long and poetic here since I’ve already posted the experiment that has all the details. TL;DR: there are still only ~90-ish in the WebR WASM “CRAN”, but more are absolutely on the way, including the capability to build your own CRAN and dev packages via Docker and host your own WebR WASM pkg repo. @timelyportfolio created an ex...

1482 sym 6 img

🧪 Lit + WebR + Observable Plot: Linking Lit’s Lightweight Web Components And WebR For Vanilla JS Reactivity & JS DataVis

26.03.2023

See it live before reading! The previous post brought lit-webr, to introduce Lit and basic reactivity. Today, is more of the same, but we bring the OG Shiny demo plot into the modern age by using Observbable Plot to make the charts. We’re still pulling data from R, but we’re letting Plot do all the heavy lifting. Here’s what’s changed… F...

2402 sym Python (1210 sym/2 pcs)

Linking Lit’s Lightweight Web Components And WebR For Vanilla JS Reactivity

25.03.2023

See it live before reading! This is a Lit + WebR reproduction of the OG Shiny Demo App Lit is a javascript library that makes it a bit easier to work with Web Components, and is especially well-suited in reactive environments. My recent hack-y WebR experiments have been using Reef which is an even ligher-weight javascript web components-esque libr...

7199 sym R (7319 sym/25 pcs) 2 img

You’re One JavaScript Function Call Away From Using (Most) WebR R Functions In Your WebR-Powered Apps/Sites

21.03.2023

After writing the initial version of a tutorial on wrapping and binding R functions on the javascript side of WebR, I had a number of other WebR projects on the TODO list. But, I stuck around noodling on the whole “wrapping & binding” thing, and it dawned on me that there was a “pretty simple” way to make R functions available to javascript...

3510 sym R (1220 sym/5 pcs)

WebR Filesystem Machinations & ReefR

20.03.2023

It’s difficult to believe it has only been a couple of weeks since WebR has been around. But that might just be my perception. The spike protein invasion has significantly increased sedentary time, and that has enabled me to focus on this new toy to keep my attention focused on something positive. So, I’ve had “WebR on the mind” more than m...

4124 sym

The Road To ggplot2 In WebR, Part 1: The Road Is Paved With Good Base R Plots

18.03.2023

I have graphics working in Vanilla JS WebR, now, and I’ll cover the path to that in two parts. The intent was to jump straight into ggplot2-land, but, as you saw in my previous post, WASM’d ggplot2 is a bear. And, I really didn’t grok what the WebR site docs were saying about how to deal with the special WebR canvas() device until I actually ...

5198 sym Python (2529 sym/10 pcs)

WebR WASM R Package Load/Library Benchmarking Rabbit Hole

18.03.2023

I have a post coming on using base and {ggplot2} plots in VanillaJS WebR, but after posting some bits on social media regarding how slow {ggplot2} is to deal with, I had some “performance”-related inquiries, which led me down a rabbit hole that I’m, now, dragging y’all down into as well. First, a preview of the aforementioned plot/graphics:...

7259 sym R (401 sym/3 pcs) 6 img

Almost Bare Bones WebR Starter App

12.03.2023

Let’s walk through how to set up a ~minimal HTML/JS/CS + WebR-powered “app” on a server you own. This will be vanilla JS (i.e. no React/Vue/npm/bundler) you can hack on at-will. TL;DR: You can find the source to the app and track changes to it over on GitHub if you want to jump right in. In the docs/ directory in the GH repo you’ll see an e...

7517 sym Python (3505 sym/15 pcs)

WebR IS HERE!

09.03.2023

WebR 0.1.0 was released! I had been git-stalking George (the absolute genius who we all must thank for this) for a while and noticed the GH org and repos being updated earlier this week, So, I was already pretty excited. It dropped today, and you can hit that link for all the details and other links. I threw together a small demo to show how to get...

1013 sym Python (2606 sym/1 pcs)

2022 Hanukkah of Data • Puzzle 2

20.12.2022

Ref: https://rud.is/b/2022/12/19/2022-hanukkah-of-data-puzzle-1/ library(tidyverse) cust <- read_csv("~/Downloads/noahs-csv/noahs-customers.csv") orders_items <- read_csv("~/Downloads/noahs-csv/noahs-orders_items.csv") orders <- read_csv("~/Downloads/noahs-csv/noahs-orders.csv") products <- read_csv("~/Downloads/noahs-csv/noahs-products.csv") o...

457 sym R (705 sym/1 pcs)