{"id":21065654,"url":"https://github.com/adaptlearning/adapt-contrib-randomise","last_synced_at":"2025-09-08T07:33:06.676Z","repository":{"id":82802882,"uuid":"491866212","full_name":"adaptlearning/adapt-contrib-randomise","owner":"adaptlearning","description":"An extension to randomise the children of the model to which it is attached","archived":false,"fork":false,"pushed_at":"2025-03-04T09:45:38.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-14T01:47:35.880Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adaptlearning.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-13T11:11:11.000Z","updated_at":"2025-03-04T09:45:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"9b064bce-89e6-4aa6-b765-1b0844c64838","html_url":"https://github.com/adaptlearning/adapt-contrib-randomise","commit_stats":null,"previous_names":["adaptlearning/adapt-contrib-randomise"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/adaptlearning/adapt-contrib-randomise","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adaptlearning%2Fadapt-contrib-randomise","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adaptlearning%2Fadapt-contrib-randomise/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adaptlearning%2Fadapt-contrib-randomise/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adaptlearning%2Fadapt-contrib-randomise/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adaptlearning","download_url":"https://codeload.github.com/adaptlearning/adapt-contrib-randomise/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adaptlearning%2Fadapt-contrib-randomise/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274152234,"owners_count":25231288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-19T17:55:58.672Z","updated_at":"2025-09-08T07:33:06.647Z","avatar_url":"https://github.com/adaptlearning.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# adapt-contrib-randomise\n\nAn extension to randomise the children of the model to which it is attached.\n\nMost commonly used with an [assessment](https://github.com/adaptlearning/adapt-contrib-scoringAssessment) to pluck a defined number of questions and/or randomise the question order, but could also be used to display different content within a page for each visit. Outside of an assessment, consideration should be made regarding the user journey and completion requirements for any content which is randomised.\n\nIf the config or associated child models are changed in a way which affects randomisation, the parent model is reset as the content will be refreshed and needs to be retaken.\n\n## Attributes\n\nThe attributes listed below can be used in *articles.json* and *blocks.json*, and are properly formatted as JSON in [*example.json*](https://github.com/adaptlearning/adapt-contrib-randomise/blob/master/example.json).\n\n**\\_isEnabled** (boolean): Determines whether this model should randomise the order of it's child models. The default is `false`.\n\n**\\_pluckCount** (number): Specifies the number of children to include. Negative counts will remove that number from the total. Set to `0` to display all children. The default is `0`.\n\n**\\_shouldRefreshOnRevisit** (boolean): Determines whether the included models are refreshed when a user revisits the page. The default is `false`.\n\n## Limitations\n\nNot compatible with content using [branching](https://github.com/adaptlearning/adapt-contrib-branching) as branching models are dynamically rendered.\n\n`_shouldRefreshOnRevisit` should not be enabled for content using [trickle](https://github.com/adaptlearning/adapt-contrib-trickle) as the execution order can result in the first trickled model being rendered further down the page, preventing scrolling.\n\nRestricted to articles as the parent model due to the use of `_trackingId` (only available for blocks and components) when saving the child models used for restoration across sessions. If not saving state for restoration, randomisation could technically be assigned to other parent-child model relationships.\n\n----------------------------\n**Version number:** 1.0.0\u003cbr\u003e\n**Framework versions:** \u003e=5.28.8\u003cbr\u003e\n**Author / maintainer:** Adapt Core Team with [contributors](https://github.com/adaptlearning/adapt-contrib-randomise/graphs/contributors)\u003cbr\u003e\n**Plugin dependenies:** [adapt-contrib-modifiers](https://github.com/adaptlearning/adapt-contrib-modifiers): \"\u003e=1.0.0\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadaptlearning%2Fadapt-contrib-randomise","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadaptlearning%2Fadapt-contrib-randomise","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadaptlearning%2Fadapt-contrib-randomise/lists"}