{"id":20400340,"url":"https://github.com/fschutt/xlib-programming-rust","last_synced_at":"2025-07-15T19:37:43.245Z","repository":{"id":90270439,"uuid":"96836886","full_name":"fschutt/xlib-programming-rust","owner":"fschutt","description":"Minimal Xlib / OpenGL programming examples in Rust","archived":false,"fork":false,"pushed_at":"2017-09-14T10:27:18.000Z","size":26,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-07-08T16:11:27.025Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"RenderScript","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/fschutt.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}},"created_at":"2017-07-11T01:27:10.000Z","updated_at":"2024-02-24T05:37:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"535d32c1-28c3-48d8-92c7-386835d65b1d","html_url":"https://github.com/fschutt/xlib-programming-rust","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fschutt/xlib-programming-rust","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fschutt%2Fxlib-programming-rust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fschutt%2Fxlib-programming-rust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fschutt%2Fxlib-programming-rust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fschutt%2Fxlib-programming-rust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fschutt","download_url":"https://codeload.github.com/fschutt/xlib-programming-rust/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fschutt%2Fxlib-programming-rust/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265455551,"owners_count":23768567,"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":[],"created_at":"2024-11-15T04:39:37.838Z","updated_at":"2025-07-15T19:37:43.201Z","avatar_url":"https://github.com/fschutt.png","language":"RenderScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# xlib-programming-rust\n\nThis repository contains minimal X11 and OpenGL examples, written in Rust without any extra libraries (except for bindings \nto X11, but you can take them out if you want to). This repository exists because people told me that it'd be impossible to\ncreate windows without libraries such as QT and GTK. But lo and behold - you can actually create windows without using 100s of\nlibraries. X11 is not \"old\" in a way that you can't work with it anymore.\n\nThese examples should also show how to set window attributes and draw with the X11 toolkit. This is important for situations\nwhere you don't want to have a 30MB drawing toolkit and you want to reliably deliver simple windows (such as an error message)\nto the user (where the overhead of invoking a extra toolkit would be too much). OpenGL may not be available on your system.\n\nX11 is old. But it's not depreceated. Yes, everybody uses GTK and QT, but you don't have to use proprietary toolkits to draw \na simple \"Ok, cancel\" message.\n\nThese people also told me that it would be unfeasible to write a GUI toolkit from scratch. While I do somehow agree with this,\nit's neither impossible nor infeasible to write a basic 2D GUI toolkit using OpenGL.\n\nThese examples are targeted to run on anything \u003e OpenGL 3.1 (because of shaders, you can of course strip out the OpenGL part\nto make them run on lower requirements).\n\nEach example is in the `/examples` folder and should compile on its own. The example that I'm currently working on is in the \n`/src` folder.\n\n## Dependencies\n\n- libGL.so\n- libx11.so\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffschutt%2Fxlib-programming-rust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffschutt%2Fxlib-programming-rust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffschutt%2Fxlib-programming-rust/lists"}