{"id":17795236,"url":"https://github.com/matt-dray/earl18-crosstalk","last_synced_at":"2026-01-08T08:47:37.118Z","repository":{"id":112692841,"uuid":"142984476","full_name":"matt-dray/earl18-crosstalk","owner":"matt-dray","description":":round_pushpin::negative_squared_cross_mark: Demo: {crosstalk} materials for a talk at EARL London 2018","archived":false,"fork":false,"pushed_at":"2019-12-10T18:50:38.000Z","size":5870,"stargazers_count":21,"open_issues_count":0,"forks_count":8,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-27T04:38:16.960Z","etag":null,"topics":["crosstalk","earl","flexdashboard","leaflet","maps","rstats","schools","shiny"],"latest_commit_sha":null,"homepage":"https://matt-dray.github.io/earl18-crosstalk/04_leaflet-flexdash-dt-crosstalk.html","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matt-dray.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-07-31T08:21:02.000Z","updated_at":"2024-04-11T21:28:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"b1985163-1709-409c-8507-cc0a8147db16","html_url":"https://github.com/matt-dray/earl18-crosstalk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matt-dray%2Fearl18-crosstalk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matt-dray%2Fearl18-crosstalk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matt-dray%2Fearl18-crosstalk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matt-dray%2Fearl18-crosstalk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matt-dray","download_url":"https://codeload.github.com/matt-dray/earl18-crosstalk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246742971,"owners_count":20826438,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crosstalk","earl","flexdashboard","leaflet","maps","rstats","schools","shiny"],"created_at":"2024-10-27T11:25:11.783Z","updated_at":"2026-01-08T08:47:37.092Z","avatar_url":"https://github.com/matt-dray.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# earl18-crosstalk\n\n\u003c!-- badges: start --\u003e\n[![Blog post](https://img.shields.io/badge/rostrum.blog-post-008900?labelColor=000000\u0026logo=data%3Aimage%2Fgif%3Bbase64%2CR0lGODlhEAAQAPEAAAAAABWCBAAAAAAAACH5BAlkAAIAIf8LTkVUU0NBUEUyLjADAQAAACwAAAAAEAAQAAAC55QkISIiEoQQQgghRBBCiCAIgiAIgiAIQiAIgSAIgiAIQiAIgRAEQiAQBAQCgUAQEAQEgYAgIAgIBAKBQBAQCAKBQEAgCAgEAoFAIAgEBAKBIBAQCAQCgUAgEAgCgUBAICAgICAgIBAgEBAgEBAgEBAgECAgICAgECAQIBAQIBAgECAgICAgICAgECAQECAQICAgICAgICAgEBAgEBAgEBAgICAgICAgECAQIBAQIBAgECAgICAgIBAgECAQECAQIBAgICAgIBAgIBAgEBAgECAgECAgICAgICAgECAgECAgQIAAAQIKAAAh%2BQQJZAACACwAAAAAEAAQAAAC55QkIiESIoQQQgghhAhCBCEIgiAIgiAIQiAIgSAIgiAIQiAIgRAEQiAQBAQCgUAQEAQEgYAgIAgIBAKBQBAQCAKBQEAgCAgEAoFAIAgEBAKBIBAQCAQCgUAgEAgCgUBAICAgICAgIBAgEBAgEBAgEBAgECAgICAgECAQIBAQIBAgECAgICAgICAgECAQECAQICAgICAgICAgEBAgEBAgEBAgICAgICAgECAQIBAQIBAgECAgICAgIBAgECAQECAQIBAgICAgIBAgIBAgEBAgECAgECAgICAgICAgECAgECAgQIAAAQIKAAA7)](https://www.rostrum.blog/2018/09/12/crosstalk-memes/)\n\u003c!-- badges: end --\u003e\n\n## tl;dr\n\n* [See the full demo of `crosstalk` with `leaflet` and `DT` in a `flexdashboard`](https://matt-dray.github.io/earl18-crosstalk/04_leaflet-flexdash-dt-crosstalk.html) (see the 'Stages of development' section below for the intermediate demos)\n* [See my EARL 2018 presentation for which these the demos were used](https://matt-dray.github.io/earl18-presentation/) or access its [source code](https://github.com/matt-dray/earl18-presentation)\n* [Read a blog post about the presentation](https://www.rostrum.blog/2018/09/12/crosstalk-memes/)\n* [I did an 'advent of memes' on Twitter leading up to the talk; I know that's why you're really here](https://github.com/matt-dray/earl18-presentation/blob/master/memes/links.md)\n\n## Summary\n\nThis repo contains code for some materials I used in a presentation at the [EARL (Enterprise Applications of the R Language) conference](https://earlconf.com/) in London on 12 September 2018.\n\nThe presentation was about use of [Joe Cheng](https://twitter.com/jcheng)'s [`crosstalk` package](http://rstudio.github.io/crosstalk/) to help solve a business problem. `crosstalk` lets you create [Shiny](https://shiny.rstudio.com/)-like 'apps' without Shiny. You might want to do this because you don't have a server to host a Shiny app. It lets filtering of one `crosstalk`-compatible [htmlwidget](https://www.htmlwidgets.org/) (e.g. `leaflet`, `DT` and `plotly`) filter other `crosstalk`-compatible htmlwidgets.\n\nI gave this talk while I worked for the [Department for Education](https://www.gov.uk/government/organisations/department-for-education), part of the UK government. My talk was restricted to **published data only** and the content of the talk **does not reflect or constitute official government policy**. Schools were selected **at random** from open data.\n\n## Full conference blurb\n\n\u003eCrosstalk: Shiny-like without Shiny\n\u003e\n\u003eSelf-service interactive tools have great power to support decisions by policy-makers. Shiny apps are a natural fit for this, but it's not always easy to share them within the public sector. This is due to issues like a lack of server space, highly sensitive data and users who aren't R-savvy. \n\u003e\n\u003eWe've approached this problem in the UK's Department for Education by sharing interactive HTML widgets – embeddable JavaScript visualisation libraries – within RMarkdown outputs. Interactivity is, however, limited because selections in one widget don’t impact the data presented in another. \n\u003e\n\u003eJoe Cheng's Crosstalk package (http://rstudio.github.io/crosstalk/) overcomes this with shared data objects that react to user inputs, altering the content of multiple widgets on the fly. I'll explain how I used Crosstalk to develop a 'pseudo-app' for exploring schools data with the Leaflet (maps), Plotly (charts) and DT (tables) widgets inside the Flexdashboard framework and how I shared it easily with policy-making users as a static HTML file for exploration in the browser.\n\n## Stages of development\n\nThe talk demonstrated a four-step process in the development of an interactive map tool given user feedback at each stage. Example code is hosted in this repo and the HTML outputs are viewable in-browser. The steps are shown below (click to be taken to the example):\n\n1. [Leaflet](https://matt-dray.github.io/earl18-crosstalk/01_leaflet.html)\n2. [Leaflet + Flexdashboard](https://matt-dray.github.io/earl18-crosstalk/02_leaflet-flexdash.html)\n3. [Leaflet + Flexdashboard + DT](https://matt-dray.github.io/earl18-crosstalk/03_leaflet-flexdash-dt.html)\n4. [Leaflet + Flexdashboard + DT + Crosstalk](https://matt-dray.github.io/earl18-crosstalk/04_leaflet-flexdash-dt-crosstalk.html)\n\nAnd in meme format if you prefer:\n\n![](https://raw.githubusercontent.com/matt-dray/earl18-presentation/master/memes/expanding-brain.jpg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatt-dray%2Fearl18-crosstalk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatt-dray%2Fearl18-crosstalk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatt-dray%2Fearl18-crosstalk/lists"}