{"id":28205769,"url":"https://github.com/aetopia/storeedge","last_synced_at":"2025-06-11T11:31:54.396Z","repository":{"id":241379247,"uuid":"805476907","full_name":"Aetopia/StoreEdge","owner":"Aetopia","description":"A lightweight .NET Framework library for interacting with the Microsoft Store.","archived":true,"fork":false,"pushed_at":"2024-08-21T02:09:03.000Z","size":36,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-17T10:08:28.723Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Aetopia.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-05-24T16:57:26.000Z","updated_at":"2025-02-14T15:07:37.000Z","dependencies_parsed_at":"2024-08-06T09:50:10.679Z","dependency_job_id":null,"html_url":"https://github.com/Aetopia/StoreEdge","commit_stats":null,"previous_names":["aetopia/storeedge"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aetopia%2FStoreEdge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aetopia%2FStoreEdge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aetopia%2FStoreEdge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aetopia%2FStoreEdge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Aetopia","download_url":"https://codeload.github.com/Aetopia/StoreEdge/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Aetopia%2FStoreEdge/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259255511,"owners_count":22829484,"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":[],"created_at":"2025-05-17T10:08:28.868Z","updated_at":"2025-06-11T11:31:54.376Z","avatar_url":"https://github.com/Aetopia.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# StoreEdge\r\nA lightweight .NET Framework library for interacting with the Microsoft Store.\r\n\r\n## Usage\r\n\r\n```csharp\r\nTask\u003cReadOnlyCollection\u003cProduct\u003e\u003e GetProductsAsync(params string[] productIds)\r\n```\r\n- Obtains products for the specified product IDs.\r\n\r\n```csharp\r\nTask\u003cReadOnlyCollection\u003cstring\u003e\u003e GetPackageFamilyNamesAsync(params string[] packageFamilyNames)\r\n```\r\n- Obtains product IDs for the specified package family names.\r\n\r\n```csharp\r\nTask\u003cstring\u003e GetUrlAsync(UpdateIdentity update)\r\n```\r\n- Obtains the download URL for the specified update identity.\r\n\r\n```csharp\r\nTask\u003cReadOnlyCollection\u003cUpdateIdentity\u003e\u003e GetUpdatesAsync(Product product)\r\n```\r\n- Gets updates for the specified product.\r\n\r\n## Example\r\n```csharp\r\nusing System;\r\nusing System.Threading.Tasks;\r\nusing StoreEdge;\r\n\r\nstatic class Program\r\n{\r\n    static async Task Main()\r\n    {\r\n        // Get product IDs from package family names.\r\n        var productIds = await Store.GetPackageFamilyNamesAsync(\r\n            \"Microsoft.MinecraftUWP_8wekyb3d8bbwe\",\r\n            \"Microsoft.MinecraftWindowsBeta_8wekyb3d8bbwe\");\r\n\r\n        // Get product information from product IDs.\r\n        var products = await Store.GetProductsAsync([.. productIds]);\r\n\r\n        foreach (var product in products)\r\n        {\r\n            // Verify if a product supports an installed operating system's architecture.\r\n            var supported = product.Architecture is not null;\r\n\r\n            Console.WriteLine($\"Title: {product.Title}\");\r\n            Console.WriteLine($\"Supported: {supported}\\n\");\r\n\r\n            // Get packages/updates for a product.\r\n            foreach (var update in await Store.GetUpdatesAsync(product))\r\n            {\r\n                // Get a url for a package/update.\r\n                var url = await Store.GetUrlAsync(update);\r\n\r\n                Console.WriteLine($\"\\tUpdate Hash Code: {update.GetHashCode()}\");\r\n                Console.WriteLine($\"\\tUrl: {url}\\n\");\r\n            }\r\n        }\r\n    }\r\n}\r\n```\r\n\r\n## Building\r\n1. Download the following:\r\n    - [.NET SDK](https://dotnet.microsoft.com/en-us/download)\r\n    - [.NET Framework 4.8.1 Developer Pack](https://dotnet.microsoft.com/en-us/download/dotnet-framework/thank-you/net481-developer-pack-offline-installer)\r\n\r\n2. Run `dotnet publish` to compile \u0026 make a [NuGet](https://www.nuget.org/) package.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faetopia%2Fstoreedge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faetopia%2Fstoreedge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faetopia%2Fstoreedge/lists"}