{"id":19861417,"url":"https://github.com/immanuel-c/iwindow","last_synced_at":"2025-07-11T16:34:51.822Z","repository":{"id":40326436,"uuid":"481811789","full_name":"Immanuel-C/IWindow","owner":"Immanuel-C","description":"A simple windowing library that supports Windows. I Window is meant to be used with Vulkan, OpenGL or Direct3D.","archived":false,"fork":false,"pushed_at":"2024-02-05T21:22:38.000Z","size":2295,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"Main","last_synced_at":"2025-04-06T22:13:03.241Z","etag":null,"topics":["direct3d","direct3d12","directx","directx-11","directx-12","directx11","directx12","iwindow","opengl","opengl-library","vulkan","windowing"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Immanuel-C.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2022-04-15T02:27:21.000Z","updated_at":"2024-02-03T19:44:32.000Z","dependencies_parsed_at":"2024-02-03T03:41:28.094Z","dependency_job_id":null,"html_url":"https://github.com/Immanuel-C/IWindow","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/Immanuel-C%2FIWindow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Immanuel-C%2FIWindow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Immanuel-C%2FIWindow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Immanuel-C%2FIWindow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Immanuel-C","download_url":"https://codeload.github.com/Immanuel-C/IWindow/tar.gz/refs/heads/Main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251986666,"owners_count":21675950,"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":["direct3d","direct3d12","directx","directx-11","directx-12","directx11","directx12","iwindow","opengl","opengl-library","vulkan","windowing"],"created_at":"2024-11-12T15:08:51.552Z","updated_at":"2025-05-02T04:30:34.400Z","avatar_url":"https://github.com/Immanuel-C.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IWindow\n\n## Documentation website is not up to date. Use header files documentation.\n\n## IWindow does not support Linux anymore! ##\n\nI decided to remove linux support of IWindow since it was too much work for 1 person to handle. You can still find Linux support in the OldLinuxSupport branch if others want to contribute to it. This doesn't mean IWindow will never support linux.\n\nA simple windowing library ment to be used with Vulkan, OpenGL or Direct3D.\n \nIWindow is written is C++ and uses C++17 and currently only supports 64 bit machines.\n \nIWindow supports Win32 (Windows).\n \nNo this isn't as good as GLFW yet...\n\n# IWindow Features\n\n- Create a window\n- Create an OpenGL context (no OpenGL ES support)\n- Create a Vulkan surface and get the required instance extensions for IWindow to link with Vulkan\n- Keyboard and mouse support with callbacks\n- Gamepad support with a gamepad connect callback.\n- Win32 (Windows).\n\n# How to build The Example\n\nUse premake5. If you dont have premake5 you can install it [here](https://premake.github.io/). \nAdd the premake5 executable into the main folder or into your environment path.\n\non Windows you can use the build.bat if you have visual studio 2022. If you dont have visual studio 2022 you can use `premake5 [build target] [args]`.\n\nThe documentation of this library is on this [website](https://immanuel-c.github.io/IWindow).\n\n# Building IWindow into a DLL\n\nWhen compiling define `IWINDOW_BUILD_DLL` in preprocessor defines. Also use `IWINDOW_DLL` in preprocessor defines and client applications preprocessor defines.\n\n# Contribute\n\nSee [Contribute](./Contribute.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimmanuel-c%2Fiwindow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fimmanuel-c%2Fiwindow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimmanuel-c%2Fiwindow/lists"}