๐ Complete Operational Guide & Setup Runbook
This guide covers local development startup, Docker environment initialization, DynamoDB visual GUI access, EF Core migrations, and production deployment operations.
๐ 1. Local Development Setupโ
Prerequisitesโ
- .NET 10 SDK (
dotnet --versionโ10.x) - Node.js 20+ & npm
- Docker Desktop
- Finnhub API Key (Free tier key from finnhub.io)
Local Stack Launchโ
# 1. Start local PostgreSQL, Redis, and Moto AWS Emulator
docker-compose up -d
# 2. Run EF Core Migrations
dotnet ef database update --project src/InventoryAlert.Infrastructure --startup-project src/InventoryAlert.Api
# 3. Launch Web API Host (Port 8080)
dotnet run --project src/InventoryAlert.Api/InventoryAlert.Api.csproj
# 4. Launch Worker Host (Port 8081)
dotnet run --project src/InventoryAlert.Worker/InventoryAlert.Worker.csproj
# 5. Launch Next.js UI Frontend (Port 3000)
cd src/ui/InventoryAlert.UI
npm run dev
๐๏ธ 2. DynamoDB Visual Admin Access (dynamodb-admin)โ
Accessing Production DynamoDB (Render Proxy)โ
Run dynamodb-admin pointing across the internet to the live Render proxy URL:
# PowerShell / Terminal:
DYNAMO_ENDPOINT=https://inventorymanagementsystem-s55e.onrender.com/aws npx dynamodb-admin
- Open
http://localhost:8001in your browser. - View, scan, search, and manage production tables (
inventoryalert-market-news,inventoryalert-company-news).
๐งช 3. Running Test Suitesโ
# Execute unit tests
dotnet test src/test/InventoryAlert.UnitTests/InventoryAlert.UnitTests.csproj
# Execute integration tests
dotnet test src/test/InventoryAlert.IntegrationTests/InventoryAlert.IntegrationTests.csproj
๐ฆ 4. Production Deploymentโ
The project builds as a multi-stage Docker container deployed to Render:
ASPNETCORE_URLS=http://+:8080(API host ingress)ASPNETCORE_ENVIRONMENT=Production