{"action":"created","comment":{"url":"https://api.github.com/repos/aspnet/Docs/pulls/comments/28701349","id":28701349,"diff_hunk":"@@ -0,0 +1,85 @@\n+Introducing .NET Core\n+=====================\n+By `Steve Smith`_ | Originally Published: 1 June 2015 \n+\n+.. _`Steve Smith`: Author_\n+\n+.NET Core is a small, optimized runtime that can be targeted by ASP.NET 5 applications. In fact, the new ASP.NET 5 project templates target .NET Core by default, in addition to the .NET Framework. Learn what targeting .NET Core means for your ASP.NET 5 application.\n+\n+This article covers the following topics:\n+\t- What is .NET Core?\n+\t- Motivation Behind .NET Core\n+\t- .NET Core and ASP.NET\n+\t- .NET Core and NuGet\n+\t- Additional Reading\n+\n+What is .NET Core\n+^^^^^^^^^^^^^^^^^\n+\n+.NET Core 5 is a modular runtime and library implementation that includes a subset of the .NET Framework. Currently it is feature complete on Windows, and in-progress builds exist for both Linux and OS X. .NET Core consists of a set of libraries, called \"CoreFX\", and a small, optimized runtime, called \"CoreCLR\". .NET Core is open-source, so you can follow progress on the project and contribute to it on GitHub:\n+\n+\t- `.NET Core Libraries (CoreFX) <https://github.com/dotnet/corefx>`_\n+\t- `.NET Core Common Language Runtime (CoreCLR) <https://github.com/dotnet/coreCLR>`_\n+\n+The CoreCLR runtime (Microsoft.CoreCLR) and CoreFX libraries are distributed via NuGet. The CoreFX libraries are factored as individual NuGet packages according to functionality, named \"System.[module]\" on `nuget.org <http://www.nuget.org/>`_.\n+\n+One of the key benefits of .NET Core is its portability. You can package and deploy the CoreCLR with your application, eliminating your application's dependency on an installed version of .NET (e.g. .NET Framework on Windows). You can host multiple applications side-by-side using different versions of the CoreCLR, and upgrade them individually, rather than being forced to upgrade all of them simultaneously.\n+\n+CoreFX has been built as a componentized set of libraries, each requiring the minimum set of library dependencies (e.g. System.Collections only depends on System.Runtime, not System.Xml). This approach enables minimal distributions  of CoreFX libraries (just the ones you need) within an application, alongside CoreCLR. CoreFX includes collections, console access, diagnostics, IO, LINQ, JSON, XML, and regular expression support, just to name a few libraries. Another benefit of CoreFX is that it allows developers to target a single common set of libraries that are supported by multiple platforms. \n+\n+Motivation Behind .NET Core\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+When .NET first shipped in 2002, it was a single framework, but it didn't take long before the .NET Compact Framework shipped, providing a smaller version of .NET designed for mobile devices. Over the years, this exercise was repeated multiple times, so that today there are different flavors of .NET specific to different platforms. Add to this the further platform reach provided by Mono and Xamarin, which target Linux, Mac, and native iOS and Android devices. For each platform, a separate vertical stack consisting of runtime, framework, and app model is required to develop .NET applications. One of the primary goals of .NET Core is to provide a single, modular, cross-platform version of .NET that works the same across all of these platforms. Since .NET Core is a fully open source project, the Mono community can benefit from CoreFX libraries. .NET Core will not replace Mono, but it will allow the Mono community to reference and share, rather than duplicate, certain common libraries, and to contribute directly to CoreFX, if desired.\n+\n+In addition to being able to target a variety of different device platforms, there was also pressure from the server side to reduce the overall footprint, and more importantly, surface area, of the .NET Framework. By factoring the CoreFX libraries and allowing individual applications to pull in only those parts of CoreFX they require (a so-called \"pay-for-play\" model), server-based applications built with ASP.NET 5 can minimize their dependencies. This, in turn, reduces the frequency with which patches and updates to the framework will impact these applications, since only changes made to the individual pieces of CoreFX leveraged by the application will impact the application. A smaller deployment size for the application is a side benefit, and one that makes more of a difference if many applications are deployed side-by-side on a given server.\n+\n+..note The overall size of .NET Core doesn't intend to be smaller than the .NET Framework over time, but since it is pay-for-play, most applications that utilize only parts of CoreFX will have a smaller deployment footprint.\n+\n+.NET Core and ASP.NET","path":"docs/dotnetcore/introducing-dotnetcore/introducing-dotnetcore.rst","position":39,"original_position":39,"commit_id":"845ca9a004ba204918fbfb12945ee27273cb0314","original_commit_id":"845ca9a004ba204918fbfb12945ee27273cb0314","user":{"login":"danroth27","id":1874516,"avatar_url":"https://avatars.githubusercontent.com/u/1874516?v=3","gravatar_id":"","url":"https://api.github.com/users/danroth27","html_url":"https://github.com/danroth27","followers_url":"https://api.github.com/users/danroth27/followers","following_url":"https://api.github.com/users/danroth27/following{/other_user}","gists_url":"https://api.github.com/users/danroth27/gists{/gist_id}","starred_url":"https://api.github.com/users/danroth27/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danroth27/subscriptions","organizations_url":"https://api.github.com/users/danroth27/orgs","repos_url":"https://api.github.com/users/danroth27/repos","events_url":"https://api.github.com/users/danroth27/events{/privacy}","received_events_url":"https://api.github.com/users/danroth27/received_events","type":"User","site_admin":false},"body":"Suggest renaming to \"Building Applications with .NET Core\"","created_at":"2015-04-20T15:54:48Z","updated_at":"2015-04-20T15:54:48Z","html_url":"https://github.com/aspnet/Docs/pull/26#discussion_r28701349","pull_request_url":"https://api.github.com/repos/aspnet/Docs/pulls/26","_links":{"self":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/comments/28701349"},"html":{"href":"https://github.com/aspnet/Docs/pull/26#discussion_r28701349"},"pull_request":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/26"}}},"pull_request":{"url":"https://api.github.com/repos/aspnet/Docs/pulls/26","id":33015894,"html_url":"https://github.com/aspnet/Docs/pull/26","diff_url":"https://github.com/aspnet/Docs/pull/26.diff","patch_url":"https://github.com/aspnet/Docs/pull/26.patch","issue_url":"https://api.github.com/repos/aspnet/Docs/issues/26","number":26,"state":"open","locked":false,"title":"Introducing .NET Core","user":{"login":"ardalis","id":782127,"avatar_url":"https://avatars.githubusercontent.com/u/782127?v=3","gravatar_id":"","url":"https://api.github.com/users/ardalis","html_url":"https://github.com/ardalis","followers_url":"https://api.github.com/users/ardalis/followers","following_url":"https://api.github.com/users/ardalis/following{/other_user}","gists_url":"https://api.github.com/users/ardalis/gists{/gist_id}","starred_url":"https://api.github.com/users/ardalis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ardalis/subscriptions","organizations_url":"https://api.github.com/users/ardalis/orgs","repos_url":"https://api.github.com/users/ardalis/repos","events_url":"https://api.github.com/users/ardalis/events{/privacy}","received_events_url":"https://api.github.com/users/ardalis/received_events","type":"User","site_admin":false},"body":"ready for review\r\nfixes issue #26 ","created_at":"2015-04-10T03:41:03Z","updated_at":"2015-04-20T15:54:48Z","closed_at":null,"merged_at":null,"merge_commit_sha":"fc1972eb204cea4352de3bde892fb9c6335a60f2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/aspnet/Docs/pulls/26/commits","review_comments_url":"https://api.github.com/repos/aspnet/Docs/pulls/26/comments","review_comment_url":"https://api.github.com/repos/aspnet/Docs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/aspnet/Docs/issues/26/comments","statuses_url":"https://api.github.com/repos/aspnet/Docs/statuses/845ca9a004ba204918fbfb12945ee27273cb0314","head":{"label":"ardalis:dotnetcore","ref":"dotnetcore","sha":"845ca9a004ba204918fbfb12945ee27273cb0314","user":{"login":"ardalis","id":782127,"avatar_url":"https://avatars.githubusercontent.com/u/782127?v=3","gravatar_id":"","url":"https://api.github.com/users/ardalis","html_url":"https://github.com/ardalis","followers_url":"https://api.github.com/users/ardalis/followers","following_url":"https://api.github.com/users/ardalis/following{/other_user}","gists_url":"https://api.github.com/users/ardalis/gists{/gist_id}","starred_url":"https://api.github.com/users/ardalis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ardalis/subscriptions","organizations_url":"https://api.github.com/users/ardalis/orgs","repos_url":"https://api.github.com/users/ardalis/repos","events_url":"https://api.github.com/users/ardalis/events{/privacy}","received_events_url":"https://api.github.com/users/ardalis/received_events","type":"User","site_admin":false},"repo":{"id":31719584,"name":"Docs","full_name":"ardalis/Docs","owner":{"login":"ardalis","id":782127,"avatar_url":"https://avatars.githubusercontent.com/u/782127?v=3","gravatar_id":"","url":"https://api.github.com/users/ardalis","html_url":"https://github.com/ardalis","followers_url":"https://api.github.com/users/ardalis/followers","following_url":"https://api.github.com/users/ardalis/following{/other_user}","gists_url":"https://api.github.com/users/ardalis/gists{/gist_id}","starred_url":"https://api.github.com/users/ardalis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ardalis/subscriptions","organizations_url":"https://api.github.com/users/ardalis/orgs","repos_url":"https://api.github.com/users/ardalis/repos","events_url":"https://api.github.com/users/ardalis/events{/privacy}","received_events_url":"https://api.github.com/users/ardalis/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ardalis/Docs","description":"Documentation for ASP.NET 5","fork":true,"url":"https://api.github.com/repos/ardalis/Docs","forks_url":"https://api.github.com/repos/ardalis/Docs/forks","keys_url":"https://api.github.com/repos/ardalis/Docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ardalis/Docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ardalis/Docs/teams","hooks_url":"https://api.github.com/repos/ardalis/Docs/hooks","issue_events_url":"https://api.github.com/repos/ardalis/Docs/issues/events{/number}","events_url":"https://api.github.com/repos/ardalis/Docs/events","assignees_url":"https://api.github.com/repos/ardalis/Docs/assignees{/user}","branches_url":"https://api.github.com/repos/ardalis/Docs/branches{/branch}","tags_url":"https://api.github.com/repos/ardalis/Docs/tags","blobs_url":"https://api.github.com/repos/ardalis/Docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ardalis/Docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ardalis/Docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/ardalis/Docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ardalis/Docs/statuses/{sha}","languages_url":"https://api.github.com/repos/ardalis/Docs/languages","stargazers_url":"https://api.github.com/repos/ardalis/Docs/stargazers","contributors_url":"https://api.github.com/repos/ardalis/Docs/contributors","subscribers_url":"https://api.github.com/repos/ardalis/Docs/subscribers","subscription_url":"https://api.github.com/repos/ardalis/Docs/subscription","commits_url":"https://api.github.com/repos/ardalis/Docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/ardalis/Docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/ardalis/Docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/ardalis/Docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/ardalis/Docs/contents/{+path}","compare_url":"https://api.github.com/repos/ardalis/Docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ardalis/Docs/merges","archive_url":"https://api.github.com/repos/ardalis/Docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ardalis/Docs/downloads","issues_url":"https://api.github.com/repos/ardalis/Docs/issues{/number}","pulls_url":"https://api.github.com/repos/ardalis/Docs/pulls{/number}","milestones_url":"https://api.github.com/repos/ardalis/Docs/milestones{/number}","notifications_url":"https://api.github.com/repos/ardalis/Docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ardalis/Docs/labels{/name}","releases_url":"https://api.github.com/repos/ardalis/Docs/releases{/id}","created_at":"2015-03-05T15:06:29Z","updated_at":"2015-03-05T15:06:29Z","pushed_at":"2015-04-20T14:32:14Z","git_url":"git://github.com/ardalis/Docs.git","ssh_url":"git@github.com:ardalis/Docs.git","clone_url":"https://github.com/ardalis/Docs.git","svn_url":"https://github.com/ardalis/Docs","homepage":null,"size":4745,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"aspnet:master","ref":"master","sha":"e9446c370275ee057ba8b185f62b27c7be45ec89","user":{"login":"aspnet","id":6476660,"avatar_url":"https://avatars.githubusercontent.com/u/6476660?v=3","gravatar_id":"","url":"https://api.github.com/users/aspnet","html_url":"https://github.com/aspnet","followers_url":"https://api.github.com/users/aspnet/followers","following_url":"https://api.github.com/users/aspnet/following{/other_user}","gists_url":"https://api.github.com/users/aspnet/gists{/gist_id}","starred_url":"https://api.github.com/users/aspnet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aspnet/subscriptions","organizations_url":"https://api.github.com/users/aspnet/orgs","repos_url":"https://api.github.com/users/aspnet/repos","events_url":"https://api.github.com/users/aspnet/events{/privacy}","received_events_url":"https://api.github.com/users/aspnet/received_events","type":"Organization","site_admin":false},"repo":{"id":28239455,"name":"Docs","full_name":"aspnet/Docs","owner":{"login":"aspnet","id":6476660,"avatar_url":"https://avatars.githubusercontent.com/u/6476660?v=3","gravatar_id":"","url":"https://api.github.com/users/aspnet","html_url":"https://github.com/aspnet","followers_url":"https://api.github.com/users/aspnet/followers","following_url":"https://api.github.com/users/aspnet/following{/other_user}","gists_url":"https://api.github.com/users/aspnet/gists{/gist_id}","starred_url":"https://api.github.com/users/aspnet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aspnet/subscriptions","organizations_url":"https://api.github.com/users/aspnet/orgs","repos_url":"https://api.github.com/users/aspnet/repos","events_url":"https://api.github.com/users/aspnet/events{/privacy}","received_events_url":"https://api.github.com/users/aspnet/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/aspnet/Docs","description":"Documentation for ASP.NET 5","fork":false,"url":"https://api.github.com/repos/aspnet/Docs","forks_url":"https://api.github.com/repos/aspnet/Docs/forks","keys_url":"https://api.github.com/repos/aspnet/Docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aspnet/Docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aspnet/Docs/teams","hooks_url":"https://api.github.com/repos/aspnet/Docs/hooks","issue_events_url":"https://api.github.com/repos/aspnet/Docs/issues/events{/number}","events_url":"https://api.github.com/repos/aspnet/Docs/events","assignees_url":"https://api.github.com/repos/aspnet/Docs/assignees{/user}","branches_url":"https://api.github.com/repos/aspnet/Docs/branches{/branch}","tags_url":"https://api.github.com/repos/aspnet/Docs/tags","blobs_url":"https://api.github.com/repos/aspnet/Docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aspnet/Docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aspnet/Docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/aspnet/Docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aspnet/Docs/statuses/{sha}","languages_url":"https://api.github.com/repos/aspnet/Docs/languages","stargazers_url":"https://api.github.com/repos/aspnet/Docs/stargazers","contributors_url":"https://api.github.com/repos/aspnet/Docs/contributors","subscribers_url":"https://api.github.com/repos/aspnet/Docs/subscribers","subscription_url":"https://api.github.com/repos/aspnet/Docs/subscription","commits_url":"https://api.github.com/repos/aspnet/Docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/aspnet/Docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/aspnet/Docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/aspnet/Docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/aspnet/Docs/contents/{+path}","compare_url":"https://api.github.com/repos/aspnet/Docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aspnet/Docs/merges","archive_url":"https://api.github.com/repos/aspnet/Docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aspnet/Docs/downloads","issues_url":"https://api.github.com/repos/aspnet/Docs/issues{/number}","pulls_url":"https://api.github.com/repos/aspnet/Docs/pulls{/number}","milestones_url":"https://api.github.com/repos/aspnet/Docs/milestones{/number}","notifications_url":"https://api.github.com/repos/aspnet/Docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aspnet/Docs/labels{/name}","releases_url":"https://api.github.com/repos/aspnet/Docs/releases{/id}","created_at":"2014-12-19T17:38:02Z","updated_at":"2015-04-20T02:33:26Z","pushed_at":"2015-04-19T19:02:07Z","git_url":"git://github.com/aspnet/Docs.git","ssh_url":"git@github.com:aspnet/Docs.git","clone_url":"https://github.com/aspnet/Docs.git","svn_url":"https://github.com/aspnet/Docs","homepage":null,"size":3844,"stargazers_count":23,"watchers_count":23,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":8,"mirror_url":null,"open_issues_count":73,"forks":8,"open_issues":73,"watchers":23,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/26"},"html":{"href":"https://github.com/aspnet/Docs/pull/26"},"issue":{"href":"https://api.github.com/repos/aspnet/Docs/issues/26"},"comments":{"href":"https://api.github.com/repos/aspnet/Docs/issues/26/comments"},"review_comments":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/26/comments"},"review_comment":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/26/commits"},"statuses":{"href":"https://api.github.com/repos/aspnet/Docs/statuses/845ca9a004ba204918fbfb12945ee27273cb0314"}}}}