{"id":16621374,"url":"https://github.com/franciscoossian/cpp-template","last_synced_at":"2026-04-22T01:04:04.854Z","repository":{"id":238925350,"uuid":"797425862","full_name":"FranciscoOssian/cpp-template","owner":"FranciscoOssian","description":"An easy-to-use/edit/manage C++ template.","archived":false,"fork":false,"pushed_at":"2024-05-16T21:57:28.000Z","size":24,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-11T08:27:33.107Z","etag":null,"topics":["cpp","foln-project-content","template"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/FranciscoOssian.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":"2024-05-07T20:05:54.000Z","updated_at":"2024-05-16T21:57:31.000Z","dependencies_parsed_at":"2024-11-17T03:41:34.202Z","dependency_job_id":"528eec7c-3285-4a0e-bf90-c04536af8fe8","html_url":"https://github.com/FranciscoOssian/cpp-template","commit_stats":null,"previous_names":["franciscoossian/cpp-template"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/FranciscoOssian/cpp-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FranciscoOssian%2Fcpp-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FranciscoOssian%2Fcpp-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FranciscoOssian%2Fcpp-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FranciscoOssian%2Fcpp-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FranciscoOssian","download_url":"https://codeload.github.com/FranciscoOssian/cpp-template/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FranciscoOssian%2Fcpp-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28015082,"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-12-24T02:00:07.193Z","response_time":83,"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":["cpp","foln-project-content","template"],"created_at":"2024-10-12T02:47:08.374Z","updated_at":"2025-12-25T01:11:10.467Z","avatar_url":"https://github.com/FranciscoOssian.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"C++ template/boirplate\n\n# Deps and tools\n\n- Premake\n- Clang format\n- Clang Tidy\n\n# Steps\n\n1. Clone\n2. (**optional**) dont have premake and dont want install globally ? run `./.premake/getPreMake.(sh|bat)` for download and install Premake in this folder.\n3. Premake this project: `./.premake/premake5 --file=premake.lua (vs2013|gmake|...)`, all generetade files will place in `build`, visual studio project, gmake.\n4. If you choose gmake:\n   1. go to `build`\n   2. run `make config=release` or `make config=debug`\n   3. go to bin/Release\n   4. and run exec file, eg: `./$(ls | head -n 1)`\n\n```bash\ncpp-template@machine:~/repos/cpp-template$ tree -L 2\n.\n├── build\n├── cr.sh\n├── include\n│   └── test.hpp\n├── premake.lua\n├── README.md\n├── src\n│   ├── main.cpp\n│   └── test.cpp\n└── vendor\n    ├── eigen\n    ├── glad\n    ├── glfw\n    ├── premake.lua\n    └── viennaCL\n```\n\n# How to use and create vendor modules\n\nCheck the `premake.lua` file to understand how to import a module, but by default, all modules are being called in the `premake.lua`, so you just need to remove the module you won't use.\n\nIf you add another module to your project, I recommend following the same pattern. It's not common, but it helps with organization. Each module within the vendor directory has a `premake.lua` that declares a function to update the main premake file to handle that module (library/module). Currently, this pattern is working for simpler libraries, but it should also work for more complex ones. For example, if you need to define separate compilations.\n\n# Installing vendor modules\n\nSome modules inside the vendor directory come with `get.sh` and `get.bat` scripts used for installation (downloading and extraction). These scripts should be executed from the root project directory since they are not configured to know exactly where to install. Feel free to explore these files to better understand their functionality.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffranciscoossian%2Fcpp-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffranciscoossian%2Fcpp-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffranciscoossian%2Fcpp-template/lists"}