{"id":23227972,"url":"https://github.com/egorozh/MobileToolkit","last_synced_at":"2025-08-19T14:32:58.892Z","repository":{"id":108444243,"uuid":"609517912","full_name":"egorozh/MobileToolkit","owner":"egorozh","description":"Source generators for C# Mobile Developing","archived":false,"fork":false,"pushed_at":"2023-06-04T20:09:52.000Z","size":262,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-04-27T05:03:38.597Z","etag":null,"topics":["android","source-generators","xamarin","xamarin-android","xamarin-android-binding"],"latest_commit_sha":null,"homepage":"","language":"C#","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/egorozh.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":"2023-03-04T12:24:04.000Z","updated_at":"2024-08-23T15:16:26.299Z","dependencies_parsed_at":"2024-08-23T15:27:35.302Z","dependency_job_id":null,"html_url":"https://github.com/egorozh/MobileToolkit","commit_stats":null,"previous_names":["egorozh/msg.toolkit"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorozh%2FMobileToolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorozh%2FMobileToolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorozh%2FMobileToolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/egorozh%2FMobileToolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/egorozh","download_url":"https://codeload.github.com/egorozh/MobileToolkit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230322523,"owners_count":18208537,"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":["android","source-generators","xamarin","xamarin-android","xamarin-android-binding"],"created_at":"2024-12-19T01:10:59.465Z","updated_at":"2024-12-19T01:11:00.304Z","avatar_url":"https://github.com/egorozh.png","language":"C#","readme":"[![Nuget](https://img.shields.io/nuget/v/MobileToolkit.Android?label=MobileToolkit.Android)](https://www.nuget.org/packages/MobileToolkit.Android)\n\n# .NET Mobile Toolkit\n\n## 1. Source generator for getting android controls from xml layout\n\nGet started:\n\nInstall the library as a NuGet package:\n\n```powershell\nInstall-Package MobileToolkit.Android\n# Or 'dotnet add package MobileToolkit.Android'\n\n```\nAnd usage:\n``` csharp\n\n[Activity]\n[AndroidLayout(LayoutResource = nameof(Resource.Layout.activity_main))]\npublic partial class MainActivity : Activity\n{\n    protected override void OnCreate(Bundle? savedInstanceState)\n    {\n        base.OnCreate(savedInstanceState);\n\n        SetContentView(Resource.Layout.activity_main);\n    }\n}\n\n```\nThe generated file looks like this:\n``` csharp\nusing Android.Widget;\nusing Android.Views;\n\n\nnamespace SGM.Sample.Android\n{\n    partial class MainActivity\n    {\n        public TextView TextView =\u003e this.FindViewById\u003cTextView\u003e(Resource.Id.TextView);\n\n        public Button Button =\u003e this.FindViewById\u003cButton\u003e(Resource.Id.Button);\n\n        public EditText EditText =\u003e this.FindViewById\u003cEditText\u003e(Resource.Id.EditText);\n\n        public View RecyclerView =\u003e this.FindViewById\u003cView\u003e(Resource.Id.RecyclerView);\n    }\n}\n```\n\n\n\nPlans:\n1) Source generator for generate bindings code\n2) Source generator for generate ui controls like android compose\n3) Source generator for DI container\n4) Source generator for generate outlets on .xib files\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegorozh%2FMobileToolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fegorozh%2FMobileToolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fegorozh%2FMobileToolkit/lists"}