Skip to content

Implementing SSO flow as an Independent plug-able NPM package #8666

@rajeevsathish

Description

@rajeevsathish

Project Details

What is Sunbird-Portal?

Sunbird is a next-generation scalable open-source learning solution for teachers and tutors. Built for the 21st century with state-of-the-art technology, Sunbird runs natively in cloud/mobile environments. The open-source governance of Sunbird allows a massive community of nation-builders to co-create and extend the solution in novel ways.

https://github.com/Sunbird-Ed/SunbirdEd-portal#what-is-sunbird

Features to be implemented

The feature to be implemented is to make the login configurable and plug-able item as an NPM module
specifically the SSO module in sunbird.

What exists:
In sunbird there are multiple login types
1. The user can register him/her self and post registering they can use the email or Phone number to login into the system
2. The user can register using the gmail and login into the system
3. If a user is state user then he/she can use the state login to register and login into the system

The third option is more of a DIKSHA specific use-case. So make it as a plug-able item in sunbird system.

What needs to be build

  • Implement the SSO feature in login as a plug-able NPM module and can be used by any required use-case.
  • Documentation of how to configure properties
  • Documentation of how to extend or customise the widget
  • Test cases for the widget capabilities

Learning Path

Complexity

High

Skills Required

Angular

Name of Mentors

@rajeevsathish @rajeshkumaravel

Project size

?? Weeks - TBD

Product Set Up

https://github.com/Sunbird-Ed/SunbirdEd-portal#readme

Acceptance Criteria

  • Login workflow works properly with the plugin or without the plugin

  • Once configured the SSO login will show

  • SSO login flow works with out any issue

  • Telemetry is generating for all the workflows

Milestones

  • Login Works with the existing types.
  • Configurable SSO flow

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions