Incredibly simple real-time web for ASP.NET Core
C# C++ TypeScript JavaScript Java Shell Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.github Update issue template for security issues (#2693) Jul 30, 2018
.vscode Fix #2291 by documenting how to debug TS tests (#2306) May 18, 2018
.vsts-pipelines/builds Revert "Merge branch 'master' into release/2.2" Jul 31, 2018
benchmarkapps Revert "Merge branch 'master' into release/2.2" Jul 31, 2018
benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks Revert "Merge branch 'master' into release/2.2" Jul 31, 2018
build Update dependencies.props Aug 12, 2018
clients Support for Adding OnClosed Callbacks(#2821) Aug 17, 2018
docs change to use Karma for Functional Tests (#2450) Jun 12, 2018
samples Flow a cancellation token in to AsChannelReader (#2491) Jun 14, 2018
specs Fix query string name in transport spec (#2702) Jul 31, 2018
src log when WebSocketTransport has started (#2752) Aug 10, 2018
test Provide a better error message when invoking a non-existant hub method ( Aug 8, 2018
.gitattributes Update .gitattributes to workaround npm changing line endings (#1610) Mar 16, 2018
.gitignore Add test coverage to TS Client tests (#2409) May 31, 2018
.gitmodules Submodule gtest (#2391) May 29, 2018
.travis.yml Revert "Merge branch 'master' into release/2.2" Jul 31, 2018 Update Jul 24, 2018
Directory.Build.props Add certificate names for code signing Jun 6, 2018
Directory.Build.targets Upgrade to netcoreapp2.2 and remove netcoreapp2.0 testing (#2221) May 9, 2018
LICENSE.txt Update LICENSE.txt text Jul 3, 2017
NuGet.config Use MSBuild to set NuGet feeds instead of NuGet.config Nov 20, 2017
NuGetPackageVerifier.json Fix NuGetPackageVerifier issues Nov 11, 2016 Update Intro Video Link (#2637) Jul 16, 2018
SignalR.sln Create a Public Test Suite for HubLifetimeManager implementations (#2353 Jun 6, 2018
THIRD-PARTY-NOTICES Add gradle to 3pn (#2798) Aug 13, 2018
build.cmd Update bootstrappers Oct 9, 2017 Update bootstrappers Oct 9, 2017
korebuild-lock.txt Update dependencies.props Aug 12, 2018
korebuild.json Revert "Merge branch 'master' into release/2.2" Jul 31, 2018
run.cmd Update bootstrappers Oct 9, 2017
run.ps1 Revert "Merge branch 'master' into release/2.2" Jul 31, 2018 Revert "Merge branch 'master' into release/2.2" Jul 31, 2018
version.props add version number to java client build (#2776) Aug 9, 2018

ASP.NET Core SignalR

Join the chat at

Travis: Travis

ASP.NET Core SignalR is a new library for ASP.NET Core developers that makes it incredibly simple to add real-time web functionality to your applications. What is "real-time web" functionality? It's the ability to have your server-side code push content to the connected clients as it happens, in real-time.

You can watch an introductory presentation here - ASP.NET Core SignalR: Build 2018

This project is part of ASP.NET Core. You can find samples, documentation and getting started instructions for ASP.NET Core at the Home repo.

TypeScript Version

If you are encountering TypeScript definition issues with SignalR, please ensure you are using the latest version of TypeScript to compile your application. If the issue occurs in the latest TypeScript, please let us know.

When in doubt, check the version of TypeScript referenced by our package.json file. That version is the minimum TypeScript version expected to work with SignalR.


You can install the latest released JavaScript client from npm with the following command:

npm install @aspnet/signalr

The @aspnet/signalr package (and it's dependencies) require NPM 5.6.0 or higher.

NOTE: Previous previews of the SignalR client library for JavaScript were named @aspnet/signalr-client. This has been deprecated as of Preview 1.

IMPORTANT: When using preview builds, you should always ensure you are using the same version of both the JavaScript client and the Server. The version numbers should align as they are produced in the same build process.

The CI build publishes the latest dev version of the JavaScript client to our dev npm registry as @aspnet/signalr. You can install the module as follows:

  • Create an .npmrc file with the following line: @aspnet:registry=
  • Run: npm install @aspnet/signalr

Alternatively, if you don't want to create the .npmrc file run the following commands:

npm install @aspnet/signalr --registry

We also have a MsgPack protocol library which is installed via:

 npm install @aspnet/signalr-protocol-msgpack


Once you've installed the NPM modules, they will be located in the node_modules/@aspnet/signalr and node_modules/@aspnet/signalr-protocol-msgpack folders. If you are building a NodeJS application or using an ECMAScript module loader/bundler (such as webpack), you can load them directly. If you are building a browser application without using a module bundler, you can find UMD-compatible bundles in the dist/browser folder; minified versions are provided as well. Simply copy these to your project as appropriate and use a build task to keep them up-to-date.

Building from source

To run a complete build on command line only, execute build.cmd or without arguments.

If this is your first time building SignalR please see the Getting Started for more information about project dependencies and other build-related information specific to SignalR.

See developer documentation for general information on building and contributing to this and other aspnet repositories.