Перейти к файлу
Ryan Nowak 41480f0aef Update Razor dependency (non-template) 2018-04-08 14:24:06 -07:00
benchmarks/Microsoft.AspNetCore.Blazor.Performance Add support for conditional attributes 2018-04-03 14:06:48 -07:00
build Update non-product dependencies 2018-04-08 14:24:06 -07:00
samples Remove workaround for old Razor tooling 2018-03-27 19:24:10 -07:00
src Update survey links for 0.2.0 2018-04-06 15:15:48 -07:00
test Add event handlers as tag helpers 2018-04-06 13:00:04 -07:00
tooling Revert live reloading implementation. See PR for explanation. 2018-04-04 18:10:12 +01:00
.appveyor.yml Different attempt to fix AppVeyor CI issues 2018-03-30 13:39:22 +01:00
.gitattributes Force LF for package-lock.json 2018-03-21 13:59:35 -07:00
.gitignore Add support for conditional attributes 2018-04-03 14:06:48 -07:00
.travis.yml [Fixes #66] Adds linking support to the build 2018-03-14 11:23:43 +00:00
Blazor.sln Reference static content from referenced assemblies. Implements #340 2018-04-06 09:50:10 +01:00
CODE_OF_CONDUCT.md Add contributing guide and code of conduct 2018-01-30 11:00:40 -08:00
CONTRIBUTING.md Fix broken Markdown link 2018-02-07 09:28:40 -08:00
Directory.Build.props Update Razor dependency (non-template) 2018-04-08 14:24:06 -07:00
Directory.Build.targets Konvert to KoreBuild 2018-03-14 11:23:42 +00:00
LICENSE.txt Add LICENSE.txt 2018-01-26 16:16:25 -08:00
README.md Update README.md 2018-04-07 19:29:41 -07:00
THIRD-PARTY-NOTICES.txt Update third party notices 2018-03-22 13:21:38 -07:00
build.cmd Konvert to KoreBuild 2018-03-14 11:23:42 +00:00
build.sh Konvert to KoreBuild 2018-03-14 11:23:42 +00:00
global.json Update KoreBuild and SDK 2018-04-06 13:25:47 -07:00
korebuild-lock.txt Update KoreBuild and SDK 2018-04-06 13:25:47 -07:00
korebuild.json Konvert to KoreBuild 2018-03-14 11:23:42 +00:00
run.cmd Konvert to KoreBuild 2018-03-14 11:23:42 +00:00
run.ps1 Konvert to KoreBuild 2018-03-14 11:23:42 +00:00
run.sh Konvert to KoreBuild 2018-03-14 11:23:42 +00:00
version.props Update versions to 0.2.0-preview1 2018-03-27 13:51:31 -07:00

README.md

Blazor

An experimental .NET web framework using C#/Razor and HTML that runs in the browser via WebAssembly

Gitter

Blazor is a .NET web framework that runs in any browser. You author Blazor apps using C#/Razor and HTML.

Blazor uses only the latest web standards. No plugins or transpilation needed. It runs in the browser on a real .NET runtime (Mono) implemented in WebAssembly that executes normal .NET assemblies. It works in older browsers too by falling back to an asm.js based .NET runtime.

Blazor will have all the features of a modern web framework, including:

  • A component model for building composable UI
  • Routing
  • Layouts
  • Forms and validation
  • Dependency injection
  • JavaScript interop
  • Live reloading in the browser during development
  • Server-side rendering
  • Full .NET debugging both in browsers and in the IDE
  • Rich IntelliSense and tooling
  • Ability to run on older (non-WebAssembly) browsers via asm.js
  • Publishing and app size trimming

Note: Blazor is an experimental project. It's not (yet) a committed product. This is to allow time to fully investigate the technical issues associated with running .NET in the browser and to ensure we can build something that developers love and can be productive with. During this experimental phase, we expect to engage deeply with early Blazor adopters like you to hear your feedback and suggestions.

To see Blazor in action, check out Steve Sanderson's prototype demo at NDC Oslo last year. You can also try out a simple live Blazor app.

Getting Started

To get setup with Blazor:

  1. Install the .NET Core 2.1 Preview 1 SDK.
  2. Install the latest preview of Visual Studio 2017 (15.7) with the ASP.NET and web development workload.
    • Note: You can install Visual Studio previews side-by-side with an existing Visual Studio installation without impacting your existing development environment.
  3. Install the ASP.NET Core Blazor Language Services extension from the Visual Studio Marketplace.

You're now ready to start building web apps with Blazor! To build your first Blazor web app check out our getting started guide.

Build

Prerequisites:

The build script will acquire the required version of the .NET runtime and .NET SDK on first run.

Run build.cmd or build.sh from the solution directory.

Run unit tests

Run build.cmd /t:Test or build.sh /t:Test

Run end-to-end tests

Prerequisites:

  • Install selenium-standalone (requires Java 8 or later)
    • npm install -g selenium-standalone
    • selenium-standalone install
  • Chrome

Run selenium-standalone start

Run build.cmd /t:Test /p:BlazorAllTests=true or build.sh /t:Test /p:BlazorAllTests=true

Opening in Visual Studio

Prerequisites:

  • Visual Studio 2017 15.7 latest preview - download

We recommend getting the latest preview version of Visual Studio and updating it frequently. The Blazor editing experience in Visual Studio depends on new features of the Razor language tooling and will be updated frequently.

When installing Visual Studio choose the following workloads:

  • ASP.NET and Web Development
  • Visual Studio extension development features

Developing the Blazor VS Tooling

To do local development of the Blazor tooling experience in VS, select the Microsoft.VisualStudio.BlazorExtension project and launch the debugger.

The Blazor Visual Studio tooling will build as part of the command line build when on Windows.

Contributing

There are lots of ways that you can contribute to Blazor! Read our contributing guide to learn about our development process and how to propose bug fixes and improvements.

Still got questions?

Check out our FAQ or open an issue.