Transpose.HttpClient
26.7.3067
dotnet add package Transpose.HttpClient --version 26.7.3067
NuGet\Install-Package Transpose.HttpClient -Version 26.7.3067
<PackageReference Include="Transpose.HttpClient" Version="26.7.3067" />
<PackageVersion Include="Transpose.HttpClient" Version="26.7.3067" />
<PackageReference Include="Transpose.HttpClient" />
paket add Transpose.HttpClient --version 26.7.3067
#r "nuget: Transpose.HttpClient, 26.7.3067"
#:package Transpose.HttpClient@26.7.3067
#addin nuget:?package=Transpose.HttpClient&version=26.7.3067
#tool nuget:?package=Transpose.HttpClient&version=26.7.3067
Transpose 🚀 - C# to JavaScript compiler
<a href="https://github.com/curiosity-ai/transpose"><img src="https://raw.githubusercontent.com/curiosity-ai/transpose/master/logo/transpose-512.png" width="120" height="120" align="right" /></a>
Transpose is a modern C# → JavaScript compiler built entirely on Roslyn.
It is the next generation of the h5 project
(itself a fork of the original Bridge
compiler), rebranded and rebuilt around a clean-room Roslyn translator. The
legacy Bridge/NRefactory pipeline has been removed — Transpose is solely the
Roslyn-based translator and its CLI compiler (tps).
The compiler runs on .NET 10.0; Transpose projects target .NET Standard 2.0/2.1. Transpose targets a fast, integrated development experience for C# web developers.
Coming from h5? See MIGRATION.md for a step-by-step guide to porting an existing h5 project.
| Package | NuGet |
|---|---|
| Base Library | |
| Core Library | |
| SDK Target | |
| Json Library | |
| Template | |
| UI Toolkit |
The base library's package id is
Transpose.BCL, but its assembly isTranspose(so the DLL staysTranspose.dlland the runtime global in generated JS isTranspose).
Getting Started ⚡
A Transpose project references the Transpose.Build.Target SDK, which runs the
tps compiler as part of a normal dotnet build — there is no global-tool
compiler to install and no compilation server. Start from this project shape
(replace * with the latest published versions):
<Project Sdk="Transpose.Build.Target/*">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Transpose.BCL" Version="*" />
<PackageReference Include="Transpose.Core" Version="*" />
</ItemGroup>
</Project>
Build it with a plain:
dotnet build
The output (the tps.js runtime, your app.js bundle, resources, and
index.html) lands under bin/<Configuration>/<tfm>/tps/. Serve it locally:
cd bin/Debug/netstandard2.0/tps/
dotnet serve --port 5000
You can also install the dotnet new template and scaffold a project:
dotnet new install Transpose.Template
dotnet new transpose
How a build works
tps reads the .csproj directly (no MSBuild evaluation), globs **/*.cs,
resolves PackageReferences from the NuGet cache, transpiles, and writes either
a runnable site or — for a library — a .NET DLL with the compiled JS embedded.
Behavior is configured per project by a tps.json file (output path,
fileName, html, reflection, resources, outputFormatting).
When a project references another project, the site build consumes the referenced project's already-built package DLL (extracting its compiled JS) instead of recompiling its sources — so a dependency is compiled once and reused.
Samples
The Tesserae UI toolkit and its sample app are built with Transpose and are a good end-to-end reference.
Relationship to h5 📜
Transpose is the evolution of h5, with two large changes:
- Roslyn rebuild. The translator was rewritten as a clean-room Roslyn
compiler. The emitter walks Roslyn syntax trees guided by the semantic model
and emits JavaScript directly — there is no NRefactory and no
SharpSixRewriterlowering pass. - Rebrand.
H5→Transpose(namespaces, runtime global, assembly names) andh5→tps(runtime file, config file, module name, compiler command). A handful of non-library tokens are deliberately preserved — the<h5>HTML tag binding and hash localsh1..h5— so they are not renamed.
The compiler is a plain CLI: caching and the hosted compilation server are out of scope by design. Retyped/Bridge packages are not supported.
Package/SDK renames (h5 → Transpose):
h5→Transpose.BCL(assembly staysTranspose)h5.Core→Transpose.Coreh5.Target(SDK) →Transpose.Build.Targeth5.Newtonsoft.Json→Transpose.Newtonsoft.Jsonh5.WebGL2→Transpose.WebGL2h5.template→Transpose.Template
See MIGRATION.md for the full porting guide.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Transpose.BCL (>= 26.7.3064)
- Transpose.Core (>= 26.7.3060)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Transpose.HttpClient:
| Package | Downloads |
|---|---|
|
Curiosity.Components
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.