A Windows desktop app for uploading images to Pinterest via the Pinterest API v5, with a right-click “Upload to Pinterest” shell integration planned. Built in C# / WPF, with a fully unit-tested core that has zero network, filesystem, or browser dependencies.

VPUploader.Core — OAuth flow and token refresh (AuthService), the Pinterest API client (PinterestClient), and the data models.VPUploader.Core.Tests — xUnit test suite that uses a fake HTTP handler, in-memory token store, and a fake token provider.VPUploader.App — WPF front end.This split was a deliberate choice to make the OAuth/API logic verifiable without needing live Pinterest credentials for every test run — useful both for development and for recording the demo required for Pinterest’s API access review.
Prerequisites: .NET 8 SDK
http://127.0.0.1:8756/callback/ as a redirect URIVPUploader.App/appsettings.local.json with your own credentials:
{
"Pinterest": {
"ClientId": "YOUR_APP_ID",
"ClientSecret": "YOUR_APP_SECRET"
}
}
dotnet build
dotnet run --project VPUploader.App
To run the test suite instead:
dotnet test
C# · .NET 8 · WPF · WPF-UI · xUnit · Pinterest API v5
Built with architectural guidance and code review from Claude (Anthropic).
MIT