{"id":30710978,"url":"https://github.com/colleagueriley/waylib","last_synced_at":"2025-09-03T01:50:48.890Z","repository":{"id":306999021,"uuid":"1027480656","full_name":"ColleagueRiley/waylib","owner":"ColleagueRiley","description":"A portable \"high level\" low-level Wayland client API (WIP)","archived":false,"fork":false,"pushed_at":"2025-07-28T21:05:12.000Z","size":30,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-28T23:09:49.341Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","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/ColleagueRiley.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-28T04:45:15.000Z","updated_at":"2025-07-28T21:05:15.000Z","dependencies_parsed_at":"2025-07-28T23:09:50.840Z","dependency_job_id":"eabbb1fe-16ac-430b-a6e1-26aa5afbe9e0","html_url":"https://github.com/ColleagueRiley/waylib","commit_stats":null,"previous_names":["colleagueriley/waylib"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ColleagueRiley/waylib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ColleagueRiley%2Fwaylib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ColleagueRiley%2Fwaylib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ColleagueRiley%2Fwaylib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ColleagueRiley%2Fwaylib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ColleagueRiley","download_url":"https://codeload.github.com/ColleagueRiley/waylib/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ColleagueRiley%2Fwaylib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273377152,"owners_count":25094528,"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","status":"online","status_checked_at":"2025-09-02T02:00:09.530Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-09-03T01:50:47.187Z","updated_at":"2025-09-03T01:50:48.882Z","avatar_url":"https://github.com/ColleagueRiley.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Waylib\nWaylib A portable \"high level\" low-level Wayland client API.\n\nThe Wayland API sucks, in part because of how low level it is, you have to manually define 1000 things to create a simple window that does nothing.\nBut also because Wayland is so fragmented and certain aspects may or may not exist depending on the compositor.\n\nAs much as I dislike Wayland, it is clear that the FOSS masses don't care, so it will inevitably replace X11.\n\nI am creating this API so that way future devs working with the low level Wayland API can use or take from this rather than having with Wayland's API alone.\\\nYou can think of it as \"Xlib but for Wayland\" in terms of XLib being a 'high level API' compared to dealing with XCB or the X protocol directly.\n\nThere is [another project](https://github.com/vioken/waylib) called Waylib, it's \"A wrapper for wlroots based on Qt\" but I thought the name was funny before I knew about that project. So I'm using it anyway.\n\n# compiling and linking\nwaylib is made up of two files `waylib.h` and `waylib.c`, you are free to compile and link waylib however you want.\n\nThe makefile includes a recipe for compiling `waylib.c` into `libwaylib.so`, `waylib.o` or `libwaylib.a`  but I prefer using it like a single-header file:\n\n```c\n#define WAYLIB_API inline\n#include \"waylib.h\"\n#include \"waylib.c\"\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcolleagueriley%2Fwaylib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcolleagueriley%2Fwaylib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcolleagueriley%2Fwaylib/lists"}