open-index/open-npm huggingface dataset:
npm package: @project-sunbird/sunbird-questionset-editor
Description: Question Set Editor library components is powered by angular. This editor is primarily designed to be used in the sunbirdEd portal and web portal to drive reusability, maintainability hence reducing the redundant development effort significantly. And it c
Latest version: 8.0.6


# :diamond_shape_with_a_dot_inside: QuestionSet Editor for Sunbird!
Question Set Editor library components is powered by angular. This editor is primarily designed to be used in the sunbirdEd portal and web portal to drive reusability, maintainability hence reducing the redundant development effort significantly. And it can be integrated with any platform irrespective of the platforms and the frontend frameworks. It is exported not only as an angular library but also as a web component aims to make it easy to share, discover, and reuse web components. It creates a framework agnostic way of composing and re-purposing code.

# :bookmark_tabs: Getting started with integration steps
The Question Set Editor can be integrated as a web component and also as an angular library in angular application projects and it can also be integrated into vanilla javascript and angular framework as a web component.

- [Using it as Web component](https://inquiry.sunbird.org/use/developer-installation/question-set-editor/installation#use-as-web-components)
- [Using it as Angular library](https://inquiry.sunbird.org/use/developer-installation/question-set-editor/installation#use-as-angular-library-in-angular-app)

# :bookmark_tabs: Editor Contribution and Configuration Guide

[Contribution guidelines for this project](https://inquiry.sunbird.org/use/developer-installation/question-set-editor/installation#questionset-editor-contribution-guide)

[Configuration guidelines for this project](https://inquiry.sunbird.org/learn/product-and-developer-guide/question-and-question-set-editor/configuration)
npm package: @project-sunbird/sunbird-quml-player
Description: The QuML player library components are powered by Angular. This player is primarily designed to be used on Sunbird consumption platforms (mobile app, web portal, offline desktop app) to drive reusability and maintainability, hence reducing the redundant d
Latest version: 8.2.0

# :diamond_shape_with_a_dot_inside: The QuML player for the Sunbird!
The QuML player library components are powered by Angular. This player is primarily designed to be used on Sunbird consumption platforms (mobile app, web portal, offline desktop app) to drive reusability and maintainability, hence reducing the redundant development effort significantly, and it can be integrated with any platform irrespective of the platforms and the frontend frameworks. It is exported not only as an angular library but also as a web component aims to make it easy to share, discover, and reuse web components. It creates a framework agnostic way of composing and repurposing code. 

# :bookmark_tabs: Getting started with integration steps
The QuML player can be integrated as a web component and also as an angular library in angular application projects and it can also be integrated into any mobile framework as a web component.

- [Using it as Web component](https://inquiry.sunbird.org/use/developer-installation/question-set-player/installation#use-as-web-components)
- [Using it as Angular library](https://inquiry.sunbird.org/use/developer-installation/question-set-player/installation#use-as-angular-library-in-angular-app)

# :bookmark_tabs: Contribution Guide  
See the [official contributors' guide](https://inquiry.sunbird.org/use/developer-installation/question-set-player/installation#quml-player-contribution-guide) to learn how to contribute your code to the project.
npm package: @project-sunbird/sunbird-quml-player-v8
Description: Player for consuming QuML questions & question sets
Latest version: 4.0.19

# Sunbird Quml Player
Player for consuming QuML questions & question sets

## Prerequisites:

Node js - v14

* Use nvm. [Installation instructions](https://github.com/nvm-sh/nvm#installing-and-updating)
* Install and use Node 14: 
```
cd $PATH_TO_REPO
nvm install 14
nvm use 14
```

## Usage


`npm i @project-sunbird/sunbird-quml-player-v8`


Add the module to the your player root module 

`import  { QumlLibraryModule, QuestionCursor } from '@project-sunbird/sunbird-quml-player-v8';`

```javascript
@NgModule({
  ...
  imports: [
    ...,
    QumlLibraryModule
  ],
  providers: [{
    provide: QuestionCursor,
    useClass: QuestionCursorImplementationService // This service class should be implemented by the consumer of the player to provide questions as async manner to make the player experience smooth when there are lot of questions in a set check the sample implementation in demo project in this repo
  }]
  ....
})
```

add the assets, scripts and styles in angular.json file

```javascript
....
 "assets": [
            ....
              {
                "glob": "**/*",
                "input": "node_modules/@project-sunbird/sunbird-quml-player-v8/lib/assets/",
                "output": "/assets/"
              }
            ],
"styles": [
    ...
    "./node_modules/@project-sunbird/sb-styles/assets/_styles.scss",
    "./quml-carousel.css",
    "./node_modules/katex/dist/katex.min.css"
    ...
],
"scripts": [
    "node_modules/@project-sunbird/telemetry-sdk/index.js",
    "node_modules/katex/dist/katex.min.js",
    ....
]
},
...

```

add peer dependecies of the player as dependecies in your project
 

add the component selector in your component like below

```html

    <quml-player    [QumlPlayerConfig]="QumlPlayerConfig" 
                    (playerEvent)="getPlayerEvents($event)" 
                    (telemetryEvent)="getTelemetryEvents($event)">
    </quml-player>

```

Still facing issues please refer the demo project in this repo as example

## Development

  check out this repo with latest release version branch

  cd to {repo_path} in terminal

  run  `sh setup.sh`

  above script installs the dependecies and link the epub player library project to demo app

  if you do any changes in library project run to get latest changes in demo app

  `npm run build-lib-link`

  once above command completed run `npm run start` which will run the player in demo app at http://localhost:4200



## References

https://project-sunbird.atlassian.net/wiki/spaces/CO/pages/1572536374/Object+Types
https://project-sunbird.atlassian.net/wiki/spaces/CO/pages/1572274218/Question+Set+Definition
https://project-sunbird.atlassian.net/wiki/spaces/CO/pages/1629356033/Question+Definition
https://project-sunbird.atlassian.net/wiki/spaces/CO/pages/1688404028/QuML+Question+Spec