![]() |
VOOZH | about |
dotnet add package FiftyOne.Pipeline.Engines.FiftyOne --version 4.5.57
NuGet\Install-Package FiftyOne.Pipeline.Engines.FiftyOne -Version 4.5.57
<PackageReference Include="FiftyOne.Pipeline.Engines.FiftyOne" Version="4.5.57" />
<PackageVersion Include="FiftyOne.Pipeline.Engines.FiftyOne" Version="4.5.57" />Directory.Packages.props
<PackageReference Include="FiftyOne.Pipeline.Engines.FiftyOne" />Project file
paket add FiftyOne.Pipeline.Engines.FiftyOne --version 4.5.57
#r "nuget: FiftyOne.Pipeline.Engines.FiftyOne, 4.5.57"
#:package FiftyOne.Pipeline.Engines.FiftyOne@4.5.57
#addin nuget:?package=FiftyOne.Pipeline.Engines.FiftyOne&version=4.5.57Install as a Cake Addin
#tool nuget:?package=FiftyOne.Pipeline.Engines.FiftyOne&version=4.5.57Install as a Cake Tool
👁 Data rewards the curious
Pipeline API
Developer Documentation
| NuGet | Package | NuGet | Package |
| --- | --- | --- | --- |
| 👁 NuGet
| CloudRequestEngine | 👁 NuGet
| Examples.Shared |
| 👁 NuGet
| Core | 👁 NuGet
| JavaScriptBuilder |
| 👁 NuGet
| Engines | 👁 NuGet
| JsonBuilder |
| 👁 NuGet
| Engines.FiftyOne | 👁 NuGet
| Web |
| 👁 NuGet
| Engines.TestHelpers | 👁 NuGet
| Web.Shared |
This repository contains all the projects required to build the .NET implementation of the Pipeline API. Individual engines (For example, device detection) are in separate repositories.
The specification is also available on GitHub and is recommended reading if you wish to understand the concepts and design of this API.
Visual Studio 2022 or later is recommended. Although Visual Studio Code can be used for working with most of the projects.
The Pipeline projects are written in C# and target .NET Standard 2.0.3 The Web integration multi-targets the following: - .NET Core 3.1 - .NET Core 8.0 - .NET Framework 4.6.2
The tested versions page shows the .NET versions that we currently test against. The software may run fine against other versions, but additional caution should be applied.
All NuGet packages published from this repository are strong-name signed so they can be referenced by strong-named consumer applications (notably .NET Framework hosts that enforce strong-name identity at assembly load).
The same 51Degrees.publickey file is committed at the root of each shipping repo. Signing is configured once via and applies to every project:
51Degrees.publickey (committed) is needed, so contributors can build and test without any secrets..snk from a GitHub organization secret, so the assemblies in the published NuGet packages carry a real cryptographic signature.The same public key token appears on every FiftyOne.* DLL shipped from this repo and its upstream library repos (caching-dotnet, common-dotnet), so the dependency chain remains consistent under strong-name identity checks.
vendor/Stubble/ existsStrong-named assemblies can only reference other strong-named assemblies. FiftyOne.Pipeline.JavaScriptBuilder depends on Stubble.Core, and the upstream NuGet package is not strong-named. A request to publish a strong-named build has been open in that project since December 2019 — see StubbleOrg/Stubble#85 — with no progress in over five years.
Rather than wait, the Stubble source is vendored under and built from source as a project reference. It inherits the strong-naming configuration from the repo root and ships strong-signed alongside our own assemblies. Stubble is MIT-licensed and the upstream copyright and licence notices are preserved unchanged in the vendored tree.
You can either clone this repository and reference the projects locally or you can reference the NuGet packages directly.
Install-Package FiftyOne.Pipeline.Core
Install-Package FiftyOne.Pipeline.Engines
Install-Package FiftyOne.Pipeline.Engines.FiftyOne
Install-Package FiftyOne.Pipeline.Web
Install-Package FiftyOne.Pipeline.Web.Minify
Install-Package FiftyOne.Pipeline.JsonBuilder
Install-Package FiftyOne.Pipeline.JavaScriptBuilder
Install-Package FiftyOne.Pipeline.CloudRequestEngine
Note that the packages have dependencies on each other so you'll never need to install all of them individually.
For example, Installing FiftyOne.Pipeline.Engines.FiftyOne will automatically add FiftyOne.Pipeline.Engines and FiftyOne.Pipeline.Core.
There are several examples available that demonstrate how to make use of the Pipeline API in isolation. These are described in the table below. If you want examples that demonstrate how to use 51Degrees products such as device detection, then these are available in the corresponding repository and on our website.
| Example | Description |
|---|---|
| CustomFlowElement\1. Simple Flow Element | Shows how to create a custom flow element that returns star sign based on a supplied date of birth. |
| CustomFlowElement\2. On Premise Engine | Shows how to modify SimpleFlowElement to make use of the 'engine' functionality and use a custom data file to map dates to star signs rather than relying on hard coded data. |
| CustomFlowElement\3. Client-side evidence | Shows how to modify SimpleFlowElement to request the data of birth from the user using client-side JavaScript. |
| CustomFlowElement\4. Cloud Engine | Shows how to modify SimpleFlowElement to perform the star sign lookup via a cloud service rather than locally. |
| ResultCaching | Shows how the result caching feature works. |
| UsageSharing | Shows how to share usage with 51Degrees. This helps us to keep our products up to date and accurate. |
The CloudRequestEngine\GettingStarted example requires a resource key. It reads the aligned 51DEGREES_RESOURCE_KEY environment variable first, then the legacy RESOURCE_KEY variable. A resource key with the free properties used by the examples can be created at https://configure.51degrees.com/Wkqxf3Bs?utm_source=github&utm_medium=readme&utm_campaign=pipeline-dotnet&utm_content=readme.md&utm_term=pipeline-examples.
The tests can be run from within Visual Studio or (in most cases) by using the dotnet test command line tool.
For complete documentation on the Pipeline API and associated engines, see the 51Degrees documentation site.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 netcoreapp2.0 was computed. netcoreapp2.1 netcoreapp2.1 was computed. netcoreapp2.2 netcoreapp2.2 was computed. netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 netstandard2.0 is compatible. netstandard2.1 netstandard2.1 was computed. |
| .NET Framework | net461 net461 was computed. net462 net462 was computed. net463 net463 was computed. net47 net47 was computed. net471 net471 was computed. net472 net472 was computed. net48 net48 was computed. net481 net481 was computed. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen40 tizen40 was computed. tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
Showing the top 5 NuGet packages that depend on FiftyOne.Pipeline.Engines.FiftyOne:
| Package | Downloads |
|---|---|
|
FiftyOne.DeviceDetection.Shared
51Degrees Device Detection parses HTTP headers to return detailed hardware, operating system, browser, and crawler information for the devices used to access your website or service. This package contains shared classes used by the device detection engines. |
|
|
FiftyOne.Pipeline.Web
The 51Degrees Pipeline API provides a fast, modern architecture for consuming real-time digital data services. This package contains components that integrate the 51Degrees Pipeline API into ASP.NET and ASP.NET Core web projects. |
|
|
FiftyOne.Pipeline.JsonBuilder
The 51Degrees Pipeline API provides a fast, modern architecture for consuming real-time digital data services. This package contains an element that serializes all values in flowdata into a JSON formatted string. |
|
|
FiftyOne.Geolocation.Core
51Degrees Geolocation performs reverse geocoding (using longitude and latitude information) to populate postal addresses. This package contains shared classes used by all the geo-location engines. |
|
|
FiftyOne.IpIntelligence.Shared
Shared classes used by the 51Degrees IP Intelligence engine for the Pipeline API. |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.5.57 | 256 | 6/17/2026 |
| 4.5.56 | 399 | 6/16/2026 |
| 4.5.55 | 1,008 | 6/15/2026 |
| 4.5.54 | 934 | 6/14/2026 |
| 4.5.53 | 534 | 6/13/2026 |
| 4.5.52 | 428 | 6/13/2026 |
| 4.5.51 | 1,572 | 6/11/2026 |
| 4.5.50 | 835 | 6/10/2026 |
| 4.5.49 | 2,644 | 6/3/2026 |
| 4.5.48 | 383 | 6/3/2026 |
| 4.5.47 | 1,420 | 6/2/2026 |
| 4.5.46 | 1,803 | 6/1/2026 |
| 4.5.45 | 2,029 | 5/29/2026 |
| 4.5.44 | 266 | 5/29/2026 |
| 4.5.43 | 1,024 | 5/29/2026 |
| 4.5.42 | 886 | 5/28/2026 |
| 4.5.41 | 1,360 | 5/27/2026 |
| 4.5.40 | 1,670 | 5/25/2026 |
| 4.5.39 | 423 | 5/25/2026 |
| 4.5.38 | 713 | 5/22/2026 |