devkimchi / aspire-youtube-summariser

This provides sample Aspire apps that summarise a YouTube video transcript to a given language

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Aspire Youtube Summariser

This provides sample Aspire-orchestrated apps that summarise a YouTube video transcript to a given language.

Prerequisites

Getting Started

Explore the app

  1. Checkout to the existing tag

    git checkout tags/existing
    dotnet restore && dotnet build
  2. Rename appsettings.Development.sample.json in the ApiApp project to appsettings.Development.json and add Azure OpenAI Service details – endpoint, API key and deployment ID – to the file. You can get these details from the Azure Portal.

  3. Run the API app in a terminal

    dotnet run --project AspireYouTubeSummariser.ApiApp
  4. Run the web app in another terminal

    dotnet run --project AspireYouTubeSummariser.WebApp

Add .NET Aspire

  1. Checkout to the aspire tag

    git checkout tags/aspire
    dotnet restore && dotnet build
  2. Run the Aspire AppHost app

    dotnet run --project AspireYouTubeSummariser.AppHost

Add Redis Cache to WebApp

  1. Checkout to the redis tag

    git checkout tags/redis
    dotnet restore && dotnet build
  2. Run the Aspire AppHost app

    dotnet run --project AspireYouTubeSummariser.AppHost

Update Resiliency Settings

  1. Checkout to the polly tag

    git checkout tags/polly
    dotnet restore && dotnet build
  2. Run the Aspire AppHost app

    dotnet run --project AspireYouTubeSummariser.AppHost

Add Azure Queue Storage and Table Storage for Async Processing

  1. Checkout to the queue tag

    git checkout tags/queue
    dotnet restore && dotnet build
  2. Rename appsettings.Development.sample.json in the Worker project to appsettings.Development.json and add Azure OpenAI Service details – endpoint, API key and deployment ID – to the file. You can get these details from the Azure Portal.

  3. Rename appsettings.Development.sample.json in the AppHost project to appsettings.Development.json and add Azure Queue/Table Storage Account details – connection strings – to the file You can get these details from the Azure Portal.

  4. Run the Aspire AppHost app

    dotnet run --project AspireYouTubeSummariser.AppHost

Deploy to Azure

  1. Checkout to the main branch

    git switch main
    dotnet restore && dotnet build
  2. Rename appsettings.Development.sample.json in the AppHost project to appsettings.Development.json.

  3. Add Azure OpenAI Service details – endpoint, API key and deployment ID – to the file. You can get these details from the Azure Portal.

  4. Add Azure Queue/Table Storage Account details – connection strings – to the file You can get these details from the Azure Portal.

  5. Run the following commands in order:

    # Initialise azd
    AZURE_ENV_NAME="aspire$RANDOM"
    azd init -e $AZURE_ENV_NAME
    
    # Provision resources to Azure
    azd provision
    
    # Provision GitHub Actions environment
    azd pipeline config
    pwsh Set-GitHubActionsVariables.ps1 -GitHubAlias <GitHubAlias>
    
    # Provision rest of resources to Azure outside Aspire
    pwsh Run-PostProvision.ps1 -GitHubAlias <GitHubAlias>
    
    # Deploy apps to Azure
    azd deploy
  6. Push code changes to the GitHub repository to trigger a GitHub Actions workflow.

Resources

About

This provides sample Aspire apps that summarise a YouTube video transcript to a given language

License:MIT License


Languages

Language:C# 46.7%Language:HTML 21.0%Language:CSS 14.3%Language:PowerShell 14.0%Language:Bicep 2.5%Language:JavaScript 1.5%