đ¨âđť A list of personal GitHub-based projects that I, Matt Dray, have worked on for fun, mostly.
These are all hosted on GitHub; none are on CRAN. Install with
remotes::install_github()
. The majority are concepts. You can find a
refined selection of the (possibly?) more useful ones on my R-universe
page. The source for the
hex logos is my matt-dray/stickers
repo.
# | Name | Hex | What | Links |
---|---|---|---|---|
1 | {ActionSquirrel} | Â | Play an audiovisual âgameâ in your R console, thanks to {R6} | Source Blog |
2 | {altcheckr} | ![]() |
Accessibility checker: scrape websites and assess image alt-text | Source Site Blog |
3 | {backtick} | Â | RStudio Addin to insert backtick constructions (maybe your keyboard doesnât have a backtick key, or itâs mapped to do something else) | Source Blog |
4 | {badgr} | Â | Generate a customised README metadata badge from shields.io | Source Site Blog |
5 | {blogsnip} | Â | RStudio Addins for {blogdown} content | Source Site Blog |
6 | {cabinet} | Â | Demo to teach package generation with {usethis} | Source Site Blog Slides |
7 | {coloratio} | Â | Check the contrast of two colours for accessibility | Source Blog |
8 | {cran} | ![]() |
Work with an antiquated unit of uncleaned herrings | Source Site Blog |
9 | {dehex} | ![]() |
Learn how to read a colour hex code | Source Blog |
10 | {dialga} | ![]() |
Create standard cron strings from R expressions | Source Blog |
11 | {dray} | Â | A small handful of miscellaneous personal functions | Source Blog |
12 | {emojiscape} | Â | Generate a small emoji scene in your console | Source Blog |
13 | {gdstheme} | Â | {xaringan} theme and template for the Government Digital Service, in package form | Source Site Blog Slides |
14 | {ghdump} | ![]() |
Download/clone all GitHub repos for a given user | Source Site Blog |
15 | {gpx3d} | Â | Extract geospatial data from a GPX file and plot it as an interactive 3D object. | Source Blog |
16 | {hokey} | Â | Three simple games in the terminal to demo the {keypress} package | Source Blog |
17 | {kevinbacran} | ![]() |
Calculate graph distances for CRAN authors, ĂĄ la âthe six degrees of Kevin Baconâ | Source Site Blog App |
18 | {linkrot} | Â | Detect âlink rotâ (when links to a web page break because itâs been taken down or moved) | Source Blog |
19 | {oystr} | ![]() |
Work with data from Transport for Londonâs Oyster card payment system | Source Site Blog |
20 | {pico} | ![]() |
Create an R package with the minimum required content | Source Blog |
21 | {r.oguelike} | Â | Play a simple ASCII game in the console inspired heavily by roguelike games | Source Site |
22 | {r2eng} | ![]() |
Translate R expressions to English sentences | Source Site Blog |
23 | {r.oguelike} | Â | A roguelike game for the R console | Source |
24 | {safar6} | Â | Playable simulation of the Safari Zone from PokĂŠmon Blue using {R6} OOP | Source Blog |
25 | {soccercolleagues} | Â | Find footballersâ team mates and team mates in common | Source Blog |
26 | {snorkel} | Â | RStudio Addin to insert roxygen2 formatting into function documentation | Source Blog |
27 | {skyphone} | Â | Get contributions data from the GitHub Skyline API (deprecated) and visualise/sonify it | Source Blog |
28 | {tide} | Â | Edit a data.frame with Râs inbuilt spreadsheet-like data editor and get some code to reproduce the manual changes you made | Source Blog |
29 | {tidyquiz} | Â | A {learnr}/{shiny} hack to generate random quiz questions about {tidyverse} functions | Source App Blog |
Apps hosted on shinyapps.io.
Name | What | Links |
---|---|---|
Animal Crossing Popularity Contest | Swipe left or right on villagers from Nintendoâs Animal Crossing New Horizons, Tinder-style | App Source Blog |
LeWitt ReMix | An app to remix âartâ in the style of Sol LeWitt for #RecreationThursday | App Source Blog |
Randoflag | Small app to provide a new-browser-tab flag challenge | App Source Blog |
Tidyquiz | A {learnr}/{shiny} hack to generate random quiz questions about {tidyverse} functions | App Source Blog |
Whatâs your Hadley number? | Visual demo of my {kevinbacran} package: find shortest paths to Hadley Wickham by CRAN authorship | App Source Blog |
Apps on GitHub, but not hosted.
Name | What | Links |
---|---|---|
Deer-vehicle collisions in Scotland | Explore open data on deer strikes in Scotland, 2000 to 2017 | Source Blog |
How many footballers at World Cup 2018 were younger than you? | Realise itâs too late for you to become a professional footballer | Source Blog |
Mission Across IOW | Investigate the easiest route to cross the Isle of Wight on foot in a straight line (work in progress) | Source Blog |
Read a colour hex code | Learn how to interpret the colour encoded in a hex code with {dehex} (work in progress) | Source Blog |
Pages written with R Markdown. All source code on GitHub.
Name | Type | What | Served via | Links |
---|---|---|---|---|
matt-dray.com | Personal site made with {postcards} | A single-page launchpad for links to Twitter, GitHub, etc | Netlify with CI | Source Blog |
rostrum.blog | Blog made with {blogdown} | Fun and learning with R: posting tutorials, tips, data exploration, visualisations | Netlify with CI | Source About |
faxcrayon.art | Single page RMarkdown with {bs4cards} | A gallery of recreations/remixes/original art | GitHub Pages | Source Blog |
Most slides made with the {xaringan} package.
Title | Where, when | What | Links |
---|---|---|---|
Make a Twitter bot with {rtweet} and GitHub Actions | LondonR, London, Feb 2022 | Use free tools to create a simple automated Twitter bot that tweets on schedule, using londonmapbot as an example | Video Slides Source Blog |
Hit your reproducibility {targets} | Data Science Festival, UK Government, Sep 2020 | Introduction and demo of the {targets} package for workflow reproducibility in R | Slides Source Blog |
{drake} for reproducible workflows | Bionformatics London Meetup, London, Jan 2020 | Introduction and demo of the {drake} package for workflow reproducibility in R | Slides Source Blog |
Reproducibility in R: three things | Data Science Week, Department for Education, Jan 2020 | Advice on making your R projects more reproducible | Slides Source Blog |
Easier R packages with {usethis} | Coffee & Coding, UK Government, London, Nov 2019 | How to build an R package from scratch with the {usethis} package | Slides Source Blog |
Can {drake} RAP? | Coffee & Coding, UK Government, London, Oct 2019 | Introduction and demo of the {drake} package for workflows as part of a Reproducible Analytical Pipeline (RAP) | Slides Blog Materials |
{crosstalk}: Shiny-like without Shiny | EARL 2018 conference, London, Sep 2018 | Intro and demo of the {crosstalk} package to allow HTML widgets to update dynamically without {shiny} | Slides Source Blog Materials Memes |
Intro to R Markdown | Department for Education, London, May 2018 | Quick introduction to R Markdown for beginners | Slides Source Blog |
Some other bits and bobs that seem worthwhile to mention.
Name | What | Links |
---|---|---|
gamelad | An RStudio theme to mimic the original GameBoyâs green palette (intended for use with my {safar6} package) | Source Blog |
Hastings Half maps | A page of interactive maps of the Hastings Half-Marathon route | Site Source |
Hex stickers | Hexagonal sticker designs, mostly for R packages | Source |
Dataviz recreations | Attempts to recreate/remix data visualisations and art (see also faxcrayon.art) | Source Blog 1 Blog 2 |
londonmapbot | A Twitter bot that tweets a MapBox satellite image of a random part of London, made with {rtweet} and GitHub Actions | Twitter Source Blog |
Emojis to SVG | Script to fetch SoftBankâs 1997 emoji set (the first-ever?) and convert them to SVG format | Source Blog |
Tidyswirl | A work-in-progress introduction to the tidyverse using {swirl} for learning R from within R itself | Source Blog |