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.
- (Privacy) Analyse the privacy by design pricinple and apply that on the AppLSAC concept. How can you address and improve privacy issues in general if you are using application and how are they addressed with an AppLSAC?
- (Create a Library) Some tasks appear multiple times in AppLSACs. This learning task is about creating a library for that standard task, which can be used multiple times in your own WebApps. The procedures is rolled out for a specific library as use-case and you can apply that on your own WebApps. Identifiy at first your standard tasks you want to perform with your AppLSACs by describing the similarities in all use-cases you have in mind. The similarities define the UML-structure of your new library (UML Unified Modelling Language).
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 e.g. in a navigation menu. In this learning resource you will learn about handling icons in AppLSACs. For this part of the learning resource a GitHub repository Icons4Menu was created that aggregates a small set of icons and displays them with the licence in the README.md.
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-*).