This is a headless website setup using a singleton pattern around the Storefront API and the Observer Pattern was used by the blazor components that need to subscribe to updates.
Notes from Resources used:
- For getting started with GraphQL in dotnet https://devblogs.microsoft.com/dotnet/why-and-how-to-execute-graph-ql-queries-in-dotnet/
- Shopify's Storefront API https://shopify.dev/docs/api/storefront
- setting up graphql client https://blog.logrocket.com/integrating-graphql-blazor-application/
- improving singleton https://refactoring.guru/design-patterns/singleton/csharp/example#:~:text=Singleton%20is%20a%20creational%20design,the%20modularity%20of%20your%20code
- remove ignored files https://stackoverflow.com/questions/2347335/how-could-i-ignore-bin-and-obj-folders-from-git-repository
- using JObjects https://dev.to/iamrule/how-to-c-using-the-jobject-class-47e2