Scalda Studentenportaal

The case
Category
Social / Community
Launch date
Challenges
Multiple challenges surfaced quickly. The source of the biggest challenges was the introduction of Drupal 8 in combination with a decoupled front-end. We were tasked with collecting data from custom web services and developing a custom API to provide all the data to the frontend. Properly utilizing the great benefits brought by Drupal 8 and Angular was an exciting challenge.

A lot of Drupal 8 modules were not stable yet. We had to install/write a lot of patches to make everything work as it should. Modules like groups, samlauth, simple_oauth, paragraphs all provides small challenges. Upgrading the modules sometimes meant we had to do some rework, but in the end the important issues were fixed and a lot of the modules actually became stable (or are very close to being stable).

The external data we integrated was provided by different systems. They all had their own API’s. Together with the client we design a microservice architecture to provide a extra layer of abstraction to combine all source data outside of the Drupal system. This moved a lot of complexity and makes the system more scalable and easy to maintain.

Besides that, we adopted Angular 2 right after it became stable, we also faced the difficulties of a fast expanding and developing framework. When we started the first release of Angular 2 had just been made available (besides lots of release candidates before that). Also, the Angular-CLI tool was still in active development and tried to keep up with the development of Angular itself.

After a few months we upgraded Angular and Angular-CLI a couple of times with each time breaking changes that have seem to settled.
Community contributions
Tested a lot of patches and created a lot of issues. Some of them were (partly) fixed in this project. The list below contains all issues we created patches for within the project.

FortyTwo Admin theme - several design improvements and bugfixes

Group module - several usability fixes
https://www.drupal.org/node/2797793
https://www.drupal.org/node/2683039
https://www.drupal.org/node/2865085
https://www.drupal.org/node/2867858
https://www.drupal.org/node/2867839
https://www.drupal.org/node/2867802

Group subgroup module - adding functionality such as permission propagation -
https://www.drupal.org/node/2736233

Groupmenu module - completing the functionality for providing menu’s per group -
https://www.drupal.org/node/2716443

Samlauth module - added features for easy SAML integration
https://www.drupal.org/node/2816991
https://www.drupal.org/node/2670118
https://www.drupal.org/node/2817005
https://www.drupal.org/node/2816995
https://www.drupal.org/node/2816997

Simple oauth module - fixed issues
https://www.drupal.org/node/2858161
https://www.drupal.org/node/2821436

Media module in core - partly contributed with project time -
https://www.drupal.org/node/2831274

Viewsreference module - added option to limit results -
https://www.drupal.org/node/2860736

Paragraphs module - added fix to alter paragraph forms more easily
https://www.drupal.org/node/2868155
Name client
Scalda
Screenshot
Contact information
Name organisation
Finalist
Name contact person
Tom van Vliet
E-mail address contact person
tom.van.vliet@finalist.nl
Phone number contact person
0031624614611
E-mail address invoice
administratie@finalist.nl
I agree to the terms of submission
Aan