• Stars
    star
    489
  • Rank 89,990 (Top 2 %)
  • Language
    R
  • License
    Other
  • Created almost 8 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Shiny support for powerful Fomantic UI library.

shiny.semantic semantic.dashboard logo

Fomantic (Semantic) UI wrapper for Shiny.

R-CMD-check codecov cranlogs total

With this library it is easy to wrap Shiny with Fomantic UI (previously Semantic). Add a few simple lines of code to give your UI a fresh, modern and highly interactive look.

  • shiny

shiny

library(shiny)
ui <- fluidPage(
  div(
    div(
      a("Link"),
      p("Lorem ipsum, lorem ipsum, lorem ipsum"),
      actionButton("button", "Click")
    )
  )
)
  • shiny.semantic

semantic

library(shiny.semantic)
ui <- semanticPage(
  div(class = "ui raised segment",
    div(
      a(class="ui green ribbon label", "Link"),
      p("Lorem ipsum, lorem ipsum, lorem ipsum"),
      actionButton("button", "Click")
    )
  )
)

Shiny.semantic demos

Case studies

๐Ÿ”— Churn analytics ๐Ÿ”— Fraud detection

Before and after

We show how shiny.semantic can be used to style an app and change itโ€™s look.

๐Ÿ”— BEFORE Utah Division of Water Quality (DWQ) ๐Ÿ”— AFTER Utah Division of Water Quality (DWQ)

Component examples

Components live demo

See more examples with code in the examples folder:

How to install?

You can install a stable shiny.semantic release from CRAN repository:

install.packages("shiny.semantic")

and the latest version with remotes:

remotes::install_github("Appsilon/shiny.semantic@develop")

(master branch contains the stable version. Use develop branch for latest features)

To install previous versions you can run:

remotes::install_github("Appsilon/shiny.semantic", ref = "0.1.0")

How to use it?

Firstly, you will have to invoke shinyUI() with semanticPage() instead of standard Shiny UI definitions like e.g.ย bootstrapPage(). From now on, all components can be annotated with Fomantic UI specific CSS classes and also you will be able to use shiny.semantic components.

Basic example for rendering a simple button. will look like this:

library(shiny)
library(shiny.semantic)
ui <- semanticPage(
      title = "My page",
      div(class = "ui button", icon("user"),  "Icon button")
    )
server <- function(input, output) {}
shinyApp(ui, server)

For better understanding itโ€™s good to check Fomantic UI documentation.

Note #1

At the moment you have to pass page title in semanticPage()

semanticPage(title = "Your page title", ...)

Note #2

The shiny package works with Bootstrap library under the hood. shiny.semantic uses Fomantic UI. Sometimes using both of these libraries may cause troubles with rendering specific UI elements. That is why by default we turn off Bootstrap dependencies.

However, you can switch off suppressing bootstrap by calling semanticPage(suppress_bootstrap = FALSE, ...)

How to contribute?

We welcome contributions of all types!

We encourage typo corrections, bug reports, bug fixes and feature requests. Feedback on the clarity of the documentation and examples is especially valuable.

If you want to contribute to this project please submit a regular PR, once youโ€™re done with new feature or bug fix.

Changes in vignettes

If you modified or added a new vignette, please rebuild them with devtools::build_vignettes().

Important:

  1. Please follow the code style from out styleguide.

  2. We have a Contributor Code of Conduct. Make sure to check it and to follow it.

Troubleshooting

We used the latest versions of dependencies for this library, so please update your R environment before installation.

However, if you encounter any problems, try the following:

  1. Up-to-date R language environment
  2. Installing specific dependent libraries versions
  • shiny
install.packages("shiny", version='1.4')
  1. Some bugs may be related directly to Semantic UI. In that case please try to check issues on its repository.
  2. Some bugs may be related to Bootstrap. Please make sure you have it suppressed. Instructions are above in How to use it? section.

Future enhacements

  • create all update functions for input components to mimic shiny as close as possible
  • add some glue code in dsl.R to make using this package smoother
  • adding more semantic components
  • new version release on CRAN

Appsilon

Appsilon is a Posit (formerly RStudio) Full Service Certified Partner.
Learn more at appsilon.com.

Get in touch [email protected]

Explore the Rhinoverse - a family of R packages built around Rhino!

We are hiring!

More Repositories

1

rhino

Build high quality, enterprise-grade Shiny apps at speed
R
284
star
2

shiny.fluent

Microsoft's Fluent UI for Shiny apps
R
271
star
3

semantic.dashboard

Quick, beautiful and customizable dashboard template for Shiny based on shiny.semantic and Fomantic UI.
R
254
star
4

shiny.router

A minimalistic router for your Shiny apps.
R
253
star
5

shiny.i18n

Shiny applications internationalization made easy
R
168
star
6

data.validator

validate your data and create nice reports straight from R
HTML
147
star
7

styleguide

[DEPRECATED] Style guides at Appsilon.
100
star
8

shiny.react

Use React in Shiny applications.
JavaScript
96
star
9

shiny.collections

This project is deprecated and no longer supported. (Google Docs-like live collaboration in Shiny)
R
76
star
10

awesome-interview-questions

73
star
11

r-lambda-workflow

Runtime for running R on AWS Lambda.
Python
67
star
12

shiny.telemetry

Easy logging of users activity and session events of your Shiny App
R
65
star
13

shiny.worker

Intra-session reactivity in Shiny
R
61
star
14

shiny.info

Display simple diagnostic info of your Shiny app
R
60
star
15

shiny.blueprint

Blueprint - React-based UI toolkit for Shiny Apps
R
44
star
16

reactable.extras

Extra features for reactable package
R
38
star
17

tapyr-template

Tapyr template for PyShiny applications
Python
37
star
18

shiny.benchmark

Tools to measure performance improvements in shiny apps
R
31
star
19

mbaza

Save 99% of Your Time Classifying Camera-Trap Footage. Completely Free.
TypeScript
30
star
20

webr.bundle

Bundle Shiny Applications for serving with WebR.
Rust
27
star
21

rhino-showcase

An example app built with Rhino to showcase its features
R
27
star
22

shiny.emptystate

Empty state components for Shiny
R
26
star
23

rhino-masterclass

R
23
star
24

shiny.tictoc

Measuring shiny performance in the browser.
JavaScript
21
star
25

fastai-in-r

How to use Fast.ai from R - eRum 2020 presentation code
HTML
20
star
26

shiny.gosling

R Shiny wrapper for Gosling.js - Grammar-based Toolkit for Scalable and Interactive Genomics Data Visualization
R
17
star
27

shiny.molstar

