{"id":18962901,"url":"https://github.com/pr0pz/scene-release-parser","last_synced_at":"2025-10-15T15:03:49.953Z","repository":{"id":63621483,"uuid":"569304676","full_name":"pr0pz/scene-release-parser","owner":"pr0pz","description":"A library for parsing scene release names into human readable data.","archived":false,"fork":false,"pushed_at":"2024-06-02T16:20:39.000Z","size":194,"stargazers_count":26,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-15T21:17:14.040Z","etag":null,"topics":["parser","parser-library","predb","release","scene","scene-release","warez","warez-scripts","warezscene"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pr0pz.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.txt","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-11-22T14:27:38.000Z","updated_at":"2025-04-12T22:49:13.000Z","dependencies_parsed_at":"2024-01-12T18:11:52.718Z","dependency_job_id":"3b9d3167-3436-43d8-ac25-b964e7ea37cc","html_url":"https://github.com/pr0pz/scene-release-parser","commit_stats":{"total_commits":12,"total_committers":2,"mean_commits":6.0,"dds":"0.16666666666666663","last_synced_commit":"2f4302e4e9e2b2a2081d5de91bc8031f0c08e846"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pr0pz%2Fscene-release-parser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pr0pz%2Fscene-release-parser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pr0pz%2Fscene-release-parser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pr0pz%2Fscene-release-parser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pr0pz","download_url":"https://codeload.github.com/pr0pz/scene-release-parser/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249153953,"owners_count":21221330,"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","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":["parser","parser-library","predb","release","scene","scene-release","warez","warez-scripts","warezscene"],"created_at":"2024-11-08T14:17:05.379Z","updated_at":"2025-10-15T15:03:49.935Z","avatar_url":"https://github.com/pr0pz.png","language":"JavaScript","readme":"# __Scene Release Parser__\n\n![Made with JavaScript](https://img.shields.io/static/v1?label\u0026message=JavaScript\u0026color=f0db4f\u0026logo=javascript\u0026logoColor=323330)\n![npm package version: v1.5.1](https://img.shields.io/npm/v/release-parser?color=CC3534\u0026logo=npm)\n![Minified npm package size: 16.2 Kb](https://img.shields.io/bundlephobia/minzip/release-parser?color=CC3534\u0026logo=npm)\n\n## __A library for parsing scene release names into simpler, reusable data.__\n\n_Like it? I'd appreciate the support :)_\n\n[![Watch on Twitch](https://img.shields.io/static/v1?label=Watch%20on\u0026message=Twitch\u0026color=bf94ff\u0026logo=twitch\u0026logoColor=fff)](https://propz.de/twitch/)\n[![Sub on YouTube](https://img.shields.io/static/v1?label=Sub%20on\u0026message=YouTube\u0026color=ff0000\u0026logo=youtube\u0026logoColor=fff)](https://propz.de/youtube/)\n[![Join on Discord](https://img.shields.io/static/v1?label=Join%20on\u0026message=Discord\u0026color=7289da\u0026logo=discord\u0026logoColor=fff)](https://propz.de/discord/)\n[![Donate on Ko-Fi](https://img.shields.io/static/v1?label=Donate%20on\u0026message=Ko-Fi\u0026color=ff5f5f\u0026logo=kofi\u0026logoColor=fff)](https://propz.de/kofi/)\n\n### __Description__\n\nThis library parses scene release names and splits the data into smaller, simpler, human readable and therefore more reusable data.\n\nThe applied rules are mostly based on studying the [existing collection of Scene rules](https://scenerules.org/) and other release examples from a PreDB, since a lot of releases are not named correctly (specially older ones).\n\nThe approach was to implement an algorithm that can really parse a variety of scene releases from all decades. The main test file covers some more complex names.\n\n\n### __Instructions__\n\nI suppose you already know some JavaScript and [Node](https://nodejs.org/en/) is already installed on your computer. The next steps are:\n\n› Install the library via npm ___OR___ download the [latest release](https://github.com/pr0pz/scene-release-parser/releases/latest);\n\n```sh\n$ npm install release-parser\n```\n\n› Import the library into your project;\\\n› Use the function ReleaseParser and pass the release name and (optionally) the release section (for better type parsing);\\\n› The function will return an object with all the successfully parsed informations.\n\n__Example:__\n\n```js\nimport ReleaseParser from 'release-parser'\n\nconst release = ReleaseParser( '24.S02E02.9.00.Uhr.bis.10.00.Uhr.German.DL.TV.Dubbed.DVDRip.SVCD.READ.NFO-c0nFuSed', 'tv' )\n\n=\u003e {\n    release: '24.S02E02.9.00.Uhr.bis.10.00.Uhr.German.DL.TV.Dubbed.DVDRip.SVCD.READ.NFO-c0nFuSed',\n    title: '24',\n    titleExtra: '9 00 Uhr bis 10 00 Uhr',\n    group: 'c0nFuSed',\n    year: null,\n    date: null,\n    season: 2,\n    episode: 2,\n    disc: null,\n    flags: [ 'READNFO', 'TV Dubbed' ],\n    source: 'DVDRip',\n    format: 'SVCD',\n    resolution: null,\n    audio: null,\n    device: null,\n    os: null,\n    version: null,\n    language: { de: 'German' },\n    type: 'TV'\n}\n```\n\n\n### __CLI__\n\nYou're also able to use the script via the command line.\n\n› For that, you'll nee to install the script globally;\n```sh\n$ npm install -g release-parser\n```\n\n› Just pass the release name as first argument after calling the script with 'release-parser'.\\\n› If you get errors, try enclosing the release name in parenthesis: \"Artist--Title-(Bla)-2000-Group\". Some shells have issues with some characters (like brackets).\n\n__Example:__\n```sh\n$ release-parser 24.S02E02.9.00.Uhr.bis.10.00.Uhr.German.DL.TV.Dubbed.DVDRip.SVCD.READ.NFO-c0nFuSed\n\n    =\u003e {\n        release: '24.S02E02.9.00.Uhr.bis.10.00.Uhr.German.DL.TV.Dubbed.DVDRip.SVCD.READ.NFO-c0nFuSed',\n        title: '24',\n        titleExtra: '9 00 Uhr bis 10 00 Uhr',\n        group: 'c0nFuSed',\n        year: null,\n        date: null,\n        season: 2,\n        episode: 2,\n        disc: null,\n        flags: [ 'READNFO', 'TV Dubbed' ],\n        source: 'DVDRip',\n        format: 'SVCD',\n        resolution: null,\n        audio: null,\n        device: null,\n        os: null,\n        version: null,\n        language: { de: 'German' },\n        type: 'TV'\n    }\n```\n\nThat's it!\n\n### __Found any Bugs?__\n\nIf you find any bugs/errors, feel free to [post an issue](https://github.com/pr0pz/scene-release-parser/issues).\n\n### __Similar projects and inspirations__\n- [pr0pz/scene-release-parser-php](https://github.com/pr0pz/scene-release-parser-php) - Identical to this project but in PHP\n- [matiassingers/scene-release](https://github.com/matiassingers/scene-release) (JavaScript)\n- [thcolin/scene-release-parser-php](https://github.com/thcolin/scene-release-parser-php) (PHP)\n- [majestixx/scene-release-parser-php-lib](https://github.com/majestixx/scene-release-parser-php-lib) (PHP)\n\n\n### __License__\n\n![License: MIT](https://img.shields.io/npm/l/release-parser)\n\n_That's it!_\n\n___Be excellent to each other. And, Party on, dudes!___\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpr0pz%2Fscene-release-parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpr0pz%2Fscene-release-parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpr0pz%2Fscene-release-parser/lists"}