{"_id":"@aremjolsnes/grep-sdk","_rev":"3-3d6f6fbd81eefd267cee5538b3f2a5ff","name":"@aremjolsnes/grep-sdk","dist-tags":{"latest":"0.9.10"},"versions":{"0.9.8":{"name":"@aremjolsnes/grep-sdk","version":"0.9.8","keywords":["udir","grep","lk20","kunnskapsløftet","sdk"],"author":{"name":"Are Mjølsnes"},"license":"MIT","_id":"@aremjolsnes/grep-sdk@0.9.8","maintainers":[{"name":"aremjolsnes","email":"are.mjolsnes@udir.no"}],"dist":{"shasum":"a24e3b25f7c1556360f2b101313e972423b77c03","tarball":"https://registry.npmjs.org/@aremjolsnes/grep-sdk/-/grep-sdk-0.9.8.tgz","fileCount":11,"integrity":"sha512-vjcMg1rrsS/bAc9MCMcQ6L0Z/ucK76u2yPgtimMF9uP+gZbEH6eEHa19UGbWUStVX8+W7ciNY8vAX3KTia343w==","signatures":[{"sig":"MEUCIQCWLlv8Q8smlo5uYHf/eR9XkzhzzjFB+xuSd6E9N0iCZAIgcLWooR7vH3Endn5A/57/9P45lOhAmhm+N9ELMLz7VRk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38565},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"9b3b076e808eb1e3ff8d79da81266d2f2101720a","scripts":{"build":"tsc","generate":"python3 scripts/builder.py","prepublishOnly":"npm run build"},"_npmUser":{"name":"aremjolsnes","email":"are.mjolsnes@udir.no"},"_npmVersion":"10.8.2","description":"Offisiell SDK for Grep (KL06) – databasen for Kunnskapsløftet.","directories":{},"_nodeVersion":"20.19.6","dependencies":{"axios":"^1.6.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/grep-sdk_0.9.8_1764934502711_0.40788883441603363","host":"s3://npm-registry-packages-npm-production"}},"0.9.9":{"name":"@aremjolsnes/grep-sdk","version":"0.9.9","keywords":["udir","grep","lk20","kunnskapsløftet","sdk"],"author":{"name":"Are Mjølsnes"},"license":"MIT","_id":"@aremjolsnes/grep-sdk@0.9.9","maintainers":[{"name":"aremjolsnes","email":"are.mjolsnes@udir.no"}],"dist":{"shasum":"67b4cd417186f7e7e631db99ff1d99fa7e41cb63","tarball":"https://registry.npmjs.org/@aremjolsnes/grep-sdk/-/grep-sdk-0.9.9.tgz","fileCount":11,"integrity":"sha512-5ypRgQnc8ABVGHcOi/snHJR7OXXuHBBnlIkeNbzaPFrrDhvj49aFHmko1yk07Ibww9CNySmONkwhcAV1grihJg==","signatures":[{"sig":"MEYCIQCVELrgQ9c63XrNLBTs5SsRX4jGzgbOWs4QU4dXOwiwYAIhAJyBWjKSTorbMImQmEShzONtZi+ChX2E+58OGCAv6muW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38565},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b8f8087140e3b36d48d0bc13b92ab2aac80c9011","scripts":{"build":"tsc","generate":"python3 scripts/builder.py","prepublishOnly":"npm run build"},"_npmUser":{"name":"aremjolsnes","email":"are.mjolsnes@udir.no"},"_npmVersion":"10.8.2","description":"Offisiell SDK for Grep (KL06) – databasen for Kunnskapsløftet.","directories":{},"_nodeVersion":"20.19.6","dependencies":{"axios":"^1.6.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/grep-sdk_0.9.9_1764934996888_0.8478260533839646","host":"s3://npm-registry-packages-npm-production"}},"0.9.10":{"name":"@aremjolsnes/grep-sdk","version":"0.9.10","description":"Offisiell SDK for Grep (KL06) – databasen for Kunnskapsløftet.","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepublishOnly":"npm run build","generate":"python3 scripts/builder.py"},"keywords":["udir","grep","lk20","kunnskapsløftet","sdk"],"author":{"name":"Are Mjølsnes"},"license":"MIT","devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0"},"dependencies":{"axios":"^1.6.0"},"_id":"@aremjolsnes/grep-sdk@0.9.10","gitHead":"ddff5031eebdf83669f55da816c14b2bf84f1d2c","_nodeVersion":"20.19.6","_npmVersion":"10.8.2","dist":{"integrity":"sha512-ycSgsngqQrmmYfseg/HzJHWA5uy5Md0+Q1XCYOrC4kzUDO+nMU3ldZUHEUn2EDYQb2WeECH9MHN0Jzev1E7wNg==","shasum":"483fa2d2191c03820cc246881db3a17d52d9ed48","tarball":"https://registry.npmjs.org/@aremjolsnes/grep-sdk/-/grep-sdk-0.9.10.tgz","fileCount":11,"unpackedSize":38566,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAe+G08uTtl14z3fQL1M6xKXACdegNHuC8b8Bmx8KWywAiEA1qlLYUYHRQoJF9KifmI8eLqgp0298MFXqYA/B6OTKgk="}]},"_npmUser":{"name":"aremjolsnes","email":"are.mjolsnes@udir.no"},"directories":{},"maintainers":[{"name":"aremjolsnes","email":"are.mjolsnes@udir.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/grep-sdk_0.9.10_1764935573594_0.7360841366253219"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-05T11:35:02.298Z","modified":"2025-12-05T11:52:53.956Z","0.9.8":"2025-12-05T11:35:02.888Z","0.9.9":"2025-12-05T11:43:17.097Z","0.9.10":"2025-12-05T11:52:53.741Z"},"author":{"name":"Are Mjølsnes"},"license":"MIT","keywords":["udir","grep","lk20","kunnskapsløftet","sdk"],"description":"Offisiell SDK for Grep (KL06) – databasen for Kunnskapsløftet.","maintainers":[{"name":"aremjolsnes","email":"are.mjolsnes@udir.no"}],"readme":"# @udir/grep-sdk 📚\n## Developer SDK for Grep data from the Norwegian Directorate for Education and Training (Udir).\n\n![Build Status](https://github.com/Utdanningsdirektoratet/grep-sdk/actions/workflows/release.yml/badge.svg)\n\n`grep-sdk` removes the guesswork when integrating with the Norwegian Directorate for Education and Training's Grep database (LK20 and LK06). The library provides ready-made data models, automatic code documentation (IntelliSense), and type-safe communication with the API.\n\n### Why use this? 🚀\n\nPreviously, you had to look up the [Grep Wiki](https://grepwiki.udir.no) to understand the field names in the JSON response. Now you get the answer right in your editor.\n\n-   ✅ **Full Type Safety**: We know the difference between `Kompetansemaal` and `Kjerneelement` so you avoid runtime errors.\n-   ✅ **Rich Documentation**: Definitions from the Grep ontology appear as help text when you hover over fields in the code.\n-   ✅ **Universal Support**: Handles both the Knowledge Promotion (LK20) and the Knowledge Promotion Reform (LK06) with automatic fallback.\n\n---\n\n## 📦 Installation\n\n### Node.js / TypeScript\n```Bash\nnpm install @udir/grep-sdk\n```\n\n### Python\n```Bash\npip install udir-grep\n```\n\n### .NET / C#\nAdd the project reference or install the package:\n```Bash\ndotnet add package Udir.GrepSdk\n```\n*(See [dotnet_sdk/README.md](dotnet_sdk/README.md) for details)*\n\n### Java\nrepositories {\n    maven { url = uri(\"https://maven.pkg.github.com/Utdanningsdirektoratet/grep-sdk\") }\n}\n\ndependencies {\n    implementation 'no.udir.grep:java_sdk:0.9.5'\n}\n*(See [java_sdk/README.md](java_sdk/README.md) for details)*\n\n---\n\n## 💻 Usage\n\n### TypeScript (Node.js)\nThe client automatically checks if the code belongs to LK20 or LK06.\n```TypeScript\nimport { GrepClient } from '@udir/grep-sdk';\n\nconst client = new GrepClient();\n\nasync function fetchPlan() {\n  // Fetches Mathematics (LK20)\n  const plan = await client.getLaereplan(\"MAT01-05\");\n  \n  console.log(`Title: ${plan.tittel.nob}`);\n  console.log(`Type: ${plan['grep-type']}`); // .../laereplan_lk20\n\n  // Fallback: Fetches old RLE plan (LK06)\n  const oldPlan = await client.getLaereplan(\"RLE1-02\");\n}\n```\n\n### Python\nThe SDK uses Pydantic for validation and type safety.\n```Python\nfrom udir_grep import GrepClient\n\nclient = GrepClient()\n\n# Fetches Mathematics (LK20)\nplan = client.get_laereplan(\"MAT01-05\")\n\n# Note: Field names with hyphens become underscores in Python\nprint(f\"Title: {plan.tittel['nob']}\")\nprint(f\"Type: {plan.grep_type}\")\n```\n\n### .NET / C#\n```C#\nusing Udir.GrepSdk;\n\nvar client = new GrepClient();\nvar plan = await client.GetLaereplanAsync(\"MAT01-05\");\n```\n\n### Java\n```Java\nGrepClient client = new GrepClient();\nObject plan = client.getLaereplan(\"MAT01-05\").get();\n```\n\n---\n\n## Coverage\nThe SDK provides coverage of all 44 object types in Grep, including:\n- Curricula (Læreplaner), Competence Aim Sets (Kompetansemålsett), and Competence Aims (Kompetansemål)\n- Core Elements (Kjerneelementer) and Interdisciplinary Topics (Tverrfaglige temaer)\n- Assessment Arrangements (Vurderingsordninger) and Exam Forms (Eksamensformer)\n- Education Programmes (Utdanningsprogram) and Programme Areas (Programområder)\n- Subject Codes (Fagkoder)\n\n## License\nMIT © Utdanningsdirektoratet","readmeFilename":"README.md"}