GSoC/2017/StatusReports/CristianBaldi
Progressive Web App for WikiToLearn
This project will consist in designing and developing a progressive web app for WikiToLearn. New features such as offline browsing, mobile integration and a more immersive and engaging user experience will be implemented as well as creating building blocks for the development of new features in the future.
In current days it is crucial to have a quick, responsive and fully featured web interface for any kind of website, especially for content heavy one like WikiToLearn. Although at the current state the website is definitely usable and functional it could use a lot of improvements and fixes in term of design, client side performance and overall user experience. Most of these features are the one also defined by what we call progressive web apps.
Work report
Blog Posts
- Google Summer of Code at KDE - Progressive Web App for WikiToLearn
- Tools of the trade - Progressive Web App for WikiToLearn
- Progressive Web App for WikiToLearn - Updates on my GSoC project
Code
- wikitolearn-frontend repo: this repo contains the code for the Web App, documentation and build scripts
- wikitolearn-backend-for-frontend repo: this repo contains the code for the Backend for Frontend (the compatibility layer mentioned in the proposal)
Contributions to other projects
- vue-auth Contributed in solving an issue related to Server Side Rendering, fixed some documentations #1 #2, provided a working demo for Server Side Rendering. This library was planned to be used in the `wikitolearn-frontend` repo, but later replaced with `vue-keycloak` since requirements changed.
- vue-keycloak I created and am maintaining this plugin for Vue.js to allow better integration with Keycloak (Open Source Identity and Access Management). This is used in the `wikitolearn-frontend` repo.
- vue-webpack-ssr-fully-featured I created and am maintaining this template for bootstrapping Vue projects with complex requirements (SSR, i18n and more). This was used as a starting point of `wikitolearn-frontend` which has now evolved beyond this template.