WebApps with LocalStorage and AppCache
- (LS-Local Storage) LocalStorage of the browser to store generated data, configuration and settings of the WebApp in a browser instead of storage on a remote server.
- (AC-AppCache) AppCache is used to store the WebApp locally in the browser (optional), so that the web-based applications can run offline without internet connectivity.
Main Steps in Learning Resource[edit | edit source]
- (AppLSAC Examples) exploring AppLSAC example and apply AppLSACs for your work with Wikiversity as a learaing,
- (Load, Processing, Save) identify the main operations of AppLSAC and understand the underlying concepts,
- (Create an AppLSAC) create your first AppLSAC that runs completely in your browser without Internet connectivity.
- (Remote Data Download) For an AppLSAC-0 it is allowed to download data from a remote server. In this part you will learn, how AppLSACs can be able to download data from a remote server. Of course this creates a digital footprint. Even in an AppLSAC-0 a remote download operation must be triggered by a users interaction - see also AppLSAC type.
Main Operations of AppLSACs[edit | edit source]
To be introduced to privacy friendly web-application we consider 3 main steps in this learning resource:
- (Load) Load a file into the browser environment (and not to any server for processing)
- (Save) finally save the results on the device of the user.
Graphical User Interface[edit | edit source]
Furthermore you can learn about Navigation Menus as part of Graphical User Interfaces (GUI):
- (Navigation Menu) A applications have menus from which the users can select specific features of the software. Load and Save are widely used menu items.
- (Icons for Menu) Icons are used in navigation windows. In this learning resource you will learn about handling icons in AppLSACs.
Underlying Concepts[edit | edit source]
- Types of AppLSAC
- Privacy friendly Software Design
- Open Community Approach
- JSON2Schema as AppLSAC Generator in 5min
Learning Tasks[edit | edit source]
- (Differences WebApps vs. native Applications) Application can load and save files without notice to the user. Why is it necessary, that browsers need an explicit Load and Save dialog, in which the user must create an event to save content processed in the browser (privacy)?
- (AppLSAC Limitations) Explain the limitations of WebApps (e.g. processing large files, access to sensors of the mobile device, ...) if users want no processing of data outside the browser, i.e. users do not want to grant permissions to process certain data in the cloud or on a remote server!
- (Progressive WebApps) Analyse the concept of Progressive Web Apps and identify the feature of progressive WebApps that allow Commercial Data Harvesting. Explain similarities of the approach between AppLSAC and Progressive WebApps!
- (Browser) Explain the role of browsers in general for the implementation of privacy friendly WebApps! What is your expected browser behaviour for a privacy friendly software design.
- (WebApp Stores) F-Droid is an OpenSource App repository for Android. Explain the role of a digital distribution platform for developed mobile WebApps that run in the browser with the operating system of your desktop PC or mobile device. The store allows users to browse and download WebApps.
- (Create your own AppLSAC) Learn how to create a privacy friendly "AppLSAC" software.
- (Create a AppLSAC for Renaming Images) Create your own AppLSAC for renaming image files for generation of 2D Animations.
Programming Task[edit | edit source]
- Create a WebApp that is able to perform a QR-Code scan and stores the encoded data in the QR-Code into a textarea (see InstaScan HTML5 QR Code Scanner).
- Create a WebApp that is able to detect the geolocation of the browser (see Geolocation in HTML5 on W3C.
- Discuss Pros and Cons of such APIs for AppLSAC development.
Future Changes[edit | edit source]
- Migrate all GitHub repository for Wikiversity learning resources to GitLab (2018-*).