This is an e-commerce application using Blazor Web Assembly and Blazor Server, consuming .NET 6 API. All the data involved will be linked and stored in the database.
On the front-end, customers can browse products, add products to the cart, and pay with Stripe integrated with the website.
wasm-compressed.mp4
On the back-end, Authentication is applied where only Admin can access and manage the contents, including product information displayed on the front-end, customer details, and order information.
server-compressed.mp4
The front-end consumes .NET 6 API to perform CRUD operations.
![api](https://private-user-images.githubusercontent.com/107772913/276757645-ae937740-6d49-4fc4-908f-65d0f9820356.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU2NjMyNjksIm5iZiI6MTcyNTY2Mjk2OSwicGF0aCI6Ii8xMDc3NzI5MTMvMjc2NzU3NjQ1LWFlOTM3NzQwLTZkNDktNGZjNC05MDhmLTY1ZDBmOTgyMDM1Ni5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwOTA2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDkwNlQyMjQ5MjlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0wOGZjNzJmYjJmY2JlY2NmMThjM2QwYTJjZmQ3MGQ3YmM5NmZjMTExOGQzMTkxZjllOWIxYzQ2OWUxN2I4MDc2JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.ZYQrpE2YYCbFSMdbEZxn2brUpQoHUWDxVloswzWP3bU)
- Blazor
- .NET 6 API
- EF
- C#
- .NET
- Javascript
- CSS
- Bootstrap5
- Radzen
- Stripe Payment
- Postgresql
Prerequisites:
- Follow the steps here to set up a local copy of dotnet
- Visual Studio 2017 15.7 latest preview - download
We recommend getting the latest preview version of Visual Studio and updating it frequently. The Blazor editing experience in Visual Studio depends on new features of the Razor language tooling and will be updated frequently.
When installing Visual Studio choose the following workloads:
- ASP.NET and Web Development
- Visual Studio extension development features
If you have problems using Visual Studio with Blazor.sln please refer to the developer documentation.
To do local development of the Blazor tooling experience in VS, select the Microsoft.VisualStudio.BlazorExtension project and launch the debugger.
The Blazor Visual Studio tooling will build as part of the command line build when on Windows.
cd TangyWeb_Server
dotnet ef migrations list --project ../Tangy_DataAccess
dotnet ef migrations add <migration_name> --project ../Tangy_DataAccess
dotnet ef database update
cd TangyWeb_Server
dotnet ef migrations list --project ../Tangy_DataAccess
dotnet ef migrations remove
dotnet ef database update
A personal Gmail address is used as an SMTP server in C# .NET using SmtpClient. There are some steps to follow:
- Enable two-factor authentication (2FA) on your Gmail account. This is a security measure that will help to protect your account from unauthorized access.
- Create an app password for your Gmail account. This is a unique password that you will use to authenticate with the SMTP server.
- Configure your C# code to use the following SMTP settings: Host: smtp.gmail.com Port: 587 EnableSsl: true Credentials: new NetworkCredential("your_gmail_address", "your_app_password")
- For postgresql, use DateTime.UtcNow instead of DateTime.Now
- Add Scaffold Identity in ASP.NET Core projects, learn more
This project is licensed under the MIT