DavidAJohn / FotoStorioMicroservices

.NET application built using a microservice architecture with Docker containers. Includes a Blazor WebAssembly e-commerce store with Stripe Elements payment integration.
25 stars 5 forks source link

Marketing client application #6

Open DavidAJohn opened 1 year ago

DavidAJohn commented 1 year ago

It was always my intention to create a simple client application that enabled the creation of marketing campaigns and discounts.

There is a marketing gateway already built and the backend functionality is available in both the Discount minimal API project and the Discount gRPC project.

It really only needs to give a fictional marketing dept the ability to create a campaign with start and end dates which includes a selectable list of discounted products.

I could build something using Blazor, but I'd always wanted to demonstrate how to add something different to the mix, so the feasible options for me are:

Blazor (Wasm or Server) Angular Next.Js Vue/Nuxt

DavidAJohn commented 4 months ago

I've been keeping an eye on the changes that have been made in Angular 16 & 17 in the last year or so - particularly the introduction of standalone components and the new control flow - and I really like them.

They address the major pain points that have made Angular feel a bit cumbersome to me in the past - the complexity of the module system and the slightly awkward branching logic in template files.

So the decision has been made - the Marketing client project will be an Angular app.

DavidAJohn commented 2 months ago

The Marketing client application has now progressed to the point where discounts, campaigns, products and orders can all be viewed.

There's still more work to be done on allowing users to create and edit campaigns and discounts.

The system architecture diagram also needs to be updated to include the Marketing.Ng app and the Marketing Gateway.