R Shiny wrapper for Mol* (/'molstar/) - A visualization toolkit of large-scale molecular data
R
17
star
28

shiny.semantic-hackathon-2020

Appsilon shiny.semantic hackathon 2020
R
16
star
29

experimental-plumber-example

R
15
star
30

datascience-python

Introduction to Data Science in Python by Appsilon
HTML
11
star
31

community-gists

In this repository, you will find all the code from our blog posts, social posts, videos and so on.
R
11
star
32

r2d3

R domain specific language for D3.js
CoffeeScript
10
star
33

py_shiny_semantic

Semantic UI made available in Shiny-for-Python
Python
10
star
34

rhinoverse.dev

The landing page for Rhinoverse: a collection of open-source R packages for enterprise Shiny apps.
JavaScript
10
star
35

data.validator-shiny.fluent-report

Proof of concept R/Shiny app built using shiny.fluent components. App built for RStudio Shiny Contest 2021
R
9
star
36

quake_explorer_app

Application for shiny.fluent + imola blog post. The app let the user explore the occurrence of earthquakes.
R
8
star
37

shiny.users.demo

8
star
38

box.linters

lintr-compatible linters for box modules in R
R
8
star
39

eRum2020

7
star
40

experimental-fda-submission-4-podman

Dockerfile
7
star
41

natural_language_queries

Example Shiny implementation of natural language queries from shinyconf-2023
R
7
star
42

rhino-fda-pilot

R
7
star
43

LogAnalyzer

A LogAnalyzer app for checking logs in Posit Connect
R
6
star
44

ansible-rstudio-workbench

Set up (the latest version of) RStudio Workbench in Debian-like systems
Jinja
6
star
45

respiratory_disease_pyshiny

PythonShiny clone of respiratory_disease_app_sprint
Python
5
star
46

rhino-workshop

Rhino Workshop App (2022-05-13)
R
5
star
47

serengeti_try_it_yourself

Try our model on your own images - check if it can spot any of the 53 species from Serengeti in any of your favourite photos
Jupyter Notebook
5
star
48

gabon_wildlife_training

Jupyter Notebook
4
star
49

shiny.layouts

Powerful layouts for your Shiny app: CSS grid, sidebar layout, vertical layout and more!
R
4
star
50

covid-hackathon

CoronaRank: modeling to assess the likelihood of coronavirus exposure
R
4
star
51

ci.example

Sample R package project with CI configured using CircleCI.
R
4
star
52

satrdays-2019-workshop

Materials for SatRday shiny workshop
R
4
star
53

user2017

Presentations from useR 2017
4
star
54

highlighter

htmlwidgets wrapper for highlight.js
CSS
4
star
55

ansible-role-template

Jinja
3
star
56

useR-2022-shiny-tutorial

HTML
3
star
57

readme_rmd_template

README.Rmd template for R packages.
CSS
3
star
58

testing-workshop

Repository created for the hands-on Appsilon workshops about adding tests to the application. It is based on {rhino} and Destination Overview template.
R
3
star
59

verified.installation

R package that helps installing dependencies in Docker images
R
3
star
60

ansible-rstudio-package-manager

Jinja
3
star
61

auth0api

R package for auth0
R
3
star
62

readmebuilder

R
2
star
63

crossfilter-demo

Dynamic filtering in Shiny dashboard - basic example.
R
2
star
64

weighted-picker-input

JavaScript
2
star
65

persistent-data-storage-sqlite

PoC showcasing persistent data and app-state storage
R
2
star
66

latin-r-2023

R
2
star
67

NLPShiny

Jupyter Notebook
2
star
68

ansible-r

2
star
69

dane.gov.pl

Repozytorium ze skryptami walidacyjnymi dla danych z portalu https://dane.gov.pl
R
2
star
70

energy-management-shiny-fluent-app

R
2
star
71

.github

2
star
72

hack4env

Jupyter Notebook
1
star
73

presentations

HTML
1
star
74

shiny-conf-globe

Data visualization of ShinyConf 2023 participants
HTML
1
star
75

shiny-papers-pilot

First implementation of a shiny paper
R
1
star
76

website-cdn

HTML
1
star
77

ansible-rstudio-connect

Ansible role for setting up RStudio/Posit Connect
Jinja
1
star
78

dynamic-shiny-modules

R
1
star
79

copepods-lipid-content

Jupyter Notebook
1
star
80

whyR2017

Presentations from Why R conference
1
star
81

Hexsticker

R
1
star
82

shinynlq

R
1
star
83

terraform-module-template

HCL
1
star
84

shiny-for-python-drawflow

CSS
1
star
85

modulesExtendeR

Wrapper around klmr/modules to support relative paths.
R
1
star
86

vaccines-dashboard

Demo for the shiny.blueprint package
R
1
star
87

ansible-mount-efs

Jinja
1
star
88

erum2018

Materials from Taking inspirations from proven frontend frameworks to add to Shiny with 6 new packages
1
star
89

terraform-aws-rstudio-workbench-example

HCL
1
star
90

py_shiny_semantic_examples

Demo applications using Shiny for Python with Shiny Semantic
Python
1
star
91

cypress-masterclass

1
star
92

example-cypress-shiny-ci

JavaScript
1
star
93

example-cypress-ci

JavaScript
1
star
94

TicTacJoe

This repo holds an app with TicTacJoe - a reinforcement learning example, in the game of Tic Tac Toe
HTML
1
star
95

semantic.assets

Assets for shiny.semantic
CSS
1
star
96

saving-ram-with-arrow

HTML
1
star