CERN-Solid apps deployment
Project name
The CERN-Solid collaboration continuity with an in-house production-quality Solid Server and CERN applications integrationProject description
Solid is the project initiated and chaired by Sir Tim Berners-Lee, the inventor of the Web. It aims at developing tools that give the users sovereignty over their own data, the storage of and access control to those data.
In the 2020-2022 period a lot of work was done in the CERN-Solid collaboration, beneficial to both parties. The CERN requirements for production quality Solid applications (especially the Solid Server) are regularly presented and defended. Important, useful and welcome feedback was contributed to various Solid technical groups.
This project is about contributing, with technical tools, towards the adoption of Solid at CERN. Also about contributing to Solid with server and client software quality that will make Solid attractive, popular and will re-connect the name of CERN with the future of the Web.
The CERN use case is the integration of Solid principles with important CERN Open Source applications, with CERN Authorisation/Authentication tools, especially the creation of long-overdue user profiles hosted in Solid pods. An in-house installed, configured and operated Solid server will address all Data Protection issues and will offer full control over the storage of CERN users' pod data. The CERN users' EDH, HRT, LANDB, MERIT, dosimetry information, contributions to Indico events, personalised searches, notifications and more could (pending evaluation) be integrated to the users’ pods.
The student will:
- Ensure stable operation of a CERN (currently test) instance of the Community Solid Server (CSS).
- Contribute technically to the required quality of CSS for it to be endorsed by the community.
- Integrate CSS with the CERN new Single Sign-On (SSO). Use the work done by CSS developers in this direction.
- Study performance and scaling issues, including user interviews.
- Conclude, justify and document that CSS is indeed the best Solid server choice for CERN. Comment/review the Policy document, if needed.
- Make proposals on the necessary documentation and/or videos to promote Solid pod adoption by the CERN community.
- Design an attractive pod User Interface (UI), compliant with the Solid specifications and reserved fields.
- Analyse the potential use cases for Solid at CERN, document how (technically) and at what cost existing CERN applications, e.g. EDH, HRT, Indico data, could be adapted to use Solid pods as backend storage.
- Create pods for all CERN users and inject.
- Interview pod owners on their criteria for embrassing Solid.
In summary:
Personal data of CERN members are scattered today across multiple independent internal applications, which hold salary, leave, merit advancement information (work objectives, achievements, functions, roles, development, training), dosimetry information for radiation protection, history of presentations and much more info related to the person's history at CERN. All this information could be accessed, with consent, from the person's pod. This is the use case to evaluate in this project.
Required skills
React, python, javascript, components.js programming. Experience with github, gitlab, opencast and OpenShift/OKD4. Collaboration skills in large international communities. Good presentation and communication skills.Learning experience
Solid is the future of the Web. In this development there will be opportunities for technical exchages with the inventor of the Web Sir Tim Berners-Lee and Solid collaborators, who are very enthusiastic.The CERN community is complex and very interesting to work with. This project can be an asset for a young developer.
Project duration
1-2 yearsProject area
Data Management Data Analytics LearningContact for further details
Maria DimouReferences
- Solid
- All notes can be reached via http://solid.cern.ch - please consult the material attached to each event.
- Announcements are made in https://gitter.im/cern-solid/community.
- See HERE a policy document for an in-house Solid server operation.
- Most recent project on Community Solid Server (CSS) evaluation https://it-student-projects.web.cern.ch/projects/cern-solid-server-hosting.
- The CERN test CSS instance https://css.app.cern.ch/
- The very first project - a Proof of Concept (PoC) to understand the Solid project ecosystem (presentation, video, transcript, thesis HERE).
- Componentsjs documentation https://componentsjs.readthedocs.io/en/latest/
- Penny UI ( https://penny.vincenttunru.com ) by Vincent Tunru.
- Maria's pod https://dimou.solidcommunity.net/ also viewed via Penny https://penny.vincenttunru.com/explore/?url=https%3A%2F%2Fdimou.solidcommunity.net%2F
- CSS discussion forum https://gitter.im/solid/community-server
- CERN SSO
- Documentation https://auth.docs.cern.ch/
- https://gitlab.cern.ch/authzsvc/docs/keycloak-sso-examples
- https://auth.docs.cern.ch/applications/application-configuration/
- A recent BSc thesis including SSO integration of a web application https://cds.cern.ch/record/2724152/files/CERN-THESIS-2020-068.pdf
CERN group
IT-CDAStatus
Cancelled Submitted by Maria Dimou on Friday, February 25, 2022 - 10:25.Maria Dimou