All Projects → RinteRface → Shinymobile

RinteRface / Shinymobile

shiny API for Framework7 (IOS/android)

Programming Languages

r
7636 projects

Projects that are alternatives of or similar to Shinymobile

Suicrux
🚀 Ultimate universal starter with lazy-loading, SSR and i18n. [not maintained]
Stars: ✭ 958 (+294.24%)
Mutual labels:  template, pwa
React Firebase Admin
React ⚛️ starter kit with Firebase 🔥 and Bulma for setting up an admin dashboard - Highly scalable, PWA, Serverless
Stars: ✭ 232 (-4.53%)
Mutual labels:  template, pwa
Svelte Pwa
Svelte Progresssive Web App (PWA) starter template
Stars: ✭ 87 (-64.2%)
Mutual labels:  template, pwa
Create React App Material Typescript Redux
A ready to use boilerplate for starting big react projects
Stars: ✭ 257 (+5.76%)
Mutual labels:  template, pwa
Bento Starter
🍱 Full-Stack solution to quickly build PWA applications with Vue.js and Firebase
Stars: ✭ 1,519 (+525.1%)
Mutual labels:  template, pwa
Productivity Frontend
Productivity Application - Kanban Style Productivity Management Application with Customizable Boards, Lists and Cards to Make You More Productive.
Stars: ✭ 234 (-3.7%)
Mutual labels:  pwa
Generate
A new command line tool and developer framework for scaffolding out GitHub projects. Generate offers the robustness and configurability of Yeoman, the expressiveness and simplicity of Slush, and more powerful flow control and composability than either.
Stars: ✭ 238 (-2.06%)
Mutual labels:  template
Projectmaker
A Sublime Text 2/3 plugin to allow creating any kind of project from your own custom templates
Stars: ✭ 233 (-4.12%)
Mutual labels:  template
Electron React Webpack
Electron + React 16 + Webpack 4 template with ES6, JSX and hot reloading.
Stars: ✭ 231 (-4.94%)
Mutual labels:  template
Moko Template
Template project of a Mobile (Android & iOS) Kotlin MultiPlatform project with the MOKO libraries and modularized architecture
Stars: ✭ 240 (-1.23%)
Mutual labels:  template
Typescript Starter
Quickly create and configure a new library or Node.js project
Stars: ✭ 2,953 (+1115.23%)
Mutual labels:  template
Dot Github
.github directory generator
Stars: ✭ 237 (-2.47%)
Mutual labels:  template
Mvparms Module Template
🛠 一键搭建 MVPArms 的官方架构, 让新手一秒即可开启 MVPArms 的世界, 免于项目繁琐配置的烦恼
Stars: ✭ 234 (-3.7%)
Mutual labels:  template
Extension Create
Create modern cross-browser extensions with no build configuration.
Stars: ✭ 167 (-31.28%)
Mutual labels:  template
Sodajs
Light weight but powerful template engine for JavaScript
Stars: ✭ 240 (-1.23%)
Mutual labels:  template
Breaklock
Web game, hybrid of Mastermind and the Android pattern lock
Stars: ✭ 232 (-4.53%)
Mutual labels:  pwa
Scaffdog
🐶 scaffdog is Markdown driven scaffolding tool.
Stars: ✭ 237 (-2.47%)
Mutual labels:  template
Wemake Python Package
Bleeding edge cookiecutter template to create new python packages
Stars: ✭ 235 (-3.29%)
Mutual labels:  template
Angular11 App
Angular 11 ,Bootstrap 5, Node.js, Express.js, CRUD REST API, PWA, SSR, SEO, Angular Universal, Lazy Loading, PostgreSQL, MYSQL
Stars: ✭ 233 (-4.12%)
Mutual labels:  pwa
Github Issue Templates
🔣 A collection of GitHub issue and pull request templates
Stars: ✭ 3,074 (+1165.02%)
Mutual labels:  template

shinyMobile

Develop outstanding {shiny} apps for iOS, Android, desktop as well as beautiful {shiny} gadgets. {shinyMobile} is built on top of the latest Framework7 template.

R build status lifecycle CRAN status

Installation

# from CRAN
install.packages("shinyMobile")
# for the latest version
devtools::install_github("RinteRface/shinyMobile")

Cheatsheet

Demo

A running demo is available here : https://dgranjon.shinyapps.io/miniUI2Demo/. Left side: android demo, right side: iOS demo.

Progressive Web App (PWA)

Configuration

{shinyMobile} is PWA capable, meaning that it can be displayed full screen on many mobile devices. This feature is automatically handled by f7Page() if allowPWA is TRUE (it leverages the Google PWA compatibility script).

To setup the necessary assets for your PWA, you may run:

remotes::install_github("RinteRface/charpente")
library(charpente)
set_pwa(APP_PATH, ...)

where APP_PATH is the app location. It only works if the app is inside a package like with {golem}. Alternatively, you may copy the www folder of the gallery app, which provides:

  • A valid service worker.
  • A valid offline.html fallback.
  • A valid web manifest. Don't forget to change the start_url property to the path of your app. For instance, the following app hosted at https://dgranjon.shinyapps.io/rstudio-global-2021-calendar/, has the /rstudio-global-2021-calendar/ path.
  • A valid set of icons. There are tools such as appsco and app-manifest, to create those custom icons and splash screens, if you need to.

It is really easier with {charpente}, the reason why we strongly recommend to develop your app inside a package.

Add the PWA to your desktop Apps

Copy the url of your app in your mobile web browser (iOS: Safari and Andoid: Chrome). In this example this is: https://dgranjon.shinyapps.io/miniUI2Demo/. It opens like a classic web app, with top and bottom ugly navigation bars.

  • Select the share button located in the bottom bar of your Iphone/Ipad. For Android, you may do something similar. Importantly, Chrome for iOS does not support this feature, that's why I recommend using Safari.
  • Click on "Add to Home Screen"
  • Choose a relevant name and click on OK.
  • The app will be added to your IOS/Android Apps. In case you want custom icons, replace the content of the www folder with your own.

Limitations

It is actually quite complex to guarantee that all mobile platforms are supported. The PWA compatibility script will work in most of the case. If not, please open an issue here, to help improving it!

Acknowledgement

A special thanks to Vladimir Kharlampidi for creating this amazing framework7 HTML template.

Code of Conduct

Please note that the shinyMobile project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].