{glif}: Put Light on the Map - Shiny Contest Submission

{glif}: Put Light on the Map

Authors: Grzegorz Smoliński

Abstract: {glif} is an R package and a mobile, PWA compatible Shiny + shinyMobile app to create maps, groups (layers) and put markers to be visible by others belonging to the same map and groups: create or join to a map, create new or join to existing layers. Finally, create your own and see markers others added to the map. A simple-, one-functionality app to add visibility.

{glif} was developed to be used on mobile devices only (experience on bigger screens will be worse).

Full Description: {glif} app, while possible to use for any map- and markers-related activities, was inspired by the protests taking place in Poland in 2020/2021 during which police and counter-activists used violence against demonstrators. The main goal was to make as much as possible publicly visible for the members of the map, thus anyone can join to any group (layer) and see markers that were put by the members of these layers as well as create its own layers. However, to be able to edit map (put markers), it is neccessary to know edit code. By default, only creator of map or layer knows edit code, but it is possible to share it with others.

{glif} as a word comes from Polish and means form of window frame used in medieval architecture to lightning of the interior.

image

Functionality - Map
App consist of two tabs. On first is a map (user can join to specific map knowing map name or create its own map), location button and - if user belongs to any layer for which has edit privileges - button to set marker on the place where user is currently. Location button works as a refresh button as well - app do not automatically refresh user’s position or marker (the only exception is when user sets the marker - then all markers and position is refreshed).

image

Functionality - Layers
On the second tab are layers. These are groups created by other users. User who created group has edit privileges - this makes possible to put markers on the map which will be visible to all users who joined or will join to this group. Any user can have edit privileges for any group if is able to provide edit code. Visible markers are from all groups to which user belongs and if user puts the marker, it will be put for all groups for which user has edit privileges.

image

Running app from source code
It has to be noted that repo on Github doesn't contain config file with database information. {glif} expects PostgreSQL (can be changed to other driver with code adjustment) with fixed schema. Details about this can be found in directory ./inst/database/ where is script to create tables as well as YAML config file. Deployed version of the app works with the Supabase.

I would like to thank Oleksandra Balytska for preparing logo.


Shiny app: glif
Repo: GitHub - gsmolinski/glif: Put Light on the Map

Thumbnail:

Full image:
image