Flowthru.Extensions.Google.Sheets 0.30.0

dotnet add package Flowthru.Extensions.Google.Sheets --version 0.30.0
                    
NuGet\Install-Package Flowthru.Extensions.Google.Sheets -Version 0.30.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Flowthru.Extensions.Google.Sheets" Version="0.30.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Flowthru.Extensions.Google.Sheets" Version="0.30.0" />
                    
Directory.Packages.props
<PackageReference Include="Flowthru.Extensions.Google.Sheets" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Flowthru.Extensions.Google.Sheets --version 0.30.0
                    
#r "nuget: Flowthru.Extensions.Google.Sheets, 0.30.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Flowthru.Extensions.Google.Sheets@0.30.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Flowthru.Extensions.Google.Sheets&version=0.30.0
                    
Install as a Cake Addin
#tool nuget:?package=Flowthru.Extensions.Google.Sheets&version=0.30.0
                    
Install as a Cake Tool

Flowthru.Extensions.Google.Sheets

Read and write Google Sheets as Flowthru Catalog Items. A spreadsheet tab becomes a typed Item addressed by (spreadsheetId, tableName) — a stable native-table name, not a fragile cell range — so a Flow reads rows from one tab and writes derived rows to another the same way it reads and writes a CSV. The factory matches a table's columns to your schema's properties by name and coerces each cell to the declared type on read; an output table is created on first write if it is absent, then atomically replaced each run.

coverage

Mental model

A Flowthru Catalog declares typed Items; this package supplies Items backed by a Google spreadsheet instead of a file. Everything reaches the spreadsheet through a swappable ISheetsGateway, so the Catalog and the Flow never name a credential or a network call. Bring your spreadsheet mental model — a tab is a table, the header row names the columns, one record per row — and Flowthru handles the typed mapping to your schema. The extension owns no credentials: you supply an authenticated SheetsService, or hand it the shipped file-backed gateway to develop fully offline.

Install

dotnet add package Flowthru.Extensions.Google.Sheets

Register a gateway and a Catalog whose Items route through it. The offline file-backed gateway is the swap point — replace it with AddGoogleSheets(sheetsService) over an authenticated client for production, with no change to the Catalog or Flow:

var gateway = new JsonFileSheetsGateway(workingPath);   // offline; swap for a live SheetsService

services.AddFlowthru(flowthru =>
{
    flowthru.AddGoogleSheets(gateway);                  // retry-on-429 wrapped by default
    flowthru.RegisterCatalog(_ => new Catalog(gateway, spreadsheetId));

    flowthru
        .RegisterFlow<Catalog>("Sales", SalesFlow.Create)
        .WithDescription("Totals raw sales by day and writes the result back to the spreadsheet");
});

Declare a Sheets-backed Item in your Catalog:

public IItem<IEnumerable<RawSaleSchema>> RawSales =>
    CreateItem(() => ItemFactory.Enumerable.GoogleSheets<RawSaleSchema>(
        label: "RawSales",
        spreadsheetId: _spreadsheetId,
        tableName: "RawSales",
        gateway: _sheets));
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.30.0 112 7/20/2026
0.30.0-preview.128 54 7/20/2026
0.29.0-preview.123 57 7/10/2026
0.28.1-preview.122 61 7/9/2026
0.28.0 144 7/7/2026
0.28.0-preview.121 58 7/7/2026
0.27.1 137 7/2/2026
0.27.1-preview.120 64 7/2/2026
0.27.0 114 7/1/2026
0.27.0-preview.119 51 7/1/2026
0.26.0-preview.112 58 6/5/2026
0.25.0 238 6/2/2026
0.25.0-preview.110 63 6/2/2026
0.24.0-preview.108 65 6/2/2026