{"id":15164644,"url":"https://github.com/paulfioravanti/hid_host_example","last_synced_at":"2025-09-30T20:31:28.040Z","repository":{"id":222763363,"uuid":"758308822","full_name":"paulfioravanti/hid_host_example","owner":"paulfioravanti","description":"HID host example made with Plover stenography and Ultisnips vim snippets.","archived":true,"fork":false,"pushed_at":"2024-02-19T03:48:24.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-09-30T02:31:38.962Z","etag":null,"topics":["clang","hid","hidapi","plover","snippets","stenography","ultisnips"],"latest_commit_sha":null,"homepage":"https://www.youtube.com/watch?v=egReh-6maNw","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/paulfioravanti.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2024-02-16T03:13:22.000Z","updated_at":"2024-02-19T03:49:06.000Z","dependencies_parsed_at":"2024-02-19T04:37:14.774Z","dependency_job_id":null,"html_url":"https://github.com/paulfioravanti/hid_host_example","commit_stats":{"total_commits":10,"total_committers":1,"mean_commits":10.0,"dds":0.0,"last_synced_commit":"0cdea7867a8f02534d8eea00bb25865c3b35c883"},"previous_names":["paulfioravanti/hid_host_example"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulfioravanti%2Fhid_host_example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulfioravanti%2Fhid_host_example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulfioravanti%2Fhid_host_example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulfioravanti%2Fhid_host_example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paulfioravanti","download_url":"https://codeload.github.com/paulfioravanti/hid_host_example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234774936,"owners_count":18884524,"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":["clang","hid","hidapi","plover","snippets","stenography","ultisnips"],"created_at":"2024-09-27T03:42:33.912Z","updated_at":"2025-09-30T20:31:22.719Z","avatar_url":"https://github.com/paulfioravanti.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HID Host Example\n\nThis is the codebase for my implementation of a [Human Interface Device][] (HID)\nhost program in [C][]. It was created using [Plover][] stenography and\n[UltiSnips][] snippets, for the following media:\n\n- [Get on the Same Page as your HID Device][] blog post\n- [Talking to a Georgi with C \\[Steno Coding\\]][] video\n\n## Setup\n\n```sh\ngit clone https://github.com/paulfioravanti/hid_host_example.git\ncd hid_host_example\n```\n\n## Prerequisites\n\n### HIDAPI\n\nThe [HIDAPI][] library is required to open up HID communication channels, so\ninstall it with your operating system's package manager. HIDAPI provides some\nminimal information about this in their [Installing HIDAPI][] section, but if\nyou are using macOS, you can install it with [Homebrew][]:\n\n```sh\nbrew install hidapi\n```\n\n### `pkg-config`\n\nFeel free to compile the host as you see fit, but I use [pkg-config][]\n([repo][pkg-config repo]) to provide an easier interface to include libraries.\nYou can install it via your operating system package manager, or use Homebrew if\nyou use macOS:\n\n```sh\nbrew install pkg-config\n```\n\n## Compile\n\nIf you use `pkg-config`, you can use the included build file:\n\n```sh\n./build.sh\n```\n\nOtherwise, feel free to use it as a guide to make your own.\n\n## Run\n\n```sh\n./host\n```\n\n## Sibling Repo\n\nFor a more robust example of a HID host that I use often, see my [HID Hosts][]\nrepo.\n\n[C]: https://en.wikipedia.org/wiki/C_(programming_language)\n[Get on the Same Page as your HID Device]: https://www.paulfioravanti.com/blog/same-page-hid-device/\n[HIDAPI]: https://github.com/libusb/hidapi\n[HID Hosts]: https://github.com/paulfioravanti/hid_hosts\n[Homebrew]: https://brew.sh/\n[Human Interface Device]: https://en.wikipedia.org/wiki/USB_human_interface_device_class\n[Installing HIDAPI]: https://github.com/libusb/hidapi#installing-hidapi\n[pkg-config]: https://en.wikipedia.org/wiki/Pkg-config\n[pkg-config repo]: https://gitlab.freedesktop.org/pkg-config/pkg-config\n[Plover]: http://www.openstenoproject.org/\n[Talking to a Georgi with C \\[Steno Coding\\]]: https://www.youtube.com/watch?v=egReh-6maNw\n[UltiSnips]: https://github.com/SirVer/ultisnips\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaulfioravanti%2Fhid_host_example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaulfioravanti%2Fhid_host_example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaulfioravanti%2Fhid_host_example/lists"}