{"id":27275164,"url":"https://github.com/continuous-foundation/credit-roles","last_synced_at":"2026-01-23T15:43:28.796Z","repository":{"id":65149407,"uuid":"584217889","full_name":"continuous-foundation/credit-roles","owner":"continuous-foundation","description":"A utility for validating CRT Contributor Roles (https://credit.niso.org/) in your application, building canonical URLS, and showing descriptions.","archived":false,"fork":false,"pushed_at":"2024-11-29T22:41:15.000Z","size":420,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-19T09:55:21.964Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/continuous-foundation.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":"2023-01-01T21:51:06.000Z","updated_at":"2025-03-28T21:22:07.000Z","dependencies_parsed_at":"2024-11-29T23:35:58.115Z","dependency_job_id":null,"html_url":"https://github.com/continuous-foundation/credit-roles","commit_stats":null,"previous_names":["continuous-foundation/credit-roles"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/continuous-foundation/credit-roles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/continuous-foundation%2Fcredit-roles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/continuous-foundation%2Fcredit-roles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/continuous-foundation%2Fcredit-roles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/continuous-foundation%2Fcredit-roles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/continuous-foundation","download_url":"https://codeload.github.com/continuous-foundation/credit-roles/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/continuous-foundation%2Fcredit-roles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28694832,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T14:15:13.573Z","status":"ssl_error","status_checked_at":"2026-01-23T14:09:05.534Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"2025-04-11T15:30:57.927Z","updated_at":"2026-01-23T15:43:28.770Z","avatar_url":"https://github.com/continuous-foundation.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# credit-roles\n\n[![credit-roles on npm](https://img.shields.io/npm/v/credit-roles.svg)](https://www.npmjs.com/package/credit-roles)\n[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/continuous-foundation/credit-roles/blob/main/LICENSE)\n![CI](https://github.com/continuous-foundation/credit-roles/workflows/CI/badge.svg)\n\n\u003e CRediT (Contributor Roles Taxonomy) is a high-level taxonomy, including 14 roles, that can be used to represent the roles typically played by contributors to research outputs. The roles describe each contributor’s specific contribution to the scholarly output. (https://credit.niso.org/)\n\nA utility for validating [CRT Contributor Roles](https://credit.niso.org/) in your application, building canonical URLs, and showing descriptions.\n\n```shell\nnpm install credit-roles\n```\n\nThe library has **no dependencies**, and is helpful in validating, normalizing and showing descriptions of CRediT roles.\n\n## Overview \u0026 Usage\n\n```ts\nimport { credit, CreditRole, CreditDescriptions } from 'credit-roles';\n\n// Validate that a string is a role\ncredit.validate('contributor'); // true\n\n// Handles British spelling and capitalizations\ncredit.normalize('conceptualiSation'); // \"Conceptualization\"\n\n// Handles different punctuation\ncredit.normalize('writing:  original draft'); // \"Writing – original draft\"\n\n// Show the descriptions in your application\nCreditDescriptions['Supervision']; // Oversight and leadership responsibility...\n\n// An enum for easy access to the roles\nCreditRole.WritingOriginalDraft;\n```\n\n## Included Utilities\n\n- `validate` - Validates if a string to a CRediT role if it is valid, will take URLs and unformatted strings\n- `normalize` - Normalizes a CRediT string into the canonical string (including hyphens, capitalization and punctuation)\n- `buildUrl` - Builds a URL to https://credit.niso.org, includes normalization\n- `CreditRole` - an enum of the CRediT roles\n- `CreditDescriptions` - Official descriptions of the CRediT roles by NISO\n\n## Options\n\n- `strict`: only accept normalized CRediT roles when validating or building URLs\n\n## Alias\n\nIn addition to british english, incorrect case or punctuation, there are also a number of aliases that can be used for various roles:\n\n| Alias          | Official CRediT Role       |\n| -------------- | -------------------------- |\n| writing        | Writing – original draft   |\n| editing        | Writing – review \u0026 editing |\n| review         | Writing – review \u0026 editing |\n| analysis       | Formal analysis            |\n| funding        | Funding acquisition        |\n| admin          | Project administration     |\n| administration | Project administration     |\n\n## References\n\n- https://credit.niso.org/\n- https://jats4r.org/credit-taxonomy\n\n---\n\nAs of v2.0.0 this package is [ESM only](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c).\n\n---\n\n\u003cp style=\"text-align: center; color: #aaa; padding-top: 50px\"\u003e\n  Made with love by\n  \u003ca href=\"https://continuous.foundation\" target=\"_blank\" style=\"color: #aaa\"\u003e\n    Continuous Science Foundation \u003cimg src=\"https://continuous.foundation/images/logo-small.svg\" style=\"height: 1em\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcontinuous-foundation%2Fcredit-roles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcontinuous-foundation%2Fcredit-roles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcontinuous-foundation%2Fcredit-roles/lists"}