Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cimentadaj/demographydash

Shiny Dashboard for Demographic projections in the UN
https://github.com/cimentadaj/demographydash

Last synced: 5 days ago
JSON representation

Shiny Dashboard for Demographic projections in the UN

Awesome Lists containing this project

README

        

---
output: github_document
---

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```

# demographydash

[![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental)

This package aims to create a shiny web app to make demographic analysis available to users which are not familiar with R. The web application allows to download WPP data and make demographic projections.

## Installation

You can install the development version of demographydash from [GitHub](https://github.com/) with:

``` r
# install.packages("devtools")
devtools::install_github("cimentadaj/demographydash")
```

## How to launch the app

To launch the app locally, run:

```{r example, eval = FALSE}
library(demographydash)
run_app()
```

To launch the app through docker run this in the terminal at the root of the repository:

```{bash, eval = FALSE}
PORT=8180
docker build -t proj-app --build-arg PORT=$PORT .
docker run -p $PORT:$PORT -e PORT=$PORT -d proj-app
```

And test the app in [http://localhost:8180](http://localhost:8180).,

## Brief explanation

The app is composed of several modules. Here's a one line for each module so it's easier to understand:

```
R/
├── app_displays.R # All plots / tables in the app have a function that produces it here
├── app_forecast.R # Functions related to running the forecast
├── app_handles.R # handle_* functions control aspects of the app (navigation, customization, etc..)
├── app_show.R # show_* functions render different UI pages of the app
├── app_server.R # The server-side logic
├── app_ui.R # UI logic of the app
├── app_config.R
├── _disable_autoload.R
├── run_app.R
└── utils-pipe.R
```