{"id":18318258,"url":"https://github.com/sinkaroid/strygwyr","last_synced_at":"2025-04-05T21:32:33.497Z","repository":{"id":57372989,"uuid":"346974819","full_name":"sinkaroid/strygwyr","owner":"sinkaroid","description":"Getter dota heroes from their localized names.","archived":false,"fork":false,"pushed_at":"2021-03-31T23:17:45.000Z","size":63,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T12:08:19.503Z","etag":null,"topics":["dota-2","dota2-api","liquipedia","wrapper"],"latest_commit_sha":null,"homepage":"https://strygwyr.js.org","language":"JavaScript","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/sinkaroid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"custom":["https://scathach.dev"]}},"created_at":"2021-03-12T07:10:30.000Z","updated_at":"2022-01-11T23:59:16.000Z","dependencies_parsed_at":"2022-08-29T14:22:54.461Z","dependency_job_id":null,"html_url":"https://github.com/sinkaroid/strygwyr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinkaroid%2Fstrygwyr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinkaroid%2Fstrygwyr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinkaroid%2Fstrygwyr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sinkaroid%2Fstrygwyr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sinkaroid","download_url":"https://codeload.github.com/sinkaroid/strygwyr/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247406082,"owners_count":20933803,"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":["dota-2","dota2-api","liquipedia","wrapper"],"created_at":"2024-11-05T18:08:58.447Z","updated_at":"2025-04-05T21:32:33.202Z","avatar_url":"https://github.com/sinkaroid.png","language":"JavaScript","funding_links":["https://scathach.dev"],"categories":[],"sub_categories":[],"readme":"# Strygwyr\n\n[![npm](https://img.shields.io/npm/v/strygwyr.svg)](https://www.npmjs.com/package/strygwyr)\n[![npm](https://img.shields.io/npm/dt/strygwyr.svg?maxAge=3600)](https://www.npmjs.com/package/strygwyr)\n[![CodeFactor](https://www.codefactor.io/repository/github/sinkaroid/strygwyr/badge)](https://www.codefactor.io/repository/github/sinkaroid/strygwyr)\n\nQuick Dota 2 heroes wrapper.  \nmaintainable according liquipedia.\nMostly heroes but items and other things will added later.  \nthis modules using latest `localized_name` implementation,  \nso if u type eg: `balanar`, `Outworld Devourer` and other aliases its will throw an error.\nthats why [typings](#Typings) will help you out\n\n## Typings\n\ntypings file will help you and will be working to improve it.  \nThis allows editors like VSC to use intellisense/autocomplete to suggest functions and help out with parameters and to see what you'll be receiving as a result of function calls.\nSome heroes name eg: Nature's Prophet and Anti-Mage are replaced with underscore. see our [methodTable](#method)\n\n## Installation\n\n```\nnpm i strygwyr\n```\n\n## Documentation\n\n#### stats(options)\n\nReturns latest hero status.\n\n```js\ndota.stats.Pudge().then((hero) =\u003e {\n  console.log(hero.data);\n});\n```\n\n#### talent(options)\n\nReturns latest hero talents.\n\n```js\ndota.talent.Phantom_Assassin().then((hero) =\u003e {\n  console.log(hero.data);\n});\n```\n\n#### changes(options)\n\nLatest changes according patch of heroes\n\n```js\ndota.talent.Phantom_Assassin().then((hero) =\u003e {\n  console.log(hero.data);\n});\n```\n\n---\n\n## Example\n\n## stats(options)\n\n```js\nconst wrapper = require(\"strygwyr\");\nconst dota = new wrapper();\n\ndota.stats.Pudge().then((hero) =\u003e {\n  console.log(hero.data);\n});\n```\n\n---\n\n      Base HP Regen =\u003e 2\n      Base Mana Regen =\u003e 0\n      Sight Range =\u003e 1800 / 800\n      Attack Range =\u003e 150\n      Missile Speed =\u003e Instant\n      Attack Duration =\u003e 0.5 + 1.17\n      Cast Duration =\u003e 0.3 + 0.51\n      Base Attack Speed =\u003e 100\n      Base Attack Time =\u003e 1.7\n      Base Magic Resist =\u003e 25%\n      Turn Rate =\u003e 0.7\n\n## changes(option)\n\n```js\nconst wrapper = require(\"strygwyr\");\nconst dota = new wrapper();\n\ndota.changes.Phantom_Assassin().then((hero) =\u003e {\n  console.log(hero.data);\n});\n```\n\n---\n\n        7.27b\n        -  Base damage increased by 3\n        -  Blur scepter cooldown reduced from 12 to 10\n        -  Level 10 Talent changed from +12 Damage to -1s Stifling Dagger Cooldown\n        -  Level 15 Talent changed from +25% Cleave to +350 Phantom Strike Cast Range\n        -  Level 20 Talent increased from +30% Blur Evasion to +35%\n\n## talent(options)\n\n```js\nconst wrapper = require(\"strygwyr\");\nconst dota = new wrapper();\n\ndota.talent.Phantom_Assassin().then((hero) =\u003e {\n  console.log(hero.data);\n});\n```\n\n---\n\n    Triple Strike Stifling Dagger ❮➖ ( 25 ) ➖❯ +100% Coup de Grace Critical Damage\n    +35% Blur Evasion ❮➖ ( 20 ) ➖❯ -3 Armor Corruption\n    +350 Phantom Strike Cast Range ❮➖ ( 15 ) ➖❯ 12% Lifesteal\n    -1s Stifling Dagger Cooldown ❮➖ ( 10 ) ➖❯ +175 Health\n\n## Await/Async example\n\n```js\nconst wrapper = require(\"strygwyr\");\nconst dota = new wrapper();\n\nasync function hero() {\n  console.log(await dota.stats.Phantom_Assassin());\n}\n\nhero();\n```\n\n## Method\n\n| Option                  | Description |\n| ----------------------- | ----------- |\n| `Anti_Mage()`           | Promise     |\n| `Axe()`                 | Promise     |\n| `Bane()`                | Promise     |\n| `Bloodseeker()`         | Promise     |\n| `Crystal_Maiden()`      | Promise     |\n| `Drow_Ranger()`         | Promise     |\n| `Earthshaker()`         | Promise     |\n| `Juggernaut()`          | Promise     |\n| `Mirana()`              | Promise     |\n| `Morphling()`           | Promise     |\n| `Shadow_Fiend()`        | Promise     |\n| `Phantom_Lancer()`      | Promise     |\n| `Puck()`                | Promise     |\n| `Pudge()`               | Promise     |\n| `Razor()`               | Promise     |\n| `Sand_King()`           | Promise     |\n| `Storm_Spirit()`        | Promise     |\n| `Sven()`                | Promise     |\n| `Tiny()`                | Promise     |\n| `Vengeful_Spirit()`     | Promise     |\n| `Windranger()`          | Promise     |\n| `Zeus()`                | Promise     |\n| `Kunkka()`              | Promise     |\n| `Lina()`                | Promise     |\n| `Lion()`                | Promise     |\n| `Shadow_Shaman()`       | Promise     |\n| `Slardar()`             | Promise     |\n| `Tidehunter()`          | Promise     |\n| `Witch_Doctor()`        | Promise     |\n| `Lich()`                | Promise     |\n| `Riki()`                | Promise     |\n| `Enigma()`              | Promise     |\n| `Tinker()`              | Promise     |\n| `Sniper()`              | Promise     |\n| `Necrophos()`           | Promise     |\n| `Warlock()`             | Promise     |\n| `Beastmaster()`         | Promise     |\n| `Queen_of_Pain()`       | Promise     |\n| `Venomancer()`          | Promise     |\n| `Faceless_Void()`       | Promise     |\n| `Wraith_King()`         | Promise     |\n| `Death_Prophet()`       | Promise     |\n| `Phantom_Assassin()`    | Promise     |\n| `Pugna()`               | Promise     |\n| `Templar_Assassin()`    | Promise     |\n| `Viper()`               | Promise     |\n| `Luna()`                | Promise     |\n| `Dragon_Knight()`       | Promise     |\n| `Dazzle()`              | Promise     |\n| `Clockwerk()`           | Promise     |\n| `Leshrac()`             | Promise     |\n| `Natures_Prophet()`     | Promise     |\n| `Lifestealer()`         | Promise     |\n| `Dark_Seer()`           | Promise     |\n| `Clinkz()`              | Promise     |\n| `Omniknight()`          | Promise     |\n| `Enchantress()`         | Promise     |\n| `Huskar()`              | Promise     |\n| `Night_Stalker()`       | Promise     |\n| `Broodmother()`         | Promise     |\n| `Bounty_Hunter()`       | Promise     |\n| `Weaver()`              | Promise     |\n| `Jakiro()`              | Promise     |\n| `Batrider()`            | Promise     |\n| `Chen()`                | Promise     |\n| `Spectre()`             | Promise     |\n| `Ancient_Apparition()`  | Promise     |\n| `Doom()`                | Promise     |\n| `Ursa()`                | Promise     |\n| `Spirit_Breaker()`      | Promise     |\n| `Gyrocopter()`          | Promise     |\n| `Alchemist()`           | Promise     |\n| `Invoker()`             | Promise     |\n| `Silencer()`            | Promise     |\n| `Outworld_Destroyer()`  | Promise     |\n| `Lycan()`               | Promise     |\n| `Brewmaster()`          | Promise     |\n| `Shadow_Demon()`        | Promise     |\n| `Lone_Druid()`          | Promise     |\n| `Chaos_Knight()`        | Promise     |\n| `Meepo()`               | Promise     |\n| `Treant_Protector()`    | Promise     |\n| `Ogre_Magi()`           | Promise     |\n| `Undying()`             | Promise     |\n| `Rubick()`              | Promise     |\n| `Disruptor()`           | Promise     |\n| `Nyx_Assassin()`        | Promise     |\n| `Naga_Siren()`          | Promise     |\n| `Keeper_of_the_Light()` | Promise     |\n| `Io()`                  | Promise     |\n| `Visage()`              | Promise     |\n| `Slark()`               | Promise     |\n| `Medusa()`              | Promise     |\n| `Troll_Warlord()`       | Promise     |\n| `Centaur_Warrunner()`   | Promise     |\n| `Magnus()`              | Promise     |\n| `Timbersaw()`           | Promise     |\n| `Bristleback()`         | Promise     |\n| `Tusk()`                | Promise     |\n| `Skywrath_Mage()`       | Promise     |\n| `Abaddon()`             | Promise     |\n| `Elder_Titan()`         | Promise     |\n| `Legion_Commander()`    | Promise     |\n| `Techies()`             | Promise     |\n| `Ember_Spirit()`        | Promise     |\n| `Earth_Spirit()`        | Promise     |\n| `Underlord()`           | Promise     |\n| `Terrorblade()`         | Promise     |\n| `Phoenix()`             | Promise     |\n| `Oracle()`              | Promise     |\n| `Winter_Wyvern()`       | Promise     |\n| `Arc_Warden()`          | Promise     |\n| `Monkey_King()`         | Promise     |\n| `Dark_Willow()`         | Promise     |\n| `Pangolier()`           | Promise     |\n| `Grimstroke()`          | Promise     |\n| `Hoodwink()`            | Promise     |\n| `Void_Spirit()`         | Promise     |\n| `Snapfire()`            | Promise     |\n| `Mars()`                | Promise     |\n\n## Todo\n\n- [x] Heroes\n- [x] Tournaments, use [traxex](https://www.npmjs.com/package/traxex)\n- [ ] Items\n\n## Legal\n\nThis tool can be freely copied, modified, altered, distributed without any attribution whatsoever. However, if you feel like this tool deserves an attribution, mention it. It won't hurt anybody :)\n\nPlease, read the [license terms](/LICENSE). Don't worry, it can be read in less than 30 seconds, unless you have some sort of reading disability - in that case, I'm wondering why you're still reading this text. Really. Stop. Please. I mean, seriously. Why are you still reading?\n\n## Notable\n\nSince this tool includes some contributions, and I'm not an asshole, I'll publically thank the following users for their help:\n\n- [@liquipedia/dota2](https://liquipedia.net/dota2/) as \"milestone\" and for actionable Data\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinkaroid%2Fstrygwyr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsinkaroid%2Fstrygwyr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinkaroid%2Fstrygwyr/lists"}