{"id":15136973,"url":"https://github.com/florianvazelle/vulkanstarter","last_synced_at":"2025-07-23T08:05:27.453Z","repository":{"id":49997385,"uuid":"339751503","full_name":"florianvazelle/VulkanStarter","owner":"florianvazelle","description":"A template for Vulkan C++ projects with GLFW, GLM and ImGUI using CMake, CI, Conan and doctest ","archived":false,"fork":false,"pushed_at":"2025-04-09T12:55:59.000Z","size":300,"stargazers_count":30,"open_issues_count":7,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-23T08:03:08.117Z","etag":null,"topics":["ci","cmake","conan","continuous-integration","cpp","doctest","github-workflows","glfw","glm","glslang","imgui","starter","template","vulkan","vulkan-ci","vulkan-template"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/florianvazelle.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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-02-17T14:34:53.000Z","updated_at":"2025-05-20T22:00:56.000Z","dependencies_parsed_at":"2024-04-03T01:27:55.029Z","dependency_job_id":"8ae8f0ed-7e49-491d-bc7c-f9cb58e7f711","html_url":"https://github.com/florianvazelle/VulkanStarter","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":"florianvazelle/cpp-template","purl":"pkg:github/florianvazelle/VulkanStarter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/florianvazelle%2FVulkanStarter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/florianvazelle%2FVulkanStarter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/florianvazelle%2FVulkanStarter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/florianvazelle%2FVulkanStarter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/florianvazelle","download_url":"https://codeload.github.com/florianvazelle/VulkanStarter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/florianvazelle%2FVulkanStarter/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266640830,"owners_count":23960809,"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-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"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":["ci","cmake","conan","continuous-integration","cpp","doctest","github-workflows","glfw","glm","glslang","imgui","starter","template","vulkan","vulkan-ci","vulkan-template"],"created_at":"2024-09-26T06:42:25.084Z","updated_at":"2025-07-23T08:05:27.415Z","avatar_url":"https://github.com/florianvazelle.png","language":"C++","readme":"![GitHub Workflow Status (branch)](https://img.shields.io/github/actions/workflow/status/florianvazelle/VulkanStarter/main.yml?branch=main\u0026label=Windows%20%7C%20Linux\u0026logo=github)\n\n# VulkanStarter\n\nThis is a template to setting up a new Vulkan C++ project.\n\n## Features\n\n- Sources, headers and mains separated in distinct folders\n- Use of modern [CMake](https://cmake.org/) for much easier compiling\n- Automatically compile shaders with [`glslValidator`](https://github.com/KhronosGroup/glslang)\n- Integrated test suite using [Doctest](https://github.com/onqtam/doctest)\n- Continuous integration via [GitHub Actions](https://help.github.com/en/actions)\n- Support [Conan](https://conan.io/) package manager to quick install your package\n\n## Building\n\n### Build and run the standalone target\n\nUse the following command to build and run the executable target.\n\n```bash\ncmake -Bbuild\ncmake --build build\n./build/bin/VulkanStarterStandalone\n```\n\n### Build and run test suite\n\nUse the following commands from the project's root directory to run the test suite.\n\n```bash\ncmake -Bbuild\ncmake --build build\n./build/bin/VulkanStarterTests\n```\n\n## Dependencies\n\n- C++17 compiler :\n  - Visual Studio 2016\n  - GCC 7+ or Clang 8+\n- [Conan](https://conan.io/) for install packages\n- [Git](https://git-scm.com/) for cmake automatic dependencies\n- [CMake](https://cmake.org/) for build system creation (\u003e= 3.12)\n- [Doxygen](https://doxygen.org/) for generate documentation (\u003e= 1.8, optional)\n\n## References\n\n- To include ImGui : [with Conan](https://blog.conan.io/2019/06/26/An-introduction-to-the-Dear-ImGui-library.html), [with Vulkan](https://frguthmann.github.io/posts/vulkan_imgui/)\n- Vulkan code sample : [VulkanTutorial](https://github.com/Overv/VulkanTutorial), [vkSandbox](https://github.com/tstullich/vk-sandbox)\n- Inspirational templates : [CppProject](https://github.com/tweether/cpp-project), [ModernCppStarter](https://github.com/TheLartians/ModernCppStarter)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflorianvazelle%2Fvulkanstarter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflorianvazelle%2Fvulkanstarter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflorianvazelle%2Fvulkanstarter/lists"}