R in Prod: rip, a command line R package installer | sellorm
02-AREAS
Supplement to Shiny in Production
This document is full of supplemental resources and content from the Shiny in Production Workshop delievered at rstudio::conf 2019.
Field Guide to the R Ecosystem
This guide aims to introduce the reader to the main elements of the R ecosystem.
Executing asynchronous tasks | Cloud Run Documentation | Google Cloud
Authenticating service-to-service | Cloud Run Documentation
dreamRs/shinypop: Collection of notifications, confirm dialogs and alerts for 'Shiny' applications
Collection of notifications, confirm dialogs and alerts for 'Shiny' applications - dreamRs/shinypop
Google API Design Guide
Collections of resources for API Designers
API design guidance - Best practices for cloud applications | Microsoft Docs
Web applications can expose APIs so clients to interact with the application. Well-designed web APIs should support platform independence and service evolution.
Using Cookie Based Authentication with Shiny · calligross.de
dotenv - npm
about_Environment_Variables - PowerShell | Microsoft Docs
PowerShell and Environment Variables: A Deep Dive
Microservices Guide
Test Plan for Software: What, Why and How to Write It? - Bit Blog
Software Development Process: Steps To Follow - Bit Blog
Stop struggling with Python on Windows – Python For Engineers
Structured Errors in Plumber APIs
If you’ve used the Plumber package to make R models
or other code accessible to others via an API, sooner or later you will need to
decide how to handle and report errors.
By default, Plumber will catch R-level errors (like calls to stop()) and
report them to users of your API as a JSON-encoded error message with HTTP
status code 500 – also known as Internal Server Error. This might look
something like the following from the command line:
$ curl -v localhost:8000/
> GET /status HTTP/1.1
> Host: localhost:8000
> User-Agent: curl/7.64.0
> Accept: */*
>
< HTTP/1.1 500 Internal Server Error
< Date: Sun, 24 Mar 2019 22:56:27 GMT
< Content-Type: application/json
< Date: Sun, 24 Mar 2019 10:56:27 PM GMT
< Connection: close
< Content-Length: 97
<
* Closing connection 0
{"error":["500 - Internal server error"],"message":["Error: Missing required 'id' parameter.\n"]}
There are two problems with this approach: first, it gives you almost zero
control over how errors are reported to real users, and second, it’s badly
behaved at the protocol level – HTTP status codes provide for much more
granular and semantically meaningful error reporting.
In my view, the key to overcoming these problems is treating errors as more than
simply a message and adding additional context when they are emitted. This is
sometimes called structured error handling, and although it has not been
used much historically in R, this may be changing.
As you’ll see, we can take advantage of R’s powerful condition system to
implement rich error handling and reporting for Plumber APIs with relative ease.
Functions Similar to VLOOKUP in Excel • lookup
Simple functions to lookup items in key-value pairs. See Mehta (2021) .
Plumber and the Slack API - RStudio :: Solutions
Using Plumber to create APIs for R programs
Learn how to use the open-source tool Plumber to create RESTful APIs for R programs.
REST API with R - Ger Inberg
Learn how to create a REST API in R using the plumber package.
Isochrone - OpenStreetMap Wiki
Database Testing Complete Guide (Why, What, and How to Test Data)
What is CORS (Cross-Origin Resource Sharing)?
CORS allows your web apps to use assets from other domains. Today, we explore CORS and learn to implement it in our own front-end projects.
What are Materialized Views? A 5 Minute Introduction
A materialized view is a type of database object that contains any results derived from a query. Read on for a quick introduction.
Microservices Architecture Tutorial: all you need to get started
Microservice architecture is one of the hottest software architecture trends these days, and it has forever changed the way we build enterprise applications. Here's all you need to know to get started!
Kubernetes Tutorial: Getting Started with Container Orchestration
In this Kubernetes Tutorial, you'll learn how to create a cluster, deploy, scale, and update your application.
Getting started with Docker and Kubernetes: a beginners guide
Docker and Kubernetes have revolutionized the way we develop and deploy applications at scale. It's best to get started with them now.
Docker Compose Tutorial: advanced Docker made simple
Docker Compose is an advanced Docker tool that simplifies your workflow. In this article, we will show you how to get started with Docker Compose and its popular commands.
Where to place DB connections within plumber APIs? - R Admins / RStudio Connect - RStudio Community