diff --git a/demo/GlobalPatterns.RDS b/demo/GlobalPatterns.RDS
new file mode 100644
index 0000000000000000000000000000000000000000..8b56d995b3742265e9fc5b58a8b2219b89b37166
Binary files /dev/null and b/demo/GlobalPatterns.RDS differ
diff --git a/demo/demo.RData b/demo/demo.RData
deleted file mode 100644
index 950b79ed96c2747ca04c97e28a48af224ed1417b..0000000000000000000000000000000000000000
Binary files a/demo/demo.RData and /dev/null differ
diff --git a/demo/food.RDS b/demo/food.RDS
new file mode 100644
index 0000000000000000000000000000000000000000..73f0cb2f4fac6a09958216b1d0c48fb5d6e341df
Binary files /dev/null and b/demo/food.RDS differ
diff --git a/demo/make-demo.R b/demo/make-demo.R
index c5c6da86ecc0272d36152c1fcfc77e29a7b9ddf8..2432f5a9fe4c5e027f4a505cc7f143577456bb33 100644
--- a/demo/make-demo.R
+++ b/demo/make-demo.R
@@ -4,55 +4,57 @@ data("GlobalPatterns")
 
 food <-
   import_biom(
-    BIOMfilename = "chaillou.biom",
-    treefilename = "chaillou.nwk",
+    BIOMfilename = "demo/chaillou.biom",
+    treefilename = "demo/chaillou.nwk",
     parseFunction = parse_taxonomy_greengenes
   )
 sample_data(food) <-
-  read.table("chaillou.tsv",
+  read.table("demo/chaillou.tsv",
              header = TRUE,
              row.names = 1,
              sep = "\t")
 
-kinetic <-
-  import_biom(BIOMfilename = "mach.biom", treefilename = "mach.nwk")
-sample_data(kinetic) <-
-  read.table("mach.tsv",
-             header = TRUE,
-             row.names = 1,
-             sep = "\t")
-colnames(tax_table(kinetic)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus")
-tax_table(kinetic)[grep("unknown ", tax_table(kinetic))] <- NA
-
-ravel <-
-  import_biom(BIOMfilename = "ravel.biom")
-sample_data(ravel) <-
-  read.table("ravel.tsv",
-             header = TRUE,
-             row.names = 1,
-             sep = "\t")
-colnames(tax_table(ravel)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus", "Species")
-tax_table(ravel)[grep("unknown ", tax_table(ravel))] <- NA
-
-soil <-
-  import_biom(BIOMfilename = "morton.biom", treefilename = "morton.tree")
-sample_data(soil) <-
-  read.table("morton.csv",
-             header = TRUE,
-             row.names = 1,
-             sep = "\t")
-colnames(tax_table(soil)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus", "Species")
-tax_table(soil)[grep("unknown ", tax_table(soil))] <- NA
-
-biorare <-
-  import_biom(BIOMfilename = "biorare.biom", treefilename = "biorare.nwk")
-sample_data(biorare) <-
-  read.table("biorare.tsv", header = TRUE, row.names = 1)
-colnames(tax_table(biorare)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus", "Species")
-tax_table(biorare)[grep("unknown ", tax_table(biorare))] <- NA
-
+# kinetic <-
+#   import_biom(BIOMfilename = "mach.biom", treefilename = "mach.nwk")
+# sample_data(kinetic) <-
+#   read.table("mach.tsv",
+#              header = TRUE,
+#              row.names = 1,
+#              sep = "\t")
+# colnames(tax_table(kinetic)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus")
+# tax_table(kinetic)[grep("unknown ", tax_table(kinetic))] <- NA
+# 
+# ravel <-
+#   import_biom(BIOMfilename = "ravel.biom")
+# sample_data(ravel) <-
+#   read.table("ravel.tsv",
+#              header = TRUE,
+#              row.names = 1,
+#              sep = "\t")
+# colnames(tax_table(ravel)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus", "Species")
+# tax_table(ravel)[grep("unknown ", tax_table(ravel))] <- NA
+# 
+# soil <-
+#   import_biom(BIOMfilename = "morton.biom", treefilename = "morton.tree")
+# sample_data(soil) <-
+#   read.table("morton.csv",
+#              header = TRUE,
+#              row.names = 1,
+#              sep = "\t")
+# colnames(tax_table(soil)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus", "Species")
+# tax_table(soil)[grep("unknown ", tax_table(soil))] <- NA
+# 
+# biorare <-
+#   import_biom(BIOMfilename = "biorare.biom", treefilename = "biorare.nwk")
+# sample_data(biorare) <-
+#   read.table("biorare.tsv", header = TRUE, row.names = 1)
+# colnames(tax_table(biorare)) <- c("Kingdom", "Phylum", "Class", "Order", "Family", "Genus", "Species")
+# tax_table(biorare)[grep("unknown ", tax_table(biorare))] <- NA
+# 
 # cellulose <- import_biom(BIOMfilename = "cellulose.biom")
 # sample_data(cellulose) <- read.table("cellulose.tsv", header = TRUE, row.names = 1)
 
 # save(GlobalPatterns, food, kinetic, soil, ravel, biorare, file = "demo.RData")
-save(food, file = "demo.RData")
+
+saveRDS(food, file = "demo/food.RDS")
+saveRDS(GlobalPatterns, file = "demo/GlobalPatterns.RDS")
\ No newline at end of file
diff --git a/panels/dataInput.R b/panels/dataInput.R
index 30eb46d856f1fb938aded01ddf99401019b4ce47..aee7f1d1bbcf363bb8cbba6a79601bfd7a7c8db8 100644
--- a/panels/dataInput.R
+++ b/panels/dataInput.R
@@ -127,13 +127,7 @@ observeEvent(input$okData, {
         "demo" =
           {
             message <- as.character(input$demo)
-            ne <- new.env()
-            if (!is.null(input$demo))
-            {
-              data(GlobalPatterns)
-              load("demo/demo.RData", envir = ne)
-              get(input$demo)
-            }
+            readRDS(paste0("demo/", input$demo,".RDS"))
           },
         "input" =
           {