Almost everything listed on this page was built for the sake of my own learning. Quality and completeness are variable. No guarantees.
R Packages
Selected packages. All are hosted on GitHub. Many are on my R-universe.
Useful
Made to serve a ‘real’ purpose. Other people could feasibly find them useful. Nothing grandiose. Alphabetical.
| {aftables} |
Generate best-practice stats spreadsheets for publication (renamed from {a11ytables}) |
|
| {altcheckr} |
Assess image alternative (alt) text on websites |
|
| {backtick} |
Insert backtick structures with an RStudio Addin |
|
| {badgr} |
Generate URLs for shields.io metadata badges |
|
| {bd2q} |
Helpers to convert a {blogdown} blog to Quarto |
|
| {blogsnip} |
RStudio addin to insert Rmd code snippets, especially for {blogdown} |
|
| {coloratio} |
Check accessibility of color contrasts |
|
| {dehex} |
Learn to assess a colour hex code by eye |
|
| {defenestrate} |
Personal helpers wrapping {Microsoft365R} |
|
| {dialga} |
Translate R to cron to English |
|
| {gdstheme} |
{xaringan} theme and template, (unofficial) Government Digital Service style |
|
| {gex} |
A dependency-light hex-logo builder |
|
| {ghdump} |
Download/clone all of a user’s GitHub repositories for archiving purposes |
|
| {gpx3d} |
Make an interactive 3D chart of your workout route from a GPX file |
|
| {hexbase} |
Make a very simple hex logo with no dependencies |
|
| {linkrot} |
Detect dead hyperlinks on webpages |
|
| {oystr} |
Wrangle Oyster-card data supplied by Transport for London |
|
| {pixeltrix} |
Make pixel art interactively in a plot window, get a matrix, make a gif |
|
| {quartostamp} |
RStudio Addin to insert (‘stamp’) useful Quarto elements |
|
| {r2eng} |
Translate R to English |
|
| {snorkel} |
RStudio Addin to help document functions with {roxygen2} |
|
| {trapinch} |
Get data from the PokéAPI service |
|
| {wordup} |
Convert Word tables to Govspeak Markdown |
|
Conceptual
Experiments, games, hacks, memes and subversion. Alphabetical.
| {ActionSquirrel} |
A squirrel game in your R console made with {R6} |
|
| {cran} |
Convert volume measurements to units of uncleaned herring |
|
| {choosethis} |
Off-label concepts for executing R code from links in the console, using {cli} |
|
| {emojiscape} |
Print a little emoji scene to your console |
|
| {hokey} |
Tiny game demos with user input via {keypress} |
|
| {hiscore} |
A game with a system for saving high scores persistently |
|
| {kevinbacran} |
The Six Degrees of Kevin Bacon but for CRAN authors |
|
| {pico} |
Generate the aboslute minimum R package skeleton |
|
| {plunderplot} |
Interactively extract coordinates from an image of a plot |
|
| {potato} |
Play ‘Potato’ in the R console, a one-page RPG by Oliver Darkshire |
|
| {r.oguelike} |
A tile-based roguelike toy for R’s console, featuring procedural dungeons and enemy pathfinding |
|
| {remorse} |
Text to Morse Code to audio |
|
| {safar6} |
A playable text-based simulation of Pokémon’s Safari Zone using {R6} |
|
| {soccercolleagues} |
Find footballers’ common team mates |
|
| {skyphone} |
Fetch and sonify GitHub Skyline contributions data |
|
| {tide} |
Edit a data.frame in a spreadsheet-like editor, get code to reproduce it |
|
| {tamRgo} |
A persistent cyberpet in your R console |
|
| {tidyquiz} |
A {tidyverse} quiz via {learnr} hacking |
|
| {tilebased} |
Move a sprite around a procedurally-generated map inside an R graphics window |
|
Shiny apps
Hosted

| Animal Crossing Popularity Contest |
Swipe left or right on villagers from Nintendo’s Animal Crossing |
|
| LeWitt ReMix |
Remix Sol LeWitt’s art for #RecreationThursday |
|
| Randoflag |
A randomised flag challenge for new browser tabs |
|
| What’s your Hadley number? |
Find shortest paths to Hadley Wickham in the CRAN authorship graph |
|
Shinylive

Serverless. Runs entirely in your browser.
| CRAN deadlines |
See which CRAN packages are at threat of archival |
|
| Govspeakify tables |
Convert a pasted table to Govspeak-flavoured Markdown |
|
| Little pixel fun zone |
A small interactive pixel-editor toy for the browser |
|
| Not Balatro |
Drag-and-drop card gaming in R with {sortable}? |
|
Not hosted

You’ll have to download and run them yourself.
| Ages at World Cup 2018 |
You’re really old and sports people are younger than you |
|
| Deer-vehicle collisions in Scotland |
Explore open data on deer strikes in Scotland, 2000 to 2017 |
|
| Mission Across IOW |
How hard is it to cross the Isle of Wight, UK, in a straight line? |
|
| Read a colour hex code |
Test yourself at reading colour hex codes by eye |
|
| Tidyquiz |
A {learnr} hack to generate a random {tidyverse} functions quiz |
|
Websites
| matt-dray.com |
This website |
Quarto, Netlify |
|
| rostrum.blog |
Japes with R: tutorials, ephemera, memes |
Quarto, Netlify |
|
| Faxcrayon |
A gallery of recreations/remixes/original art |
RMarkdown, {bs4cards}, GitHub Pages |
|
| Hastings Half maps |
Interactive maps of the Hastings Half-Marathon route |
RMarkdown, {flexdashboard}, GitHub Pages |
|
Other
Code-based bric-a-brac. Alphabetical.
| Emojis to SVG |
Script to fetch SoftBank’s 1997 emoji set (the first-ever?) and convert them to SVG format |
|
| gamelad |
An RStudio theme to mimic the original GameBoy’s green palette |
|
| GitHub Gists |
Snippets of code that solve a small problem and sometimes become blog posts |
|
| Hex stickers |
Hexagonal sticker designs, mostly for R packages |
|
| londonmapbot |
A (retired) social media bot that posts MapBox satellite images, made with {rtoot} and GitHub Actions |
|
| Splendid R games |
A list of games made with R |
|
| Tidyswirl |
A work-in-progress introduction to the tidyverse created with {swirl} |
|
| Try R v4.2 |
Try new features of R version 4.2 in the browser, thanks to Binder |
|