Skip to main content

A Django app for adding R Shiny apps to a Django site with django CMS-specific features

Project description

djangocms-shiny-app is a Django app for adding R Shiny apps to a Django site with django CMS-specific features.

Source code is available on GitHub at mfcovington/djangocms-shiny-app.



pip install djangocms-shiny-app

GitHub (development branch)

pip install git+


  • Install django CMS and start a project, if one doesn’t already exist.

  • Unless you use this app as part of djangocms-lab-site or plan to style the app from scratch, you will want to choose the Use Twitter Bootstrap Theme option (when running djangocms) and then edit the resulting templates/base.html.

    • This will add style that looks like Bootstrap 2. To use Bootstrap 3 styling, remove the following line for the bootstrap-theme.min.css stylesheet from templates/base.html:

      <link rel="stylesheet" href="">
    • The default menu settings for django CMS using Bootstrap will allow the user to access specific lab members via a dropdown menu, but will not give easy access to the summary page of all Shiny apps. To fix this do one of the following:

      • In templates/base.html, change {% show_menu 0 1 100 100 "menu.html" %} to {% show_menu 0 0 100 100 "menu.html" %}, or
      • Use a split button dropdowns by changing that line to {% show_menu 0 100 1 1 ‘_menu.html’ %} and populate _menu.html as done in djangocms-lab-site.
  • Edit the project’s file.

    • Add cms_shiny and its dependencies to INSTALLED_APPS:
        # ...
    • Add easy_thumbnail settings:
    # For easy_thumbnails to support retina displays (recent MacBooks, iOS)
    THUMBNAIL_SUBDIR = 'versions'
  • To access cms_shiny pages without using a django CMS AppHook, include URL configurations for cms_shiny in your project’s file:

    • For Django 1.7:

      urlpatterns = patterns('',
          # ...
          url(r'^shiny_apps/', include('cms_shiny.urls', namespace='cms_shiny')),
          # ...
    • For Django 1.8:

      urlpatterns = [
          # ...
          url(r'^shiny_apps/', include('cms_shiny.urls', namespace='cms_shiny')),
          # ...


Create and perform cms_shiny migrations:

python makemigrations cms_shiny
python migrate


  • Start the development server:
python runserver
  • Visit:
  • Create a CMS page and then:
    • Attach the Shiny Apps App under Advanced Settings for the page, OR
    • Insert the Shiny App Plugin into a placeholder field.

Version 0.1.3

Revision History

0.1.3 2015-12-07

  • Fix thumbnail image elongation in Chrome on screens >= 1200px wide
  • Require that ShinyApp name and slug are unique
  • Update README with more complete and accurate instructions
  • Prepare for distribution via PyPI

0.1.2 2015-04-21

  • Replace line breaks in slide description field with appropriate HTML

0.1.1 2015-04-19

  • Improve django CMS integration and styling

0.1.0 2015-04-16

  • A Django app for adding R Shiny apps to a Django site with django CMS-specific features

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangocms-shiny-app-0.1.3.tar.gz (10.7 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page