8
votes

I am wondering if and how I can run a shiny app on the SharePoint of my company. I tried to work with a flexdashboard following this post. I managed to make this work with a simple app but not with my own app.

My app does not have static data, but retrieves data via API's, which I guessed was the reason a flexdashboard won't work (correct me if I'm wrong).

I have no experience in publishing/deploying shiny apps other than on shinyapps.io. In this case this will not be an option since the data is sensitive.

What are the options for me to make the app run on SharePoint?

Many thanks in advance.

2
You'll probably have better luck setting up a Shiny Server inside the company, rather than trying to publish on sharepoint - Conor Neilson
@ConorNeilson I would love that to happen but we are a small company so a Shiny Server is way too expensive for us. - Stan
If you're a small company, (and the app is just for internal use), then can you not just utilise the free version of Server? - Conor Neilson
You do not have to use shiny server Pro you can check the free version. As a start you can check here deanattali.com/2015/05/09/… - A. Suliman
I will look into that, thanks both. Was not aware there was a free version, my bad. Will let you know if it worked! - Stan

2 Answers

1
votes

For now I decided to host my app on shinyapps.io and added a login form to my app. This way the data in the app is still secure and not view-able for unwanted visitors.

I am still open for alternatives, so please let me know if there are any!

0
votes

For my own use, I've set up multiple pages that simply redirect through a SharePoint page (aspx) using javascript. It's not hosted directly on SP this way, but the effect is nearly the same to end users.

NB: This also does not truly prevent unauthorized access to the server, should an unauthorized user learn the IP address of the server. The SP front-end access restrictions only work for this redirection interface.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<%@ Page Language="C#" %>
<%@ Register tagprefix="SharePoint" namespace="Microsoft.SharePoint.WebControls" assembly="Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
  <head runat="server">
    <title>Shiny Redirecting... Please wait.</title>
    <meta http-equiv="X-UA-Compatible" content="IE=10" />
    <SharePoint:CssRegistration Name="default" runat="server"/>
  </head>
  <body bgcolor="#B3B3B3">
    <script>
      window.location = "<IP:PORT>";
    </script>
  </body>
</html>