Welcome to the GIScience 2023 full day workshop on Geospatial Web Apps in Python and R!#
Learning Objectives#
By the end of this course, you will be able to:
Understand why web apps are useful for communicating your results
Describe the structure of a basic web application
Understand the basics of user interface and experience design
Use Python packages to create interactive applications
Use R Shiny to create interactive applications
Use popular (free) web hosting services for hosting your applications
What you need#
Python and/or R skills
Understanding of Git (we can work on this!)
Course Structure#
Overview of web applications, why are they useful, and some examples
Setting up - downloading all the files you need, troubleshooting any problems
Python - Basics of interaction with Jupyter Notebooks
Python - Using widgets to design interfaces
UI/UX for absolute beginners
Python - Mapping with ipyleaflet
Python - Notebooks to Apps with Voila
Python - Hosting and sharing Voila with Binder
Overview of other web-hosting services
R - Overview of Shiny
R - Interactivity and mapping in Shiny
R - Sharing your Shiny Applications
Overview of Web Apps#
Why might you want to use one?#
The term ‘Web application’ is a bit vague, it can refer to things as diverse as ArcGis Online and Twitter (X). The important thing that makes web apps unique and useful compared to a more traditional website is interactivity, the user can use an interface to execute code and see the results of their inputs.
Web apps can be a really powerful way of sharing your results,
Geospatial and mapping web apps are powerful and popular ways to communicate the results of your research, and can allow the public to engage directly with your work. At their most basic level, they can let a user view and explore data you have generated, and at a more advanced level let users generate data themselves using models and tools you have developed. Much geospatial research is directly relevant to people’s everyday lives, and is politically important, so letting people use and share your research can help it have impact outside of academia or industry.
If you want inspiration, here are some really good examples of scientific web apps: