Skip to content

learnsmartcoding/smartcertify-ui-angular19

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SmartCertify Clean Architecture .NET 9 API + Angular 19 + Azure services

Welcome to the SmartCertify Clean Architecture .NET 9 API project! This repository showcases how to build a robust API with a clean architecture using .NET 9, following best practices to design scalable and maintainable applications.

The project is structured with a focus on Clean Architecture, utilizing the Entity Framework Core (EF Core) for database access and Swagger, Scalar,and NSwag for API documentation.


Episode Overview

How to Build an Online Course Certification Platform | Architecture & App Overview

Welcome to Episode 1 of the SmartCertify series! πŸš€ In this video, we’ll kick off by exploring the architecture and overview of the SmartCertify App, a full-stack web application designed to revolutionize online course certification.

Discover the clean architecture design, learn how the app is structured, and see how we’ll use cutting-edge technologies like Angular 19, .NET Core 9 Web API, and Azure. Whether you’re a beginner or an experienced developer, this series will guide you step-by-step to build a powerful, scalable platform for the future of online education.

Key Topics:

  • Project architecture and structure
  • App overview and high-level design
  • Exploring heavy Azure Services that we will use in this Application

Install SQL Express, SSMS, Azure Data Studio & Connect to SQL Server | Step-by-Step Guide

In this video, learn how to install SQL Express, SQL Server Management Studio (SSMS), and Azure Data Studio. We’ll guide you through connecting to a SQLExpress server and accessing your database. Perfect for beginners starting with SQL databases! Stay tuned for more episodes in our SmartCertify series, where we build a robust online course certification platform.

Key Topics:

  • Installation of SQL Tools

  • Azure Data Studio Installation

  • SQL Express Installation, SQL Server Management Studio (SSMS) Installation

  • Install SQL Server and Tools

  1. SQL Server Management Studio (SSMS)
    Download and install SQL Server Management Studio (SSMS) to manage your SQL Server databases.

  2. SQL Server Express Edition
    SQL Server 2022 Express is a free edition suitable for development and small applications.

  3. Azure Data Studio
    An alternative to SSMS for working with SQL databases, designed for data professionals who prefer a cross-platform tool.


πŸ’¬ Got questions or stuck? Drop a comment or join our Telegram community for quick help!

πŸ’‘ Want to ask questions, discuss coding, and interact with others? πŸ‘‰ Join our community group here: t.me/LearnSmartCodingYTCommunity

Video Timestamp:

  • 00:00 - App Demo & Features Overview
  • 06:35 - Architecture & Tech Stack Explained
  • 10:30 - Install SQL Tools & Connect to DB
  • 19:22 - SQL Basics for Beginners
  • 44:23 - Database Design: Tables, Keys, Constraints
  • 1:00:16 - .NET Core 9 Web API Setup (Clean Architecture)
  • 1:25:41 - Git & Azure DevOps for Beginners
  • 1:42:31 - Azure Policy to Save Costs
  • 2:01:29 - Secure Azure SQL Connections
  • 2:09:45 - Angular 19 Standalone Components
  • 2:31:51 - Angular Data Binding & Directives
  • 2:55:18 - Lazy Loading & Routing in Angular
  • 3:09:16 - Angular Signals & State Management
  • 3:26:52 - Full CRUD API with Patch + Validation
  • 4:51:00 - Reusable API Service in Angular
  • 5:02:18 - Input/Output Filters & Component Comm
  • 5:24:14 - Secure Apps with Azure AD B2C
  • 6:12:20 - Deploy .NET API to Azure with CI/CD
  • 6:51:24 - Deploy Angular 19 to Azure with CI/CD
  • 7:18:01 - Monitor APIs with App Insights
  • 7:36:44 - Handle 500 Errors in Angular with Toast
  • 7:41:33 - Set Alerts for 500 Errors in App Insights
  • 7:52:13 - Azure Functions HTTP Trigger (Email Alerts)
  • 8:15:28 - CI/CD for Azure Functions with DevOps
  • 8:34:20 - Enrich JWT with Azure AD B2C API Connector
  • 8:51:56 - Background Service for DB Tasks
  • 9:00:13 - Email Automation via Timer Trigger
  • 9:08:12 - Public vs Private Azure Containers
  • 9:23:37 - Secure Image Upload: Angular + .NET
  • 9:33:03 - Generate Secure SAS Tokens in .NET
  • 9:39:55 - Fetch Azure AD B2C Data with Graph API
  • 9:57:14 - Role-Based Auth with AD B2C & Angular
  • 10:04:20 - Azure Key Vault + Managed Identity
  • 10:33:35 - Managed Identity vs Service Principal

SQL Basics for Beginners: Step-by-Step Guide with Examples

In this episode, we dive into the basics of SQL, including database creation, table design, constraints, and SQL commands like SELECT, INSERT, UPDATE, DELETE, etc. This is a must-watch for beginners who want to understand how databases work.

Key Topics:

  • SQL commands (SELECT, INSERT, UPDATE, DELETE)
  • Database design and normalization
  • Primary/Foreign Keys and Constraints

Beginner's Guide to Database Design: Tables, Keys, and Constraints

Unlock the foundations of database design in this beginner-friendly guide. In this video, we explore key concepts like tables, primary keys, foreign keys, and constraints while walking through a real-world schema for a course certification app. Learn about designing efficient databases, creating relationships between tables, and using constraints to maintain data integrity. This practical, step-by-step guide is perfect for developers, students, or anyone interested in SQL and database management.

Key Topics:

  • Understanding database design
  • Creating tables with constraints
  • Primary/Foreign Keys and Indexes
  • Setting up databases
  • Creating and managing tables
  • Understanding primary keys and foreign keys
  • Adding constraints for data validation
  • SQL basics: SELECT, INSERT, UPDATE, DELETE

Build .NET Core 9 Web API with Clean Architecture | Project Setup

In this video, we’ll walk through the process of creating a .NET Core 9 Web API project using Clean Architecture principles. We'll set up the project structure, configure Entity Framework (EF) Core, and generate entities from the database we built in the previous episode. Additionally, we’ll show how to configure Swagger alternatives in .NET Core 9, as Swagger's default scaffold is removed. Perfect for anyone looking to structure their Web API efficiently and learn about the latest .NET Core 9 changes.

Key Topics:

  • .NET 9 Web API project setup using Clean Architecture Princeples
  • Scaffold database entities with EF Core
  • Swagger setup and configuration. NSwag and Scalar for API documentation.

Git & Azure DevOps for absolute beginners!

Are you an absolute beginner in Git or Azure DevOps? This video is your ultimate guide! We’ll walk you through the basics of Git, including essential commands, and show you how to set up an Azure DevOps account from scratch. Learn how to create repositories, push your local code to the Azure DevOps repo, and manage your projects seamlessly. Whether you're new to version control or looking to understand Azure DevOps, this tutorial has everything you need to get started.

Key Topics:

  • Git basics and setup

  • Azure DevOps account and repository creation

  • Pushing code to Git with Git commands

  • Setting up your Azure DevOps account.

  • Overview of Azure DevOps and its features.

  • Step-by-step repo creation in Azure DevOps.

  • Using Git commands to push code from local to remote repositories.

  • Pro tips for managing your code with Git and Azure DevOps.

  • Git Commands to Initialize and Push Code to Repository

To get started with version control, follow these Git commands to set up a new Git repository and push your code to Azure DevOps.

# Initialize a new Git repository in your local project
git init

# Link your local repository to the remote repository on Azure DevOps
git remote add origin <your_remote_api_git_url>

# Fetch the latest information from the remote repository
git fetch origin

# Create a new branch named 'main' and switch to it
git checkout -b main

# Stage all changes in your local project for the next commit
git add .

# Commit the staged changes with a message
git commit -m "Initial commit"

# Push the 'main' branch to the remote repository
git push -u origin main

Git Commands Explanation

git init
Initializes a new Git repository in your local project directory.

git remote add origin <URL>
Links your local Git repository to a remote repository. In this case, it connects to the Azure DevOps repository.

git fetch origin
Fetches updates from the remote repository without merging them into your local branch.

git checkout -b main
Creates a new branch named main and switches to it. This step aligns your local branch naming with the remote repository's naming convention.

git add .
Stages all the changes you've made in your local repository for the next commit.

git commit -m "Initial commit"
Commits the staged changes to the local repository with a descriptive message.

git push -u origin main
Pushes the main branch to the remote repository and sets it as the default upstream branch for future pushes/pulls.

  • Save Money with Azure Policy: Restrict SQL Database to Basic Tier | Full Step-by-Step Guide

    In this step-by-step Azure tutorial, learn how to create and assign a custom Azure Policy to restrict SQL Database creation to the cost-effective Basic tier. Watch as we:

    Create a new Azure Subscription Define a custom Azure Policy with restrictions for SQL Databases Assign the policy to the new subscription Create an SQL Server and Database under the subscription Test the policy enforcement by attempting to select a pricing tier other than Basic This tutorial is perfect for Azure beginners, cloud administrators, and developers looking to manage resources effectively and control costs.

    πŸ“Œ What You’ll Learn:

    • What is Azure Policy?
    • How to define and assign a custom policy
    • Enforcing SQL Database SKU restrictions in Azure
    • Testing policy functionality in real time

    Sample Policy Shown in the Video

{
  "properties": {
    "displayName": "Restrict SQL Database SKU to Basic",
    "policyType": "Custom",
    "mode": "All",
    "description": "This policy restricts the creation of Azure SQL Databases to the Basic SKU only.",
    "metadata": {
      "category": "SQL",
      "createdBy": "your userid guid here",
      "createdOn": "2025-01-10T19:16:33.2197985Z",
      "updatedBy": null,
      "updatedOn": null
    },
    "version": "1.0.0",
    "parameters": {},
    "policyRule": {
      "if": {
        "allOf": [
          {
            "field": "type",
            "equals": "Microsoft.Sql/servers/databases"
          },
          {
            "not": {
              "field": "Microsoft.Sql/servers/databases/sku.name",
              "equals": "Basic"
            }
          }
        ]
      },
      "then": {
        "effect": "deny"
      }
    },
    "versions": [
      "1.0.0"
    ]
  },
  "id": "/subscriptions/your-subscription-id/providers/Microsoft.Authorization/policyDefinitions/yourid",
  "type": "Microsoft.Authorization/policyDefinitions",
  "name": "ee15c7b5-dc76-43f2-aa9e-876f286a460c",
  "systemData": {
    "createdBy": "learnsmartcoding@gmail.com",
    "createdByType": "User",
    "createdAt": "2025-01-10T19:16:33.2054339Z",
    "lastModifiedBy": "learnsmartcoding@gmail.com",
    "lastModifiedByType": "User",
    "lastModifiedAt": "2025-01-10T19:16:33.2054339Z"
  }
}
  • Mastering Secure Azure SQL Database Connections Effortlessly

    Learn how to connect your Azure SQL Database to Azure Data Studio in this step-by-step tutorial! We’ll guide you through configuring the Azure SQL server firewall to allow your local system's IP address, ensuring secure and seamless access. Perfect for developers and cloud enthusiasts looking to manage Azure SQL databases efficiently.

    πŸ“Œ Topics Covered:

    • Configuring the Azure SQL server firewall
    • Finding your local IP address for firewall rules
    • Connecting to Azure SQL Database using Azure Data Studio
    • Troubleshooting common connectivity issues
  • Mastering Angular 19 Standalone Components Quickly | Angular 19 first Episode

    Kickstart your Angular journey with this comprehensive beginner's guide! Learn how to set up your local environment by installing Node.js and Angular, create your first Angular project, and understand the basics of Angular components. This video simplifies key concepts and walks you through everything you need to know to start building Angular applications. Perfect for developers at any level!

  • Master Angular Data Binding and Directives | Complete Beginner's Guide

    Unlock the power of Angular with this comprehensive guide to data binding and directives. Learn how to efficiently bind data between your components and templates using interpolation, property binding, event binding, and two-way binding. Dive into Angular's powerful built-in directives like *ngIf, *ngFor, and explore the latest @if() syntax for cleaner and modern conditional rendering. Whether you're new to Angular or looking to sharpen your skills, this tutorial is perfect for beginners. Start building interactive and dynamic web apps today!

  • Supercharge Your Angular 19 App with Lazy Loading Techniques & Routing

    Learn how to implement efficient and modern Angular Routing with Lazy Loading in Angular 19, designed for standalone components. In this video, we’ll cover how to set up dynamic routes, lazy load your components to optimize performance, and handle 404 pages with wildcard routes. Whether you're building small apps or large-scale enterprise solutions, understanding routing and lazy loading is essential for creating seamless, fast-loading applications. Perfect for beginners and intermediate Angular developers!

  • Build a Full Course App using Angular 19 - Interactive Demo!

    πŸš€ Explore the Complete User Journey in Our Course App!

    In this demo, we walk you through how to create an interactive, real-world course app where users can: βœ… Browse and select available courses βœ… Start, pause, and resume tests βœ… Complete tests and receive certifications βœ… Access video references for deeper understanding

    This app is built using the latest Angular 18 for the frontend and .NET Core 8 for the backend, integrating powerful features like Azure AD B2C for secure authentication and dynamic UI/UX design.

    Whether you're looking to build a similar app or test your skills, this video is your perfect guide. Watch now and get ready to create an engaging and functional application for online learning!

  • Mastering Angular Signals in 2025 for EASY State Management

    In this video, you'll learn all about Angular Signals, a new and powerful way to manage state and keep your UI in sync with data changes in Angular applications. Discover how Signals simplify the process of state management by automatically updating the UI when their value changes, making it easier and more efficient than ever to create reactive applications.

    We also explore Computed Signals and Effects, which enable you to work with dynamic and real-time data efficiently. Plus, see a practical example with our Contacts Component to see Signals in action!

  • .NET Core 9 Web API – Build Full CRUD with PATCH | Clean Architecture & Fluent Validation

    πŸš€ Mastering .NET Core 9 Web API – Full CRUD with PATCH, Clean Architecture & Fluent Validation! - Episode 12

    In this episode, we dive deep into .NET Core 9 Web API and implement 3 controllers with complete CRUD operations (GET, POST, PUT, DELETE, PATCH). We follow Clean Architecture principles, ensuring a scalable and maintainable API structure.

    πŸ”₯ Key Topics Covered: βœ… Implementing GET, POST, PUT, DELETE & PATCH endpoints in .NET Core 9 βœ… Using Fluent Validation for robust input validation βœ… Applying Clean Architecture to structure the Web API efficiently βœ… Handling partial updates (PATCH) properly βœ… Ensuring best practices for API design and maintainability

    πŸ“Œ Whether you're a beginner or an experienced developer, this tutorial will help you build a well-structured, professional-grade Web API.

  • Mastering API Calls In Angular With A Reusable Service

    In this video, we’ll build an Angular service to fetch data from a .NET Web API using HttpClient. We’ll cover best practices, how to handle API calls efficiently, and demonstrate a real-time example of fetching and displaying data in an Angular app. πŸš€

    πŸ‘‰ What You’ll Learn: βœ… How to create an Angular service using ng generate service βœ… Use HttpClient to call a .NET Web API βœ… Implement best practices for API calls in Angular βœ… Handle error responses and implement loading states βœ… Display fetched data dynamically in an Angular component

    πŸ’‘ This is a must-watch for developers working with Angular & .NET Core APIs! Don’t forget to like, share, and subscribe for more hands-on tutorials. πŸ”₯

  • Angular Input() & Output() Explained | Parent-Child Communication with Filters

    In this video, Learn how to use @Input() and @Output() in Angular to enable smooth parent-child component communication. In this video, we demonstrate real-world filtering functionality using a course browsing example. The child component handles the filter selection, and the parent component updates the course list accordingly. Master Angular component interaction with this practical hands-on guide! πŸš€

    πŸ”Ή Topics Covered: βœ… Understanding @Input() for passing data from parent to child βœ… Using @Output() and EventEmitter for child-to-parent communication βœ… Implementing a course filtering system using these concepts βœ… Best practices for Angular component interaction

  • Azure AD B2C Makes Securing Angular And .NET Apps Easy And FAST

    In this video, learn how to configure Azure AD B2C in the Azure portal for Angular and .NET Web API applications. We will walk through the step-by-step setup, integrating Azure AD B2C authentication into both frontend (Angular) and backend (.NET Core Web API) applications. Finally, we will test and demo the authentication flow to see it in action!

    πŸ”Ή What You'll Learn: βœ… Azure AD B2C setup in the Azure portal βœ… App registrations for Angular and .NET Web API βœ… Configuring authentication in Angular using MSAL βœ… Securing .NET Web API with Azure AD B2C βœ… Testing login, logout, and API authorization

    πŸ“Œ Whether you're a beginner or an experienced developer, this tutorial will help you seamlessly integrate Azure AD B2C authentication in your apps!

  • Deploy Your .NET Core 9 Web API to Azure For FREE | CI/CD with Azure DevOps

    In this step-by-step tutorial, we will deploy a .NET Core 9 Web API to Azure App Service using Azure DevOps CI/CD. We'll cover everything from setting up a free F1 App Service, managing code in Azure DevOps, creating a CI/CD pipeline, using a service principal for secure deployment, and configuring connection strings in environment settings.

    πŸ”Ή What You’ll Learn in This Video: βœ… Create a .NET Core 9 Web API Azure App Service (Free F1 Plan) βœ… Move your project from GitHub to Azure DevOps βœ… Set up CI/CD Pipelines for automated deployment βœ… Create a Service Principal for secure authentication βœ… Configure Build & Release Pipelines to deploy code βœ… Manage environment variables & connection strings in Azure

    By the end of this video, your .NET Core 9 Web API will be live on Azure, fully automated with Azure DevOps CI/CD! πŸš€

  • Angular Input() & Output() Explained | Parent-Child Communication with Filters

    In this step-by-step tutorial, we will deploy an Angular 19 app to Azure App Service using Azure DevOps CI/CD. This video covers the complete process, from creating a free F1 App Service, setting up Azure DevOps repositories, configuring CI/CD pipelines, using a service principal for secure deployment, and handling environment settings in Azure.

    πŸ”Ή What You’ll Learn in This Video:

    • βœ… Create an Angular 19 App Service on Azure (Free F1 Plan)
    • βœ… Move project from GitHub to Azure DevOps
    • βœ… Set up CI/CD Pipelines for automated Angular deployment
    • βœ… Use Service Principal for secure authentication
    • βœ… Configure Build & Release Pipelines to deploy Angular
    • βœ… Manage environment variables & settings in Azure

    By the end of this video, your Angular 19 app will be live on Azure, fully automated with Azure DevOps CI/CD! πŸš€

  • Azure AD B2C Makes Securing Angular And .NET Apps Easy And FAST

    In this video, learn how to configure Azure AD B2C in the Azure portal for Angular and .NET Web API applications. We will walk through the step-by-step setup, integrating Azure AD B2C authentication into both frontend (Angular) and backend (.NET Core Web API) applications. Finally, we will test and demo the authentication flow to see it in action!

    πŸ”Ή What You'll Learn: βœ… Azure AD B2C setup in the Azure portal βœ… App registrations for Angular and .NET Web API βœ… Configuring authentication in Angular using MSAL βœ… Securing .NET Web API with Azure AD B2C βœ… Testing login, logout, and API authorization

    πŸ“Œ Whether you're a beginner or an experienced developer, this tutorial will help you seamlessly integrate Azure AD B2C authentication in your apps!

  • Deploy Your .NET Core 9 Web API to Azure For FREE | CI/CD with Azure DevOps

    In this step-by-step tutorial, we will deploy a .NET Core 9 Web API to Azure App Service using Azure DevOps CI/CD. We'll cover everything from setting up a free F1 App Service, managing code in Azure DevOps, creating a CI/CD pipeline, using a service principal for secure deployment, and configuring connection strings in environment settings.

    πŸ”Ή What You’ll Learn in This Video:

    • βœ… Create a .NET Core 9 Web API Azure App Service (Free F1 Plan)
    • βœ… Move your project from GitHub to Azure DevOps
    • βœ… Set up CI/CD Pipelines for automated deployment
    • βœ… Create a Service Principal for secure authentication
    • βœ… Configure Build & Release Pipelines to deploy code
    • βœ… Manage environment variables & connection strings in Azure

    By the end of this video, your .NET Core 9 Web API will be live on Azure, fully automated with Azure DevOps CI/CD! πŸš€

  • Deploy Angular 19 to Azure App Service | CI/CD with Azure DevOps

    In this step-by-step tutorial, we will deploy an Angular 19 app to Azure App Service using Azure DevOps CI/CD. This video covers the complete process, from creating a free F1 App Service, setting up Azure DevOps repositories, configuring CI/CD pipelines, using a service principal for secure deployment, and handling environment settings in Azure.

    πŸ”Ή What You’ll Learn in This Video:

    • βœ… Create an Angular 19 App Service on Azure (Free F1 Plan)
    • βœ… Move project from GitHub to Azure DevOps
    • βœ… Set up CI/CD Pipelines for automated Angular deployment
    • βœ… Use Service Principal for secure authentication
    • βœ… Configure Build & Release Pipelines to deploy Angular
    • βœ… Manage environment variables & settings in Azure

    By the end of this video, your Angular 19 app will be live on Azure, fully automated with Azure DevOps CI/CD! πŸš€

  • Mastering Azure Application Insights For PRO API Monitoring

    In this video, we will integrate Azure Application Insights into a .NET Core 9 Web API to monitor performance, detect failures, and log application telemetry. Additionally, we will cover global exception handling and how to return meaningful error responses, ensuring a better user experience and enabling users to contact support when issues arise.

    πŸ”Ή What You’ll Learn in This Video:

    • βœ… Set up Azure Application Insights for real-time monitoring
    • βœ… Track API requests, failures, and performance metrics
    • βœ… Implement Global Exception Handling in .NET Core 9
    • βœ… Return structured error responses with relevant details
    • βœ… Include user-friendly support info in API error messages
    • βœ… Real-world debugging & troubleshooting best practices

    By the end of this tutorial, your .NET Core 9 Web API will be equipped with robust monitoring and error handling, making it production-ready with detailed insights for debugging! πŸš€

  • Handle 500 Errors Gracefully in Angular πŸš€ | Global Exception Handling & Toastr Notifications

    Handling errors properly is crucial for a great user experience! In this video, we will implement global exception handling in Angular using an HTTP Interceptor to catch 500 Internal Server Errors returned from a .NET Core Web API. We will display a persistent Toastr notification with a request ID, allowing users to contact support if needed.

    πŸ”₯ What You’ll Learn:

    • βœ… Create an HTTP Interceptor to catch API errors globally.
    • βœ… Display Toastr notifications for errors, keeping them visible until closed.
    • βœ… Extract and show request IDs from API error responses.
    • βœ… Improve user experience by handling errors in a real-world scenario.

    If you're working with Angular and .NET Core APIs, this is a must-watch! πŸš€

  • Set Up Azure App Insights Alerts for 500 Errors | Monitor & Detect API Failures

    Proactively monitor your .NET Core Web API errors with Azure Application Insights! In this video, we’ll set up alerts for 500 exceptions in Azure App Insights, ensuring that critical errors are detected and addressed quickly.

    πŸ”₯ What You’ll Learn:

    • βœ… Configure Azure App Insights Alerts to detect API failures automatically.
    • βœ… Use a custom Kusto Query to fetch and track exceptions.
    • βœ… Receive real-time notifications when a 500 Internal Server Error occurs.
    • βœ… Improve API reliability and quickly respond to application failures.

πŸ”” This alert setup is possible because we previously configured App Insights for our Web API. If you haven’t done that yet, check out our earlier video!

  • Azure Functions Guide: Create .NET Core 9 Isolated HTTP Trigger for Email Alerts

    Azure Functions provide a serverless computing model, making it easy to run event-driven code without managing infrastructure. In this video, we will:

    • βœ… Understand Azure Functions – What they are and when to use them
    • βœ… Create an Azure Function in the portal
    • βœ… Build an HTTP-triggered function in Visual Studio using .NET Core 9 (STS) isolated model
    • βœ… Accept userId and notificationId as request body
    • βœ… Fetch notification details from a database and send an email to the user
    • βœ… Learn how serverless functions work with databases and external services

    This real-world example demonstrates how to use Azure Functions for automating tasks like sending notifications with minimal infrastructure overhead.

  • CI/CD for Azure Functions: Deploy .NET Core 9 Function App via Azure DevOps

    Automate your Azure Function App deployment with Azure DevOps CI/CD pipeline! In this video, we will:

    • βœ… Push the Azure Function App code to Azure DevOps
    • βœ… Set up a CI/CD pipeline to automatically build and deploy the function
    • βœ… Use the Azure Function App created in the previous video
    • βœ… Configure application settings in the Azure portal for smooth execution
    • βœ… Ensure secure and efficient deployment with best practices

    This tutorial eliminates manual deployments and ensures continuous integration and delivery for serverless applications.

  • Azure AD B2C API Connector: Enrich JWT Tokens with User Data via Azure Functions

    Enhance Azure AD B2C authentication by integrating an API Connector with Azure Functions! πŸš€ In this video, we will:

    • βœ… Add two more HTTP trigger functions to our existing Azure Function App
    • βœ… Integrate one function with Azure AD B2C API Connector to handle authentication requests
    • βœ… Read token information, fetch user details from the database, and update the UserProfile table
    • βœ… Enrich Azure AD B2C tokens with additional claims like UserID and Role
    • βœ… Demonstrate how this enriched token will be used later in Angular for role-based access control

    This tutorial helps customize authentication flows, ensuring better security and a personalized experience for users.

  • .NET Core Background Service | Automate Database Tasks in Web API

    Learn how to implement a background service in .NET Core Web API that runs automatically and interacts with a database! πŸš€ In this video, we will:

    • βœ… Create a Background Service in .NET Core Web API
    • βœ… Configure it to run every hour to process new records in the Notification table
    • βœ… Retrieve all users from the UserProfile table
    • βœ… Insert new notification records for each user into the UserNotification table
    • βœ… Understand how a background service interacts with a database behind the scenes

    This tutorial is perfect for automating scheduled tasks like notifications, cleanups, and background data processing in your ASP.NET Core applications!

  • Automate Emails Like a Pro! Azure Function Timer & HTTP Trigger in .NET

    In this video, we will explore Azure Functions with both Timer and HTTP Triggers to automate email notifications! πŸš€ Here's what you'll learn:

    • βœ… Create a Timer-Triggered Azure Function to check the UserNotification table for unsent notifications
    • βœ… Invoke another HTTP-triggered Azure Function to send emails
    • βœ… Pass UserId & NotificationId dynamically to trigger the email-sending function
    • βœ… Configure local settings & Azure Function App settings for seamless execution
    • βœ… Understand function-to-function communication in Azure

    This tutorial is perfect for implementing scheduled tasks, event-driven notifications, and serverless automation using .NET Core 9 (Isolated Model) with Azure Functions.

  • Effortless & Secure Image Upload to Azure | Angular & .NET Core API Guide

    πŸš€ Learn how to securely upload images from an Angular app to Azure Storage using .NET Core API! In this step-by-step guide, we will:

    • βœ… Create API Endpoints to handle image uploads
    • βœ… Upload Images from Angular App with a simple UI
    • βœ… Securely Store Images in a private Azure Storage container
    • βœ… Save Image URLs in the UserProfile table for future retrieval
    • βœ… Best Practices for Secure File Upload & Storage

    πŸ“’ By the end of this video, you’ll be able to integrate secure image uploads in your own applications!

  • πŸ”’ Protect Your Azure Storage! Generate SAS Token in .NET Core API

    πŸ” Secure Azure Storage with SAS Tokens! In this video, we’ll show you how to generate SAS tokens in .NET Core API to securely access and manage user files in Azure Blob Storage.

    • βœ… Generate SAS Token in .NET Core API to control access to private Azure Storage containers
    • βœ… User-Specific Access – Ensure only logged-in users can access their images
    • βœ… Set expiry & permissions for controlled, time-bound access to files
    • βœ… Use the SAS URL in Angular to display images securely and privately
    • βœ… Best Practices for securing private files in Azure Storage

    πŸš€ By the end of this video, you’ll know how to securely manage and control file access in Azure Storage using SAS tokens and .NET Core API. Protect user images and other private content with ease!

  • Securely Fetch Azure AD B2C Data with .NET Core & Microsoft Graph API

    πŸ” Want to unlock user details from Azure AD B2C? In this step-by-step video, we will:

    • βœ… Set up App Registration for seamless access to Microsoft Graph API
    • βœ… Configure API Permissions to securely retrieve Azure AD B2C user information
    • βœ… Implement Graph API calls within your .NET Core Web API
    • βœ… Fetch key user details like name, email, and roles for your app
    • βœ… Real-world use case: How to enrich user data in your applications

    πŸš€ By the end of this video, you’ll have the skills to securely fetch and utilize Azure AD B2C user data via Microsoft Graph API in your .NET Core applications!

  • Master Full-Stack Development with Angular, .NET Core & Azure | Build Real-World App

Full Video https://youtu.be/zlybQJVLYrQ

Project Setup

Requirements

  • .NET 9 SDK
  • Visual Studio 2022 or higher
  • SQL Server or SQL Server Express
  • SQL Server Management Studio (SSMS)
  • Azure Data Studio
  • Azure DevOps account (for CI/CD)

Installation

  1. Clone this repository:

    git clone https://github.com/learnsmartcoding/smartcertify-api-clean-architecture-dotnet9
  2. Navigate to the project folder:

    cd smartcertify-api-clean-architecture-dotnet9
  3. Open the solution in Visual Studio.

  4. Restore the NuGet packages:

    dotnet restore
  5. Run the project:

    dotnet run
  6. Open the Swagger UI to test the API at:
    http://localhost:5000/swagger


Contributing

Feel free to fork the repository and create pull requests. Contributions are welcome!


License

This project is licensed under the MIT License - see the LICENSE file for details.

Smartcertify UI Setup

This project was generated using Angular CLI version 19.0.4.

Development server

To start a local development server, run:

ng serve

Once the server is running, open your browser and navigate to http://localhost:4200/. The application will automatically reload whenever you modify any of the source files.

Code scaffolding

Angular CLI includes powerful code scaffolding tools. To generate a new component, run:

ng generate component component-name

For a complete list of available schematics (such as components, directives, or pipes), run:

ng generate --help

Building

To build the project run:

ng build

This will compile your project and store the build artifacts in the dist/ directory. By default, the production build optimizes your application for performance and speed.

Running unit tests

To execute unit tests with the Karma test runner, use the following command:

ng test

Running end-to-end tests

For end-to-end (e2e) testing, run:

ng e2e

Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs.

Additional Resources

For more information on using the Angular CLI, including detailed command references, visit the Angular CLI Overview and Command Reference page.

About

App created with Angular 19 Standalone Components

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published