{"id":13631912,"url":"https://github.com/plopgrizzly/barg","last_synced_at":"2026-04-04T12:58:41.533Z","repository":{"id":62438520,"uuid":"145913344","full_name":"plopgrizzly/barg","owner":"plopgrizzly","description":"A GUI toolkit \u0026 3D graphics renderer.","archived":false,"fork":false,"pushed_at":"2020-05-30T23:06:15.000Z","size":1541,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-12-14T03:33:23.976Z","etag":null,"topics":["graphics","graphics-library","graphics-programming","renderer","rendering-3d-graphics","rendering-engine","rust-library","vulkan","vulkan-compute-shaders"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/plopgrizzly.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE_BSL.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-23T22:22:59.000Z","updated_at":"2024-09-21T10:38:13.000Z","dependencies_parsed_at":"2022-11-01T22:01:28.344Z","dependency_job_id":null,"html_url":"https://github.com/plopgrizzly/barg","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/plopgrizzly/barg","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plopgrizzly%2Fbarg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plopgrizzly%2Fbarg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plopgrizzly%2Fbarg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plopgrizzly%2Fbarg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/plopgrizzly","download_url":"https://codeload.github.com/plopgrizzly/barg/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plopgrizzly%2Fbarg/sbom","scorecard":{"id":737999,"data":{"date":"2025-08-11","repo":{"name":"github.com/plopgrizzly/barg","commit":"43bb5baa68eeccc8a0d853ca80d18e44453df714"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE_BSL.txt:0","Info: FSF or OSI recognized license: Boost Software License 1.0: LICENSE_BSL.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}}]},"last_synced_at":"2025-08-22T16:28:37.208Z","repository_id":62438520,"created_at":"2025-08-22T16:28:37.209Z","updated_at":"2025-08-22T16:28:37.209Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31400460,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["graphics","graphics-library","graphics-programming","renderer","rendering-3d-graphics","rendering-engine","rust-library","vulkan","vulkan-compute-shaders"],"created_at":"2024-08-01T22:02:43.714Z","updated_at":"2026-04-04T12:58:41.514Z","avatar_url":"https://github.com/plopgrizzly.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# Barg\nA GUI toolkit \u0026 3D graphics renderer.\n\n## Naming\nThe name is a combination of \"bar\" as in \"foo bar baz qux\" and \"g\" as in \"graphics\".  It is also fun to yell because \"BARG!!!\" sounds like \"ARGH!!!!\".\n\n## Future Ideas\nAPI's like Vulkan, Metal and OpenGL have trouble with certain things like anti-aliasing (which gets \"solved\" with Multisampling), and how to make a perfect sphere (It's not really possible).\n\nThis renderer will have a lot of CPU-based function calls, so a GPU isn't necessary - but if you have vulkan installed, compute shaders will be used to speed things up.  In order to get *even faster* SIMD will be used!  Hopefully, SIMD + Vulkan Compute for CPU rendering will be just as fast as normal GPU rendering (or at least close).\n\nHaving support for 3D curves, will not only make certain things (particulary living things, like plants and people) look better, but also reduce the amount of vertices that need to be stored in memory to draw models with curves.\n\nAnother factor that will be improved is color blending and worrying how to do that and have it look accurate.  HSV relative to linear sRGB will be interpolated for blending effects.\n\n## More Future Ideas\nRendering is done face-by-face.  So a cube will be 6 draw calls (1 for each face), but of course at least 3 faces will be culled.  A sphere will need 4 draw calls / 4 faces, these will be 3D faces unlike the cube.\n\nAlpha blending will be done backwards.  No matter what faces that are closest to the camera will always be drawn first.  The alpha value will be stored on the surface we're rendering to.  If it's 255 then pixels will be culled.  If it's less faces will be blended behind the face currently in the render buffer.\n\n## Features\n- Render 2D graphics\n- Render text\n\n## TODO\n- Render 3D graphics\n- Render GUI elements / widgets\n\n## Cala\nThis crate is part of the [cala](https://crates.io/crates/cala) project.\n\n## Links\n- [Website](https://code.plopgrizzly.com/barg)\n- [Cargo](https://crates.io/crates/barg)\n- [Documentation](https://docs.rs/barg)\n- [Change Log](https://code.plopgrizzly.com/barg/CHANGELOG)\n- [Contributors](https://code.plopgrizzly.com/barg/CONTRIBUTORS)\n- [Code of Conduct](https://code.plopgrizzly.com/barg/CODEOFCONDUCT)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplopgrizzly%2Fbarg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplopgrizzly%2Fbarg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplopgrizzly%2Fbarg/lists"}