Skip to contents

sdstudio

sdstudio is a companion package for building, previewing, and managing surveys built using the surveydown survey platform through a Graphical User Interface (GUI). The studio runs as a local Shiny web app and makes it easier to create, preview, and manage surveys without extensive programming knowledge.

Intro Video

Watch the sdstudio intro video

Installation

Installing sdstudio:

# Option 1: install from CRAN
install.packages("sdstudio")

# Option 2: install from GitHub
pak::pak("surveydown-dev/sdstudio", ask = FALSE)

Make sure to install surveydown as well:

# Option 1: install from CRAN
install.packages("surveydown")

# Option 2: install from GitHub
pak::pak("surveydown-dev/surveydown", ask = FALSE)

Launch

Simply call the launch() function to start the studio:

sdstudio::launch()

Features

🏗️ Build Tab - Visual Survey Creation

  • Drag-and-drop interface for intuitive survey construction
  • 16 survey templates covering basic to advanced use cases
  • Dual-pane editor with visual builder and code editor
  • Real-time synchronization between visual interface and underlying code
  • Undo/redo functionality for all editing operations
  • Local/DB mode switching for local testing and database connection workflows

👁️ Preview Tab - Live Survey Testing

  • Real-time preview of your survey as you build
  • Responsive preview modes: Desktop (widescreen) and Mobile (375px) views

📊 Responses Tab - Data Management & Analytics

  • Real-time analytics dashboard showing summaries of responses and local interactive data table
  • PostgreSQL database integration with connection pooling
  • GSSAPI encryption support with automatic fallback options
  • CSV export functionality for data analysis

Templates

We currently have 16 templates to choose from. The default template contains a minimum basic structure for a clean start. You might also try the question_type template for a showcase of all question types, or try some advanced features with conditional_display, conditional_navigation, etc. For a full list of templates, go to the surveydown-dev GitHub site and search for any repo starting with “template_”.

Database Configuration

The studio supports flexible database connection modes:

# Auto mode (recommended) - tries GSSAPI first, falls back if needed
launch()

# Prefer mode - uses GSSAPI if available, plain connection if not  
launch(gssencmode = "prefer")

# Disable mode - forces plain connection (useful for VPN environments)
launch(gssencmode = "disable")