diff --git a/server.R b/server.R
index a127f626b32c69a2e43f1806c0c5c053793e1c4d..16f183b1e18355a7cca0b491c110a67df5cd93cf 100644
--- a/server.R
+++ b/server.R
@@ -213,18 +213,18 @@ shinyServer
             choices = rank_names(data16S()),
             inline = TRUE
           ),
-          dataTableOutput("tableGlom")
+          DT::dataTableOutput("tableGlom")
         )
       )
     )
   })
   
-  output$tableGlom <- renderDataTable({
+  output$tableGlom <- DT::renderDataTable(server = FALSE, {
     Glom <- tax_glom(data16S(), input$glomRank)
     taxTableGlom <- Glom %>%
       tax_table() %>%
       as.data.frame(stringsAsFactors = FALSE) %>%
-      dplyr::select(1:input$glomRank) %>%
+      dplyr::select(input$glomRank:1) %>%
       tibble::rownames_to_column()
     otuTableGlom <- Glom %>%
       otu_table() %>%
@@ -233,24 +233,8 @@ shinyServer
     joinGlom <-
       dplyr::left_join(taxTableGlom, otuTableGlom, by = "rowname") %>%
       dplyr::select(-rowname)
-    return(joinGlom)
-  },
-  options = list(
-    filter = "top",
-    dom = "lBtip",
-    pageLength = 10,
-    lengthMenu = list(c(-1, 10, 25, 50, 100), list('All', '10', '25', '50', '100')),
-    buttons = list(
-      'colvis',
-      list(
-        extend = 'collection',
-        buttons = c('copy', 'csv', 'excel', 'pdf'),
-        text = 'Download'
-      )
-    ),
-    colReorder = TRUE,
-    scrollX = TRUE
-  ))
+    beautifulTable(joinGlom)
+  })
   
   output$histUI <- renderUI({
     validate(need(data16S(), ""))