https://github.com/dgkf/riddlr
Tools for building coding challenges in R
https://github.com/dgkf/riddlr
hacktoberfest learnr r shiny shiny-contest
Last synced: 1 day ago
JSON representation
Tools for building coding challenges in R
- Host: GitHub
- URL: https://github.com/dgkf/riddlr
- Owner: dgkf
- License: mit
- Created: 2020-02-22T17:16:43.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2020-10-17T20:41:27.000Z (over 4 years ago)
- Last Synced: 2025-03-27T15:06:43.838Z (19 days ago)
- Topics: hacktoberfest, learnr, r, shiny, shiny-contest
- Language: R
- Homepage:
- Size: 253 KB
- Stars: 14
- Watchers: 2
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - dgkf/riddlr - Tools for building coding challenges in R (R)
README
A package for making coding challenges, largely inspired by the
[`learnr`](https://github.com/rstudio/learnr) package.## Installation
Install the package off of GitHub via
```r
devtools::install_github("dgkf/riddlr")
```## Quick Start
Try out some examples:
### Building a single question shiny app
```r
library(shiny)app_file <- system.file("example", "shiny", "single_question", "app.R", package = "riddlr")
shinyAppFile(app_file)
```### Rendering a searchable question catalog shiny app
```r
library(shiny)app_file <- system.file("example", "shiny", "question_catalog", "app.R", package = "riddlr")
shinyAppFile(app_file)
```## Community Shout-outs
### `learnr`
A lot of this package is inspired by `learnr`, with early versions being built
directly into `learnr`'s Rmarkdown framework. The scope is slightly different,
being an evaluation tool rather than a learning tool. From this slight change in
perspective, there were a few features that `learnr` couldn't accommodate.- easily testing code against multiple test cases, whereas `learnr` only handles
a single input
- timeout per test case (or timeout with a grace period for feedback)
- hooks for triggering database logs
- easier addition of markdown-formatted help dialogsCould this all be contributed back to the `learnr` package? Absolutely, but
ensuring code quality, reusability and consistency within the `learnr`
framework wasn't within scope for the proof-of-concept.### `shinyAce`
A lot of work was put into giving a comfortable programming interface with
staple features like improved code completion, help-text popups, parsing errors
and warnings noted in the code form gutter. All of these features were first
added internally as part of the proof-of-concept, but were later [contributed
back](https://github.com/trestletech/shinyAce/pull/66) to the `shinyAce`
package.A huge thank you goes out to [**@vnijs**](https://github.com/vnijs) and
[**@detule**](https://github.com/detule) for giving great feedback on
such a large body of new features and diligently checking many edge cases
that would have gone unaddressed.