{"id":16064533,"url":"https://github.com/lokathor/rusty-xinput","last_synced_at":"2025-03-16T08:32:09.124Z","repository":{"id":57666065,"uuid":"118956246","full_name":"Lokathor/rusty-xinput","owner":"Lokathor","description":"Safe dynamic loading of xinput","archived":false,"fork":false,"pushed_at":"2023-12-17T23:29:38.000Z","size":82,"stargazers_count":14,"open_issues_count":3,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-02-27T05:51:31.062Z","etag":null,"topics":["rust","xinput","zlib-license"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Lokathor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE-ZLIB.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null},"funding":{"github":["Lokathor"]}},"created_at":"2018-01-25T19:13:46.000Z","updated_at":"2025-02-15T17:19:40.000Z","dependencies_parsed_at":"2023-12-17T00:05:00.145Z","dependency_job_id":null,"html_url":"https://github.com/Lokathor/rusty-xinput","commit_stats":{"total_commits":63,"total_committers":5,"mean_commits":12.6,"dds":"0.19047619047619047","last_synced_commit":"222e2aca98a0eb69881aa7f17e7267180ff16d7f"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokathor%2Frusty-xinput","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokathor%2Frusty-xinput/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokathor%2Frusty-xinput/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lokathor%2Frusty-xinput/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Lokathor","download_url":"https://codeload.github.com/Lokathor/rusty-xinput/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243806070,"owners_count":20350775,"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":["rust","xinput","zlib-license"],"created_at":"2024-10-09T05:08:26.112Z","updated_at":"2025-03-16T08:32:08.677Z","avatar_url":"https://github.com/Lokathor.png","language":"Rust","funding_links":["https://github.com/sponsors/Lokathor"],"categories":[],"sub_categories":[],"readme":"\u003c!-- TODO: Zlib license link here --\u003e\n[![CratesIO](https://img.shields.io/crates/v/rusty-xinput.svg)](https://crates.io/crates/rusty-xinput)\n[![DocsRS](https://docs.rs/rusty-xinput/badge.svg)](https://docs.rs/rusty-xinput/)\n[![Appveyor](https://ci.appveyor.com/api/projects/status/2nhvh047mrv8plen?svg=true)](https://ci.appveyor.com/project/Lokathor/rusty-xinput)\n\n# rusty-xinput\n\nDynamically loads an xinput dll and lets you safely call the functions.\n\n# If you want to use other controller types\n\nIf you have a controller that doesn't have an XInput driver it probably uses\nDirectInput instead. The DirectInput system isn't bound within the `winapi`\ncrate because I'm too lazy to go make that PR and no one else cares.\n\nInstead I can suggest you two options:\n\n* You can tell your users to try the [Controller\n  Emulator](https://github.com/x360ce/x360ce) program. It lets you setup the\n  device you want and then spits out an XInput DLL to use that will read the\n  desired device. Place the generated DLL into the same directory as your\n  executable under the name `xinput9_1_0.dll` and it'll get loaded instead of\n  the system level version. See their site for more info.\n\n* You can use the [multiinput](https://crates.io/crates/multiinput) crate, which\n  uses the rawinput system, which will also include things like DirectInput\n  devices. I don't know the guy that makes it and I haven't used it myself, I\n  just found it on crates.io and it's the only other gamepad library that's even\n  been updated in the past year.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flokathor%2Frusty-xinput","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flokathor%2Frusty-xinput","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flokathor%2Frusty-xinput/lists"}