# Task: Use local blob storage ## Feature `docs/FEATURES/platform-scaffold.md` ## Goal Store uploaded portraits and logos on the API server filesystem instead of Azure Blob Storage. ## Context User, client, and workspace portrait uploads already flow through `IBlobStorage`. The implementation can change without altering endpoint contracts or frontend behavior. ## Files Likely To Change - `backend/src/Socialize.Api/Infrastructure/DependencyInjection.cs` - `backend/src/Socialize.Api/Infrastructure/BlobStorage/Services/*` - `backend/src/Socialize.Api/Infrastructure/BlobStorage/Configuration/*` - `backend/src/Socialize.Api/Program.cs` - `backend/src/Socialize.Api/appsettings.Development.json` ## Constraints - Do not change API request or response contracts. - Keep upload validation behavior consistent with the existing blob storage implementation. - Serve returned blob URLs from the API host so the existing frontend can keep using `portraitUrl` and `logoUrl`. ## Done When - [x] `IBlobStorage` resolves to local filesystem storage by default. - [x] Uploaded files are served back from the API host. - [x] Backend build passes. ## Validation Commands ```bash dotnet build backend/Socialize.slnx dotnet test backend/Socialize.slnx ```