{"id":22661070,"url":"https://github.com/christopherph/tbr-csharp.monogame","last_synced_at":"2025-03-29T08:25:31.186Z","repository":{"id":263203558,"uuid":"889659833","full_name":"ChristopherPH/TBR-csharp.monogame","owner":"ChristopherPH","description":"A collection of utility functions, extension methods, helpers and controls for the c# MonoGame framework.","archived":false,"fork":false,"pushed_at":"2025-03-23T23:31:13.000Z","size":357,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T00:27:33.326Z","etag":null,"topics":["c-sharp","c-sharp-library","csharp","monogame","monogame-framework"],"latest_commit_sha":null,"homepage":"https://monogame.net","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ChristopherPH.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}},"created_at":"2024-11-16T22:13:09.000Z","updated_at":"2025-03-23T23:31:17.000Z","dependencies_parsed_at":"2024-12-01T07:22:58.965Z","dependency_job_id":"1f2d7fba-f44b-419d-9a2b-496a6622ec33","html_url":"https://github.com/ChristopherPH/TBR-csharp.monogame","commit_stats":null,"previous_names":["christopherph/tbr-csharp.monogame"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristopherPH%2FTBR-csharp.monogame","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristopherPH%2FTBR-csharp.monogame/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristopherPH%2FTBR-csharp.monogame/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristopherPH%2FTBR-csharp.monogame/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ChristopherPH","download_url":"https://codeload.github.com/ChristopherPH/TBR-csharp.monogame/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246158674,"owners_count":20732846,"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":["c-sharp","c-sharp-library","csharp","monogame","monogame-framework"],"created_at":"2024-12-09T11:13:35.226Z","updated_at":"2025-03-29T08:25:31.179Z","avatar_url":"https://github.com/ChristopherPH.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TheBlackRoom.MonoGame Libraries\r\n\r\nA collection of utility functions, extension methods, and helpers for the c# MonoGame framework.\r\n\r\nFor more information about the MonoGame framework, visit https://monogame.net/\r\n\r\n\r\n## Organizational Notes\r\n\r\n- Libraries are implemented as shared projects to cleanly integrate into existing projects\r\n- Libraries are split by namespace as much as possible to reduce dependancies\r\n\r\n\r\n## TheBlackRoom.MonoGame\r\n\r\nUtility functions, extension methods, helpers for MonoGame.\r\n\r\n\r\n### TheBlackRoom.MonoGame.Drawing\r\n\r\nExtensions for:\r\n\r\n- Rectangle\r\n\r\n\r\n### TheBlackRoom.MonoGame.Extensions\r\n\r\nExtensions for:\r\n\r\n- SpriteBatch\r\n\r\n\r\n### TheBlackRoom.MonoGame.Interpolator\r\n\r\n\r\n### TheBlackRoom.MonoGame.MenuSystem\r\n\r\n\r\n\r\n## TheBlackRoom.GameFramework\r\n\r\nA framework for creating a basic game.\r\n\r\nFeatures:\r\n\r\n- Game state system\r\n- Game setting system\r\n- Built-in video resolution settings\r\n- Built-in audio resolution settings\r\n\r\n\r\n## TheBlackRoom.MonoGame.GuiToolkit\r\n\r\nA toolkit for creating a basic game user interface.\r\n\r\nProvides a simple way to create and manage GUI layouts, via GUI elements. GUI\r\nelements are self-contained objects that can be positioned, drawn and updated\r\nindependently of each other, which provide some basic functionality that is\r\nexpected from a GUI toolkit.\r\n\r\n\r\n### GuiToolkit Features:\r\n\r\n- GUI elements can be drawn and updated independently or as part of a GUI element collection\r\n- GUI elements can be positioned with an abolute position, or relative to other GUI elements\r\n- GUI elements can be easily subclassed, to use custom Update and/or Draw methods\r\n- GUI element draw methods are implemented as static methods to allowing for custom elements to have a consistent look\r\n- Complex GUI elements provide OwnerDraw functionality\r\n- GUI element collections provide element anchoring functionalty for maintaining relative element positions within the collection\r\n- GUI elements are cropped to their bounds (via ScissorTest)\r\n\r\n\r\n### Built-In Elements:\r\n\r\n- Element Collections:\r\n  - Layout (Top level GUI layout)\r\n  - Panel\r\n  - TablePanel\r\n- Elements:\r\n  - Label\r\n  - ListBox\r\n  - PictureBox\r\n  - ShadowLabel\r\n\r\n\r\n### Element Adornments:\r\n- Borders: Solid, Raised, 3D\r\n\r\n\r\n### API Reference\r\n\r\n#### GuiElement (base class)\r\n\r\nProperties:\r\n- Name\r\n- Bounds, Size, Location\r\n- Padding, Margin\r\n- BackColour\r\n- Enabled, Visible\r\n\r\nMethods:\r\n- Update()\r\n- Draw()\r\n- Activate()\r\n- HitTest()\r\n\r\n#### ... more to come\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchristopherph%2Ftbr-csharp.monogame","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchristopherph%2Ftbr-csharp.monogame","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchristopherph%2Ftbr-csharp.monogame/lists"}