diff --git a/core/CHANGELOG.txt b/core/CHANGELOG.txt
index 56b804d..adc8ff2 100644
--- a/core/CHANGELOG.txt
+++ b/core/CHANGELOG.txt
@@ -1314,7 +1314,7 @@ Drupal 4.0.0, 2002-06-15
     * Changed output to valid XHTML.
     * Improved multiple sites using the same Drupal database support.
     * Added support for session IDs in URLs instead of cookies.
-    * Made the type of content on the front page configurable.
+    * Made the type of content on the home page configurable.
     * Made each cloud site have its own settings.
     * Modules and themes can now be enabled/disabled using the administration pages.
     * Added URL abstraction for links.
diff --git a/core/authorize.php b/core/authorize.php
index 073770a..9aa42d9 100644
--- a/core/authorize.php
+++ b/core/authorize.php
@@ -142,8 +142,8 @@ function authorize_access_allowed(Request $request) {
           '#title' => t('Administration pages'),
         ],
         $default_options + [
-          '#url' => Url::fromRoute('<front>'),
-          '#title' => t('Front page'),
+          '#url' => Url::fromRoute('<home>'),
+          '#title' => t('Home page'),
         ],
       ];
     }
diff --git a/core/includes/batch.inc b/core/includes/batch.inc
index f84c01b..21d9fcc 100644
--- a/core/includes/batch.inc
+++ b/core/includes/batch.inc
@@ -43,7 +43,7 @@ function _batch_page(Request $request) {
     $batch = \Drupal::service('batch.storage')->load($request_id);
     if (!$batch) {
       drupal_set_message(t('No active batch.'), 'error');
-      return new RedirectResponse(\Drupal::url('<front>', [], ['absolute' => TRUE]));
+      return new RedirectResponse(\Drupal::url('<home>', [], ['absolute' => TRUE]));
     }
   }
 
diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index f180cbd..df33cca 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -714,8 +714,8 @@ function template_preprocess_links(&$variables) {
             // drupal.active-link library know the path in a standardized manner.
             $system_path = $url->getInternalPath();
             // @todo System path is deprecated - use the route name and parameters.
-            // Special case for the front page.
-            $li_attributes['data-drupal-link-system-path'] = $system_path == '' ? '<front>' : $system_path;
+            // Special case for the home page.
+            $li_attributes['data-drupal-link-system-path'] = $system_path == '' ? '<home>' : $system_path;
           }
         }
 
@@ -1353,7 +1353,7 @@ function template_preprocess_page(&$variables) {
   }
 
   $variables['base_path']         = base_path();
-  $variables['front_page']        = \Drupal::url('<front>');
+  $variables['front_page']        = \Drupal::url('<home>');
   $variables['language']          = $language_interface;
 
   // An exception might be thrown.
diff --git a/core/lib/Drupal/Core/Entity/EntityDeleteFormTrait.php b/core/lib/Drupal/Core/Entity/EntityDeleteFormTrait.php
index 8d5352b..f07512b 100644
--- a/core/lib/Drupal/Core/Entity/EntityDeleteFormTrait.php
+++ b/core/lib/Drupal/Core/Entity/EntityDeleteFormTrait.php
@@ -99,8 +99,8 @@ protected function getRedirectUrl() {
       return $entity->urlInfo('collection');
     }
     else {
-      // Otherwise fall back to the front page.
-      return Url::fromRoute('<front>');
+      // Otherwise fall back to the home page.
+      return Url::fromRoute('<home>');
     }
   }
 
diff --git a/core/lib/Drupal/Core/EventSubscriber/ActiveLinkResponseFilter.php b/core/lib/Drupal/Core/EventSubscriber/ActiveLinkResponseFilter.php
index 2f965e1..23be50f 100644
--- a/core/lib/Drupal/Core/EventSubscriber/ActiveLinkResponseFilter.php
+++ b/core/lib/Drupal/Core/EventSubscriber/ActiveLinkResponseFilter.php
@@ -108,8 +108,8 @@ public function onResponse(FilterResponseEvent $event) {
    * @param string $current_path
    *   The system path of the currently active page.
    * @param bool $is_front
-   *   Whether the current page is the front page (which implies the current
-   *   path might also be <front>).
+   *   Whether the current page is the home page (which implies the current
+   *   path might also be <home>).
    * @param string $url_language
    *   The language code of the current URL.
    * @param array $query
@@ -131,16 +131,16 @@ public static function setLinkActiveClass($html_markup, $current_path, $is_front
     // There are two distinct conditions that can make a link be marked active:
     // 1. A link has the current path in its 'data-drupal-link-system-path'
     //    attribute.
-    // 2. We are on the front page and a link has the special '<front>' value in
+    // 2. We are on the home page and a link has the special '<home>' value in
     //    its 'data-drupal-link-system-path' attribute.
     while (strpos($html_markup, $search_key_current_path, $offset) !== FALSE || ($is_front && strpos($html_markup, $search_key_front, $offset) !== FALSE)) {
       $pos_current_path = strpos($html_markup, $search_key_current_path, $offset);
-      // Only look for links with the special '<front>' system path if we are
-      // actually on the front page.
+      // Only look for links with the special '<home>' system path if we are
+      // actually on the home page.
       $pos_front = $is_front ? strpos($html_markup, $search_key_front, $offset) : FALSE;
 
       // Determine which of the two values is the next match: the exact path, or
-      // the <front> special case.
+      // the <home> special case.
       $pos_match = NULL;
       if ($pos_front === FALSE) {
         $pos_match = $pos_current_path;
diff --git a/core/lib/Drupal/Core/Menu/InaccessibleMenuLink.php b/core/lib/Drupal/Core/Menu/InaccessibleMenuLink.php
index 39090e2..bd870a9 100644
--- a/core/lib/Drupal/Core/Menu/InaccessibleMenuLink.php
+++ b/core/lib/Drupal/Core/Menu/InaccessibleMenuLink.php
@@ -27,7 +27,7 @@ class InaccessibleMenuLink extends MenuLinkBase {
   public function __construct(MenuLinkInterface $wrapped_link) {
     $this->wrappedLink = $wrapped_link;
     $plugin_definition = [
-      'route_name' => '<front>',
+      'route_name' => '<home>',
       'route_parameters' => [],
       'url' => NULL,
     ] + $this->wrappedLink->getPluginDefinition();
diff --git a/core/lib/Drupal/Core/Path/PathMatcher.php b/core/lib/Drupal/Core/Path/PathMatcher.php
index 2b616c2..9984c0f 100644
--- a/core/lib/Drupal/Core/Path/PathMatcher.php
+++ b/core/lib/Drupal/Core/Path/PathMatcher.php
@@ -12,14 +12,14 @@
 class PathMatcher implements PathMatcherInterface {
 
   /**
-   * Whether the current page is the front page.
+   * Whether the current page is the home page.
    *
    * @var bool
    */
   protected $isCurrentFrontPage;
 
   /**
-   * The default front page.
+   * The default home page.
    *
    * @var string
    */
@@ -71,8 +71,8 @@ public function matchPath($path, $patterns) {
         '/(\r\n?|\n)/',
         // Quote asterisks.
         '/\\\\\*/',
-        // Quote <front> keyword.
-        '/(^|\|)\\\\<front\\\\>($|\|)/',
+        // Quote <home> keyword.
+        '/(^|\|)\\\\<home\\\\>($|\|)/',
       );
       $replacements = array(
         '|',
@@ -103,13 +103,13 @@ public function isFrontPage() {
   }
 
   /**
-   * Gets the current front page path.
+   * Gets the current home page path.
    *
    * @return string
-   *   The front page path.
+   *   The home page path.
    */
   protected function getFrontPagePath() {
-    // Lazy-load front page config.
+    // Lazy-load home page config.
     if (!isset($this->frontPage)) {
       $this->frontPage = $this->configFactory->get('system.site')
         ->get('page.front');
diff --git a/core/lib/Drupal/Core/Path/PathMatcherInterface.php b/core/lib/Drupal/Core/Path/PathMatcherInterface.php
index 0cfa51c..7e67db8 100644
--- a/core/lib/Drupal/Core/Path/PathMatcherInterface.php
+++ b/core/lib/Drupal/Core/Path/PathMatcherInterface.php
@@ -21,10 +21,10 @@
   public function matchPath($path, $patterns);
 
   /**
-   * Checks if the current page is the front page.
+   * Checks if the current page is the home page.
    *
    * @return bool
-   *   TRUE if the current page is the front page.
+   *   TRUE if the current page is the home page.
    */
   public function isFrontPage();
 
diff --git a/core/lib/Drupal/Core/Path/PathValidator.php b/core/lib/Drupal/Core/Path/PathValidator.php
index f7efdb1..b60b160 100644
--- a/core/lib/Drupal/Core/Path/PathValidator.php
+++ b/core/lib/Drupal/Core/Path/PathValidator.php
@@ -104,8 +104,8 @@ protected function getUrl($path, $access_check) {
       $options['fragment'] = $parsed_url['fragment'];
     }
 
-    if ($parsed_url['path'] == '<front>') {
-      return new Url('<front>', [], $options);
+    if ($parsed_url['path'] == '<home>') {
+      return new Url('<home>', [], $options);
     }
     elseif ($parsed_url['path'] == '<none>') {
       return new Url('<none>', [], $options);
diff --git a/core/lib/Drupal/Core/PathProcessor/PathProcessorFront.php b/core/lib/Drupal/Core/PathProcessor/PathProcessorFront.php
index a800842..9710f8a 100644
--- a/core/lib/Drupal/Core/PathProcessor/PathProcessorFront.php
+++ b/core/lib/Drupal/Core/PathProcessor/PathProcessorFront.php
@@ -8,7 +8,7 @@
 use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
 
 /**
- * Processes the inbound path by resolving it to the front page if empty.
+ * Processes the inbound path by resolving it to the home page if empty.
  *
  * @todo - remove ::processOutbound() when we remove UrlGenerator::fromPath().
  */
@@ -25,7 +25,7 @@ class PathProcessorFront implements InboundPathProcessorInterface, OutboundPathP
    * Constructs a PathProcessorFront object.
    *
    * @param \Drupal\Core\Config\ConfigFactoryInterface $config
-   *   A config factory for retrieving the site front page configuration.
+   *   A config factory for retrieving the site home page configuration.
    */
   public function __construct(ConfigFactoryInterface $config) {
     $this->config = $config;
@@ -50,8 +50,8 @@ public function processInbound($path, Request $request) {
    * {@inheritdoc}
    */
   public function processOutbound($path, &$options = array(), Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
-    // The special path '<front>' links to the default front page.
-    if ($path === '/<front>') {
+    // The special path '<home>' links to the default home page.
+    if ($path === '/<home>') {
       $path = '/';
     }
     return $path;
diff --git a/core/lib/Drupal/Core/Routing/NullGenerator.php b/core/lib/Drupal/Core/Routing/NullGenerator.php
index d9bc9b0..e494e25 100644
--- a/core/lib/Drupal/Core/Routing/NullGenerator.php
+++ b/core/lib/Drupal/Core/Routing/NullGenerator.php
@@ -31,7 +31,7 @@ public function __construct(RequestStack $request_stack) {
    * protected method.
    */
   protected function getRoute($name) {
-    if ($name === '<front>') {
+    if ($name === '<home>') {
       return new Route('/');
     }
     elseif ($name === '<current>') {
diff --git a/core/lib/Drupal/Core/Url.php b/core/lib/Drupal/Core/Url.php
index e7624d8..ed734c6 100644
--- a/core/lib/Drupal/Core/Url.php
+++ b/core/lib/Drupal/Core/Url.php
@@ -353,19 +353,19 @@ protected static function fromEntityUri(array $uri_parts, array $options, $uri)
    * \Drupal\Core\Path\PathValidatorInterface implementation. The semantics of
    * the 'internal:' URI scheme are different:
    * - PathValidatorInterface accepts paths without a leading slash (e.g.
-   *   'node/add') as well as 2 special paths: '<front>' and '<none>', which are
+   *   'node/add') as well as 2 special paths: '<home>' and '<none>', which are
    *   mapped to the correspondingly named routes.
    * - 'internal:' URIs store paths with a leading slash that represents the
-   *   root — i.e. the front page — (e.g. 'internal:/node/add'), and doesn't
+   *   root — i.e. the home page — (e.g. 'internal:/node/add'), and doesn't
    *   have any exceptions.
    *
    * To clarify, a few examples of path plus corresponding 'internal:' URI:
    * - 'node/add' -> 'internal:/node/add'
    * - 'node/add?foo=bar' -> 'internal:/node/add?foo=bar'
    * - 'node/add#kitten' -> 'internal:/node/add#kitten'
-   * - '<front>' -> 'internal:/'
-   * - '<front>foo=bar' -> 'internal:/?foo=bar'
-   * - '<front>#kitten' -> 'internal:/#kitten'
+   * - '<home>' -> 'internal:/'
+   * - '<home>foo=bar' -> 'internal:/?foo=bar'
+   * - '<home>#kitten' -> 'internal:/#kitten'
    * - '<none>' -> 'internal:'
    * - '<none>foo=bar' -> 'internal:?foo=bar'
    * - '<none>#kitten' -> 'internal:#kitten'
@@ -373,7 +373,7 @@ protected static function fromEntityUri(array $uri_parts, array $options, $uri)
    * Therefore, when using a PathValidatorInterface to validate 'internal:'
    * URIs, we must map:
    * - 'internal:' (path component is '')  to the special '<none>' path
-   * - 'internal:/' (path component is '/') to the special '<front>' path
+   * - 'internal:/' (path component is '/') to the special '<home>' path
    * - 'internal:/some-path' (path component is '/some-path') to 'some-path'
    *
    * @param array $uri_parts
@@ -396,7 +396,7 @@ protected static function fromInternalUri(array $uri_parts, array $options) {
       $uri_parts['path'] = '<none>';
     }
     elseif ($uri_parts['path'] === '/') {
-      $uri_parts['path'] = '<front>';
+      $uri_parts['path'] = '<home>';
     }
     else {
       if ($uri_parts['path'][0] !== '/') {
diff --git a/core/lib/Drupal/Core/Utility/LinkGenerator.php b/core/lib/Drupal/Core/Utility/LinkGenerator.php
index 0ec5280..8eae347 100644
--- a/core/lib/Drupal/Core/Utility/LinkGenerator.php
+++ b/core/lib/Drupal/Core/Utility/LinkGenerator.php
@@ -128,8 +128,8 @@ public function generate($text, Url $url) {
       if ($url->isRouted() && !isset($variables['options']['attributes']['data-drupal-link-system-path'])) {
         // @todo System path is deprecated - use the route name and parameters.
         $system_path = $url->getInternalPath();
-        // Special case for the front page.
-        $variables['options']['attributes']['data-drupal-link-system-path'] = $system_path == '' ? '<front>' : $system_path;
+        // Special case for the home page.
+        $variables['options']['attributes']['data-drupal-link-system-path'] = $system_path == '' ? '<home>' : $system_path;
       }
     }
 
diff --git a/core/misc/active-link.js b/core/misc/active-link.js
index 9cf55b4..d0d363f 100644
--- a/core/misc/active-link.js
+++ b/core/misc/active-link.js
@@ -30,10 +30,10 @@
       var originalSelectors = ['[data-drupal-link-system-path="' + path.currentPath + '"]'];
       var selectors;
 
-      // If this is the front page, we have to check for the <front> path as
+      // If this is the home page, we have to check for the <home> path as
       // well.
       if (path.isFront) {
-        originalSelectors.push('[data-drupal-link-system-path="<front>"]');
+        originalSelectors.push('[data-drupal-link-system-path="<home>"]');
       }
 
       // Add language filtering.
diff --git a/core/modules/action/src/Plugin/Action/GotoAction.php b/core/modules/action/src/Plugin/Action/GotoAction.php
index 5c1b552..e22ea06 100644
--- a/core/modules/action/src/Plugin/Action/GotoAction.php
+++ b/core/modules/action/src/Plugin/Action/GotoAction.php
@@ -76,9 +76,9 @@ public function execute($object = NULL) {
     // relative to the site's base URL.
     if (!UrlHelper::isExternal($url)) {
       $parts = UrlHelper::parse($url);
-      // @todo '<front>' is valid input for BC reasons, may be removed by
+      // @todo '<home>' is valid input for BC reasons, may be removed by
       //   https://www.drupal.org/node/2421941
-      if ($parts['path'] === '<front>') {
+      if ($parts['path'] === '<home>') {
         $parts['path'] = '';
       }
       $uri = 'base:' . $parts['path'];
diff --git a/core/modules/big_pipe/src/Tests/BigPipeTest.php b/core/modules/big_pipe/src/Tests/BigPipeTest.php
index a3f773e..d889317 100644
--- a/core/modules/big_pipe/src/Tests/BigPipeTest.php
+++ b/core/modules/big_pipe/src/Tests/BigPipeTest.php
@@ -76,7 +76,7 @@ public function testNoJsDetection() {
     $no_js_to_js_markup = '<script>document.cookie = "' . BigPipeStrategy::NOJS_COOKIE . '=1; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT"</script>';
 
     // 1. No session (anonymous).
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $this->assertSessionCookieExists(FALSE);
     $this->assertBigPipeNoJsCookieExists(FALSE);
     $this->assertNoRaw('<noscript><meta http-equiv="Refresh" content="0; URL=');
diff --git a/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php b/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php
index e38d60b..c6e5548 100644
--- a/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php
+++ b/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php
@@ -121,7 +121,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
       else {
         $paths = preg_split("(\r\n?|\n)", $pages);
         foreach ($paths as $key => $path) {
-          $paths[$key] = $path === '<front>' ? $path : '/' . ltrim($path, '/');
+          $paths[$key] = $path === '<home>' ? $path : '/' . ltrim($path, '/');
         }
         $visibility['request_path'] = array(
           'id' => 'request_path',
diff --git a/core/modules/block/src/Tests/BlockHiddenRegionTest.php b/core/modules/block/src/Tests/BlockHiddenRegionTest.php
index b7d44ad..1204654 100644
--- a/core/modules/block/src/Tests/BlockHiddenRegionTest.php
+++ b/core/modules/block/src/Tests/BlockHiddenRegionTest.php
@@ -47,7 +47,7 @@ public function testBlockNotInHiddenRegion() {
 
     // Ensure that the search form block is displayed.
     $this->drupalGet('');
-    $this->assertText('Search', 'Block was displayed on the front page.');
+    $this->assertText('Search', 'Block was displayed on the home page.');
 
     // Install "block_test_theme" and set it as the default theme.
     $theme = 'block_test_theme';
@@ -67,7 +67,7 @@ public function testBlockNotInHiddenRegion() {
 
     // Ensure that the search form block is displayed.
     $this->drupalGet('');
-    $this->assertText('Search', 'Block was displayed on the front page.');
+    $this->assertText('Search', 'Block was displayed on the home page.');
   }
 
 }
diff --git a/core/modules/block/src/Tests/BlockTest.php b/core/modules/block/src/Tests/BlockTest.php
index b13a912..f04aac6 100644
--- a/core/modules/block/src/Tests/BlockTest.php
+++ b/core/modules/block/src/Tests/BlockTest.php
@@ -45,7 +45,7 @@ function testBlockVisibility() {
     $this->assertFieldChecked('edit-visibility-request-path-negate-1');
 
     $this->drupalGet('');
-    $this->assertText($title, 'Block was displayed on the front page.');
+    $this->assertText($title, 'Block was displayed on the home page.');
 
     $this->drupalGet('user');
     $this->assertNoText($title, 'Block was not displayed according to block visibility rules.');
@@ -125,7 +125,7 @@ function testBlockVisibilityListedEmpty() {
     // Confirm that the block is not displayed to anonymous users.
     $this->drupalLogout();
     $this->drupalGet('');
-    $this->assertNoText($title, 'Block was not displayed to anonymous users on the front page.');
+    $this->assertNoText($title, 'Block was not displayed to anonymous users on the home page.');
   }
 
   /**
@@ -413,14 +413,14 @@ public function testBlockCacheTags() {
     $block = $this->drupalPlaceBlock('system_powered_by_block', array('id' => 'powered'));
 
     // Prime the page cache.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
 
     // Verify a cache hit, but also the presence of the correct cache tags in
     // both the page and block caches.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
-    $cid_parts = array(\Drupal::url('<front>', array(), array('absolute' => TRUE)), 'html');
+    $cid_parts = array(\Drupal::url('<home>', array(), array('absolute' => TRUE)), 'html');
     $cid = implode(':', $cid_parts);
     $cache_entry = \Drupal::cache('render')->get($cid);
     $expected_cache_tags = array(
@@ -445,22 +445,22 @@ public function testBlockCacheTags() {
     // The "Powered by Drupal" block is modified; verify a cache miss.
     $block->setRegion('content');
     $block->save();
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
 
     // Now we should have a cache hit again.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
 
     // Place the "Powered by Drupal" block another time; verify a cache miss.
     $block_2 = $this->drupalPlaceBlock('system_powered_by_block', array('id' => 'powered-2'));
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
 
     // Verify a cache hit, but also the presence of the correct cache tags.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
-    $cid_parts = array(\Drupal::url('<front>', array(), array('absolute' => TRUE)), 'html');
+    $cid_parts = array(\Drupal::url('<home>', array(), array('absolute' => TRUE)), 'html');
     $cid = implode(':', $cid_parts);
     $cache_entry = \Drupal::cache('render')->get($cid);
     $expected_cache_tags = array(
@@ -493,12 +493,12 @@ public function testBlockCacheTags() {
     $this->assertIdentical($cache_entry->tags, $expected_cache_tags);
 
     // Now we should have a cache hit again.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
 
     // Delete the "Powered by Drupal" blocks; verify a cache miss.
     entity_delete_multiple('block', array('powered', 'powered-2'));
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
   }
 
@@ -528,7 +528,7 @@ public function testUninstallTheme() {
     $theme_handler->install(['seven']);
     $this->config('system.theme')->set('default', 'seven')->save();
     $block = $this->drupalPlaceBlock('system_powered_by_block', ['theme' => 'seven', 'region' => 'help']);
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertText('Powered by Drupal');
 
     $this->config('system.theme')->set('default', 'classy')->save();
@@ -544,11 +544,11 @@ public function testUninstallTheme() {
   public function testBlockAccess() {
     $this->drupalPlaceBlock('test_access', ['region' => 'help']);
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertNoText('Hello test world');
 
     \Drupal::state()->set('test_block_access', TRUE);
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertText('Hello test world');
   }
 
diff --git a/core/modules/block/src/Tests/BlockTestBase.php b/core/modules/block/src/Tests/BlockTestBase.php
index 970de52..3dfc8cf 100644
--- a/core/modules/block/src/Tests/BlockTestBase.php
+++ b/core/modules/block/src/Tests/BlockTestBase.php
@@ -34,7 +34,7 @@
   protected function setUp() {
     parent::setUp();
 
-    // Use the test page as the front page.
+    // Use the test page as the home page.
     $this->config('system.site')->set('page.front', '/test-page')->save();
 
     // Create Full HTML text format.
diff --git a/core/modules/block/src/Tests/Update/BlockConditionMissingSchemaUpdateTest.php b/core/modules/block/src/Tests/Update/BlockConditionMissingSchemaUpdateTest.php
index 8eef2e3..42c6576 100644
--- a/core/modules/block/src/Tests/Update/BlockConditionMissingSchemaUpdateTest.php
+++ b/core/modules/block/src/Tests/Update/BlockConditionMissingSchemaUpdateTest.php
@@ -44,7 +44,7 @@ protected function setDatabaseDumpFiles() {
    */
   public function testUpdateHookN() {
     $this->runUpdates();
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     // If the block is fixed by block_post_update_fix_negate_in_conditions()
     // then it will be visible.
     $this->assertText('Test missing schema on conditions');
diff --git a/core/modules/block/tests/src/Kernel/Migrate/d6/MigrateBlockTest.php b/core/modules/block/tests/src/Kernel/Migrate/d6/MigrateBlockTest.php
index c5dfba2..6c79807 100644
--- a/core/modules/block/tests/src/Kernel/Migrate/d6/MigrateBlockTest.php
+++ b/core/modules/block/tests/src/Kernel/Migrate/d6/MigrateBlockTest.php
@@ -98,7 +98,7 @@ public function testBlockMigration() {
     $visibility = [];
     $visibility['request_path']['id'] = 'request_path';
     $visibility['request_path']['negate'] = TRUE;
-    $visibility['request_path']['pages'] = "<front>\n/node/1\n/blog/*";
+    $visibility['request_path']['pages'] = "<home>\n/node/1\n/blog/*";
     $this->assertEntity('user', $visibility, 'sidebar_first', 'bartik', 0, '', '0');
 
     $visibility = [];
@@ -136,7 +136,7 @@ public function testBlockMigration() {
     // Check custom blocks
     $visibility['request_path']['id'] = 'request_path';
     $visibility['request_path']['negate'] = FALSE;
-    $visibility['request_path']['pages'] = '<front>';
+    $visibility['request_path']['pages'] = '<home>';
     $this->assertEntity('block', $visibility, 'content', 'bartik', 0, 'Static Block', 'visible');
 
     $visibility['request_path']['id'] = 'request_path';
diff --git a/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockVisibilityTest.php b/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockVisibilityTest.php
index 22b43b5..45ca40c 100644
--- a/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockVisibilityTest.php
+++ b/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockVisibilityTest.php
@@ -44,20 +44,20 @@ public function testTransformNoData() {
    * @covers ::transform
    */
   public function testTransformSinglePageWithFront() {
-    $visibility = $this->plugin->transform([0, '<front>', []], $this->migrateExecutable, $this->row, 'destinationproperty');
+    $visibility = $this->plugin->transform([0, '<home>', []], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame('request_path', $visibility['request_path']['id']);
     $this->assertTrue($visibility['request_path']['negate']);
-    $this->assertSame('<front>', $visibility['request_path']['pages']);
+    $this->assertSame('<home>', $visibility['request_path']['pages']);
   }
 
   /**
    * @covers ::transform
    */
   public function testTransformMultiplePagesWithFront() {
-    $visibility = $this->plugin->transform([1, "foo\n/bar\rbaz\r\n<front>", []], $this->migrateExecutable, $this->row, 'destinationproperty');
+    $visibility = $this->plugin->transform([1, "foo\n/bar\rbaz\r\n<home>", []], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame('request_path', $visibility['request_path']['id']);
     $this->assertFalse($visibility['request_path']['negate']);
-    $this->assertSame("/foo\n/bar\n/baz\n<front>", $visibility['request_path']['pages']);
+    $this->assertSame("/foo\n/bar\n/baz\n<home>", $visibility['request_path']['pages']);
   }
 
   /**
diff --git a/core/modules/block/tests/src/Unit/Plugin/migrate/source/BlockTest.php b/core/modules/block/tests/src/Unit/Plugin/migrate/source/BlockTest.php
index 4a60bd1..e8f2c39 100644
--- a/core/modules/block/tests/src/Unit/Plugin/migrate/source/BlockTest.php
+++ b/core/modules/block/tests/src/Unit/Plugin/migrate/source/BlockTest.php
@@ -48,7 +48,7 @@ class BlockTest extends MigrateSqlSourceTestCase {
       'weight' => 5,
       'region' => 'right',
       'visibility' => 0,
-      'pages' => '<front>',
+      'pages' => '<home>',
       'title' => 'Test Title 02',
       'cache' => -1,
       'roles' => [2]
@@ -80,7 +80,7 @@ class BlockTest extends MigrateSqlSourceTestCase {
       'weight' => 5,
       'region' => 'right',
       'visibility' => 0,
-      'pages' => '<front>',
+      'pages' => '<home>',
       'title' => 'Test Title 02',
       'cache' => -1,
     ),
diff --git a/core/modules/block_content/src/Tests/BlockContentPageViewTest.php b/core/modules/block_content/src/Tests/BlockContentPageViewTest.php
index 46c19cb..4070ea4 100644
--- a/core/modules/block_content/src/Tests/BlockContentPageViewTest.php
+++ b/core/modules/block_content/src/Tests/BlockContentPageViewTest.php
@@ -28,7 +28,7 @@ public function testPageEdit() {
 
     // Assert response was '200' and not '403 Access denied'.
     $this->assertResponse('200', 'User was able the view the block');
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertRaw(t('This block is broken or missing. You may be missing content or you might need to enable the original module.'));
   }
 
diff --git a/core/modules/block_place/tests/src/Functional/BlockPlaceTest.php b/core/modules/block_place/tests/src/Functional/BlockPlaceTest.php
index 8e89048..009add9 100644
--- a/core/modules/block_place/tests/src/Functional/BlockPlaceTest.php
+++ b/core/modules/block_place/tests/src/Functional/BlockPlaceTest.php
@@ -30,7 +30,7 @@ public function testPlacingBlocksAdmin() {
       'administer blocks',
       'view the administration theme',
     ]));
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $this->clickLink('Place block');
 
     // Each region should have one link to place a block.
@@ -65,7 +65,7 @@ public function testPlacingBlocksUnprivileged() {
       'access toolbar',
       'view the administration theme',
     ]));
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $links = $this->xpath('//a[text()=:label]', [':label' => 'Place block']);
     $this->assertEmpty($links);
 
diff --git a/core/modules/book/config/install/core.base_field_override.node.book.promote.yml b/core/modules/book/config/install/core.base_field_override.node.book.promote.yml
index 79e2ed6..15eb55e 100644
--- a/core/modules/book/config/install/core.base_field_override.node.book.promote.yml
+++ b/core/modules/book/config/install/core.base_field_override.node.book.promote.yml
@@ -7,7 +7,7 @@ id: node.book.promote
 field_name: promote
 entity_type: node
 bundle: book
-label: 'Promoted to front page'
+label: 'Promoted to home page'
 description: ''
 required: false
 translatable: true
diff --git a/core/modules/book/src/BookBreadcrumbBuilder.php b/core/modules/book/src/BookBreadcrumbBuilder.php
index ed39a53..49b6dc3 100644
--- a/core/modules/book/src/BookBreadcrumbBuilder.php
+++ b/core/modules/book/src/BookBreadcrumbBuilder.php
@@ -59,7 +59,7 @@ public function build(RouteMatchInterface $route_match) {
     $book_nids = array();
     $breadcrumb = new Breadcrumb();
 
-    $links = array(Link::createFromRoute($this->t('Home'), '<front>'));
+    $links = array(Link::createFromRoute($this->t('Home'), '<home>'));
     $book = $route_match->getParameter('node')->book;
     $depth = 1;
     // We skip the current node.
diff --git a/core/modules/book/src/Tests/BookTest.php b/core/modules/book/src/Tests/BookTest.php
index e5367a2..590781b 100644
--- a/core/modules/book/src/Tests/BookTest.php
+++ b/core/modules/book/src/Tests/BookTest.php
@@ -287,7 +287,7 @@ function checkBookNode(EntityInterface $node, $nodes, $previous = FALSE, $up = F
 
     // Compute the expected breadcrumb.
     $expected_breadcrumb = array();
-    $expected_breadcrumb[] = \Drupal::url('<front>');
+    $expected_breadcrumb[] = \Drupal::url('<home>');
     foreach ($breadcrumb as $a_node) {
       $expected_breadcrumb[] = $a_node->url();
     }
@@ -432,7 +432,7 @@ function testBookNavigationBlock() {
 
     // Test correct display of the block.
     $nodes = $this->createBook();
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertText($block->label(), 'Book navigation block is displayed.');
     $this->assertText($this->book->label(), format_string('Link to book root (@title) is displayed.', array('@title' => $nodes[0]->label())));
     $this->assertNoText($nodes[0]->label(), 'No links to individual book pages are displayed.');
@@ -519,7 +519,7 @@ function testNavigationBlockOnAccessModuleInstalled() {
     $this->assertText($block->label(), 'Book navigation block is displayed to anonymous users.');
 
     // Test the 'book pages' block_mode setting.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertNoText($block->label(), 'Book navigation block is not shown on non-book pages.');
   }
 
diff --git a/core/modules/color/tests/src/Functional/ColorTest.php b/core/modules/color/tests/src/Functional/ColorTest.php
index dc44566..4795ecc 100644
--- a/core/modules/color/tests/src/Functional/ColorTest.php
+++ b/core/modules/color/tests/src/Functional/ColorTest.php
@@ -113,7 +113,7 @@ function _testColor($theme, $test_values) {
     $edit[$test_values['palette_input']] = '#123456';
     $this->drupalPostForm($settings_path, $edit, t('Save configuration'));
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $stylesheets = $this->config('color.theme.' . $theme)->get('stylesheets');
     foreach ($stylesheets as $stylesheet) {
       $this->assertPattern('|' . file_url_transform_relative(file_create_url($stylesheet)) . '|', 'Make sure the color stylesheet is included in the content. (' . $theme . ')');
@@ -126,7 +126,7 @@ function _testColor($theme, $test_values) {
     $edit['scheme'] = $test_values['scheme'];
     $this->drupalPostForm($settings_path, $edit, t('Save configuration'));
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $stylesheets = $this->config('color.theme.' . $theme)->get('stylesheets');
     foreach ($stylesheets as $stylesheet) {
       $stylesheet_content = join("\n", file($stylesheet));
@@ -137,7 +137,7 @@ function _testColor($theme, $test_values) {
     $config = $this->config('system.performance');
     $config->set('css.preprocess', 1);
     $config->save();
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $stylesheets = \Drupal::state()->get('drupal_css_cache_files') ?: array();
     $stylesheet_content = '';
     foreach ($stylesheets as $uri) {
diff --git a/core/modules/comment/comment.module b/core/modules/comment/comment.module
index b0f1550..2e854e1 100644
--- a/core/modules/comment/comment.module
+++ b/core/modules/comment/comment.module
@@ -653,8 +653,8 @@ function template_preprocess_comment(&$variables) {
   }
 
   if (isset($comment->in_preview)) {
-    $variables['title'] = \Drupal::l($comment->getSubject(), new Url('<front>'));
-    $variables['permalink'] = \Drupal::l(t('Permalink'), new Url('<front>'));
+    $variables['title'] = \Drupal::l($comment->getSubject(), new Url('<home>'));
+    $variables['permalink'] = \Drupal::l(t('Permalink'), new Url('<home>'));
   }
   else {
     $uri = $comment->permalink();
diff --git a/core/modules/comment/src/CommentBreadcrumbBuilder.php b/core/modules/comment/src/CommentBreadcrumbBuilder.php
index 1ea4616..2950eee 100644
--- a/core/modules/comment/src/CommentBreadcrumbBuilder.php
+++ b/core/modules/comment/src/CommentBreadcrumbBuilder.php
@@ -45,7 +45,7 @@ public function applies(RouteMatchInterface $route_match) {
   public function build(RouteMatchInterface $route_match) {
     $breadcrumb = new Breadcrumb();
     $breadcrumb->addCacheContexts(['route']);
-    $breadcrumb->addLink(Link::createFromRoute($this->t('Home'), '<front>'));
+    $breadcrumb->addLink(Link::createFromRoute($this->t('Home'), '<home>'));
 
     $entity = $route_match->getParameter('entity');
     $breadcrumb->addLink(new Link($entity->label(), $entity->urlInfo()));
diff --git a/core/modules/config/src/Tests/CacheabilityMetadataConfigOverrideIntegrationTest.php b/core/modules/config/src/Tests/CacheabilityMetadataConfigOverrideIntegrationTest.php
index 3ef0754..da6f5a3 100644
--- a/core/modules/config/src/Tests/CacheabilityMetadataConfigOverrideIntegrationTest.php
+++ b/core/modules/config/src/Tests/CacheabilityMetadataConfigOverrideIntegrationTest.php
@@ -39,7 +39,7 @@ protected function setUp() {
   public function testConfigOverride() {
     // Check the default (disabled) state of the cache context. The block label
     // should not be overridden.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertNoText('Overridden block label');
 
     // Both the cache context and tag should be present.
@@ -49,7 +49,7 @@ public function testConfigOverride() {
     // Flip the state of the cache context. The block label should now be
     // overridden.
     \Drupal::state()->set('config_override_integration_test.enabled', TRUE);
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertText('Overridden block label');
 
     // Both the cache context and tag should still be present.
diff --git a/core/modules/config/src/Tests/ConfigLanguageOverrideWebTest.php b/core/modules/config/src/Tests/ConfigLanguageOverrideWebTest.php
index f966e5f..f30e4df 100644
--- a/core/modules/config/src/Tests/ConfigLanguageOverrideWebTest.php
+++ b/core/modules/config/src/Tests/ConfigLanguageOverrideWebTest.php
@@ -63,11 +63,11 @@ function testSiteNameTranslation() {
     $this->assertNoText('XX site name');
 
     // During path resolution the system.site configuration object is used to
-    // determine the front page. This occurs before language negotiation causing
+    // determine the home page. This occurs before language negotiation causing
     // the configuration factory to cache an object without the correct
     // overrides. We are testing that the configuration factory is
     // re-initialised after language negotiation. Ensure that it applies when
-    // we access the XX front page.
+    // we access the XX home page.
     // @see \Drupal\Core\PathProcessor::processInbound()
     $this->drupalGet('xx');
     $this->assertText('XX site name');
diff --git a/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php b/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php
index b69357e..64135a5 100644
--- a/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php
+++ b/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php
@@ -594,7 +594,7 @@ public function testViewsTranslationUI() {
     $json = Json::decode($response);
     $this->assertTrue(strpos($json[$ids[0]], 'Translate view'), 'Translate view contextual link added.');
 
-    $description = 'All content promoted to the front page.';
+    $description = 'All content promoted to the home page.';
     $human_readable_name = 'Frontpage';
     $display_settings_master = 'Master';
     $display_options_master = '(Empty)';
diff --git a/core/modules/contact/src/ContactFormInterface.php b/core/modules/contact/src/ContactFormInterface.php
index d179c15..7e97084 100644
--- a/core/modules/contact/src/ContactFormInterface.php
+++ b/core/modules/contact/src/ContactFormInterface.php
@@ -36,7 +36,7 @@ public function getRedirectPath();
   /**
    * Returns the url object for redirect path.
    *
-   * Empty redirect property results a url object of front page.
+   * Empty redirect property results a url object of home page.
    *
    * @return \Drupal\core\Url
    *   The redirect url object.
diff --git a/core/modules/contact/src/Entity/ContactForm.php b/core/modules/contact/src/Entity/ContactForm.php
index 9c63747..fd64496 100644
--- a/core/modules/contact/src/Entity/ContactForm.php
+++ b/core/modules/contact/src/Entity/ContactForm.php
@@ -141,7 +141,7 @@ public function getRedirectUrl() {
       $url = Url::fromUserInput($this->redirect);
     }
     else {
-      $url = Url::fromRoute('<front>');
+      $url = Url::fromRoute('<home>');
     }
     return $url;
   }
diff --git a/core/modules/contact/src/MessageForm.php b/core/modules/contact/src/MessageForm.php
index 668dd06..228d283 100644
--- a/core/modules/contact/src/MessageForm.php
+++ b/core/modules/contact/src/MessageForm.php
@@ -214,7 +214,7 @@ public function save(array $form, FormStateInterface $form_state) {
     }
 
     // To avoid false error messages caused by flood control, redirect away from
-    // the contact form; either to the contacted user account or the front page.
+    // the contact form; either to the contacted user account or the home page.
     if ($message->isPersonal() && $user->hasPermission('access user profiles')) {
       $form_state->setRedirectUrl($message->getPersonalRecipient()->urlInfo());
     }
diff --git a/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php b/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php
index e5d2c85..5b10028 100644
--- a/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php
+++ b/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php
@@ -9,7 +9,7 @@
 use Drupal\Core\Template\Attribute;
 
 /**
- * Tests if contextual links are showing on the front page depending on
+ * Tests if contextual links are showing on the home page depending on
  * permissions.
  *
  * @group contextual
@@ -75,7 +75,7 @@ function testDifferentPermissions() {
     $node2 = $this->drupalCreateNode(array('type' => 'page', 'promote' => 1));
     $node3 = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
 
-    // Now, on the front page, all article nodes should have contextual links
+    // Now, on the home page, all article nodes should have contextual links
     // placeholders, as should the view that contains them.
     $ids = [
       'node:node=' . $node1->id() . ':changed=' . $node1->getChangedTime() . '&langcode=en',
diff --git a/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php b/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php
index 1968a12..22c4c88 100644
--- a/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php
+++ b/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php
@@ -57,12 +57,12 @@ public function testIntegration() {
     // Setup a watchdog entry without tokens.
     $entries[] = array(
       'message' => $this->randomMachineName(),
-      'variables' => array('link' => \Drupal::l('Link', new Url('<front>'))),
+      'variables' => array('link' => \Drupal::l('Link', new Url('<home>'))),
     );
     // Setup a watchdog entry with one token.
     $entries[] = array(
       'message' => '@token1',
-      'variables' => array('@token1' => $this->randomMachineName(), 'link' => \Drupal::l('Link', new Url('<front>'))),
+      'variables' => array('@token1' => $this->randomMachineName(), 'link' => \Drupal::l('Link', new Url('<home>'))),
     );
     // Setup a watchdog entry with two tokens.
     $entries[] = array(
@@ -73,7 +73,7 @@ public function testIntegration() {
       'variables' => array(
         '@token1' => $this->randomMachineName(),
         '@token2' => $this->randomMachineName(),
-        'link' => '<a href="' . \Drupal::url('<front>') . '"><object>Link</object></a>',
+        'link' => '<a href="' . \Drupal::url('<home>') . '"><object>Link</object></a>',
       ),
     );
     $logger_factory = $this->container->get('logger.factory');
diff --git a/core/modules/forum/config/optional/core.base_field_override.node.forum.promote.yml b/core/modules/forum/config/optional/core.base_field_override.node.forum.promote.yml
index be6e1a3..de4dbb0 100644
--- a/core/modules/forum/config/optional/core.base_field_override.node.forum.promote.yml
+++ b/core/modules/forum/config/optional/core.base_field_override.node.forum.promote.yml
@@ -7,7 +7,7 @@ id: node.forum.promote
 field_name: promote
 entity_type: node
 bundle: forum
-label: 'Promoted to front page'
+label: 'Promoted to home page'
 description: ''
 required: false
 translatable: true
diff --git a/core/modules/forum/src/Breadcrumb/ForumBreadcrumbBuilderBase.php b/core/modules/forum/src/Breadcrumb/ForumBreadcrumbBuilderBase.php
index 63d2d86..dc13802 100644
--- a/core/modules/forum/src/Breadcrumb/ForumBreadcrumbBuilderBase.php
+++ b/core/modules/forum/src/Breadcrumb/ForumBreadcrumbBuilderBase.php
@@ -68,7 +68,7 @@ public function build(RouteMatchInterface $route_match) {
     $breadcrumb = new Breadcrumb();
     $breadcrumb->addCacheContexts(['route']);
 
-    $links[] = Link::createFromRoute($this->t('Home'), '<front>');
+    $links[] = Link::createFromRoute($this->t('Home'), '<home>');
 
     $vocabulary = $this->entityManager
       ->getStorage('taxonomy_vocabulary')
diff --git a/core/modules/forum/src/Tests/ForumBlockTest.php b/core/modules/forum/src/Tests/ForumBlockTest.php
index 1bcc9bc..5719909 100644
--- a/core/modules/forum/src/Tests/ForumBlockTest.php
+++ b/core/modules/forum/src/Tests/ForumBlockTest.php
@@ -113,7 +113,7 @@ public function testActiveForumTopicsBlock() {
 
     // We expect the first 5 forum topics to appear in the "Active forum topics"
     // block.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     for ($index = 0; $index < 10; $index++) {
       if ($index < 5) {
         $this->assertLink($topics[$index], 0, format_string('Forum topic @topic found in the "Active forum topics" block.', array('@topic' => $topics[$index])));
diff --git a/core/modules/forum/src/Tests/ForumTest.php b/core/modules/forum/src/Tests/ForumTest.php
index df21f69..fd46710 100644
--- a/core/modules/forum/src/Tests/ForumTest.php
+++ b/core/modules/forum/src/Tests/ForumTest.php
@@ -209,7 +209,7 @@ function testForum() {
     $xpath = $this->buildXPathQuery('//tr[@id=:forum]//td[@class="forum__posts"]', $forum_arg);
     $this->assertFieldByXPath($xpath, '6', 'Number of posts found.');
 
-    // Test loading multiple forum nodes on the front page.
+    // Test loading multiple forum nodes on the home page.
     $this->drupalLogin($this->drupalCreateUser(array('administer content types', 'create forum content', 'post comments')));
     $this->drupalPostForm('admin/structure/types/manage/forum', array('options[promote]' => 'promote'), t('Save content type'));
     $this->createForumTopic($this->forum, FALSE);
@@ -603,7 +603,7 @@ private function verifyForums(EntityInterface $node, $admin, $response = 200) {
     $this->assertResponse(200);
     $this->assertTitle($node->label() . ' | Drupal', 'Forum node was displayed');
     $breadcrumb_build = array(
-      Link::createFromRoute(t('Home'), '<front>'),
+      Link::createFromRoute(t('Home'), '<home>'),
       Link::createFromRoute(t('Forums'), 'forum.index'),
       Link::createFromRoute($this->forumContainer['name'], 'forum.page', array('taxonomy_term' => $this->forumContainer['tid'])),
       Link::createFromRoute($this->forum['name'], 'forum.page', array('taxonomy_term' => $this->forum['tid'])),
@@ -661,7 +661,7 @@ private function verifyForumView($forum, $parent = NULL) {
     $this->assertTitle($forum['name'] . ' | Drupal');
 
     $breadcrumb_build = array(
-      Link::createFromRoute(t('Home'), '<front>'),
+      Link::createFromRoute(t('Home'), '<home>'),
       Link::createFromRoute(t('Forums'), 'forum.index'),
     );
     if (isset($parent)) {
diff --git a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php
index 8001e57..57b5750 100644
--- a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php
+++ b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php
@@ -145,7 +145,7 @@ public function testBuild() {
 
     // Expected result set.
     $expected = array(
-      Link::createFromRoute('Home', '<front>'),
+      Link::createFromRoute('Home', '<home>'),
       Link::createFromRoute('Fora_is_the_plural_of_forum', 'forum.index'),
     );
 
diff --git a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php
index 4e5a6c4..ab1c30d 100644
--- a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php
+++ b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php
@@ -209,7 +209,7 @@ public function testBuild() {
 
     // First test.
     $expected1 = array(
-      Link::createFromRoute('Home', '<front>'),
+      Link::createFromRoute('Home', '<home>'),
       Link::createFromRoute('Fora_is_the_plural_of_forum', 'forum.index'),
       Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
     );
@@ -221,7 +221,7 @@ public function testBuild() {
 
     // Second test.
     $expected2 = array(
-      Link::createFromRoute('Home', '<front>'),
+      Link::createFromRoute('Home', '<home>'),
       Link::createFromRoute('Fora_is_the_plural_of_forum', 'forum.index'),
       Link::createFromRoute('Something else', 'forum.page', array('taxonomy_term' => 2)),
       Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
diff --git a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php
index 1998ffa..24698b3 100644
--- a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php
+++ b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php
@@ -216,7 +216,7 @@ public function testBuild() {
 
     // First test.
     $expected1 = array(
-      Link::createFromRoute('Home', '<front>'),
+      Link::createFromRoute('Home', '<home>'),
       Link::createFromRoute('Forums', 'forum.index'),
       Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
     );
@@ -228,7 +228,7 @@ public function testBuild() {
 
     // Second test.
     $expected2 = array(
-      Link::createFromRoute('Home', '<front>'),
+      Link::createFromRoute('Home', '<home>'),
       Link::createFromRoute('Forums', 'forum.index'),
       Link::createFromRoute('Something else', 'forum.page', array('taxonomy_term' => 2)),
       Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
diff --git a/core/modules/help/tests/src/Kernel/HelpEmptyPageTest.php b/core/modules/help/tests/src/Kernel/HelpEmptyPageTest.php
index 070a954..0e26015 100644
--- a/core/modules/help/tests/src/Kernel/HelpEmptyPageTest.php
+++ b/core/modules/help/tests/src/Kernel/HelpEmptyPageTest.php
@@ -45,8 +45,8 @@ public function testEmptyHookHelp() {
     $this->enableModules(array_keys($all_modules));
     $this->installEntitySchema('menu_link_content');
 
-    $route = \Drupal::service('router.route_provider')->getRouteByName('<front>');
-    \Drupal::service('module_handler')->invokeAll('help', ['<front>', new RouteMatch('<front>', $route)]);
+    $route = \Drupal::service('router.route_provider')->getRouteByName('<home>');
+    \Drupal::service('module_handler')->invokeAll('help', ['<home>', new RouteMatch('<home>', $route)]);
   }
 
 }
diff --git a/core/modules/language/src/Plugin/Block/LanguageBlock.php b/core/modules/language/src/Plugin/Block/LanguageBlock.php
index 5c58ac0..76a3d0b 100644
--- a/core/modules/language/src/Plugin/Block/LanguageBlock.php
+++ b/core/modules/language/src/Plugin/Block/LanguageBlock.php
@@ -85,7 +85,7 @@ protected function blockAccess(AccountInterface $account) {
    */
   public function build() {
     $build = array();
-    $route_name = $this->pathMatcher->isFrontPage() ? '<front>' : '<current>';
+    $route_name = $this->pathMatcher->isFrontPage() ? '<home>' : '<current>';
     $type = $this->getDerivativeId();
     $links = $this->languageManager->getLanguageSwitchLinks($type, Url::fromRoute($route_name));
 
diff --git a/core/modules/language/src/Tests/LanguageSwitchingTest.php b/core/modules/language/src/Tests/LanguageSwitchingTest.php
index c076e6f..bddb01e 100644
--- a/core/modules/language/src/Tests/LanguageSwitchingTest.php
+++ b/core/modules/language/src/Tests/LanguageSwitchingTest.php
@@ -268,7 +268,7 @@ function testLanguageBodyClass() {
     $this->drupalLogout();
 
     // Check if the default (English) frontpage has the right class.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $class = $this->xpath('//body[contains(@class, :class)]', array(':class' => 'path-frontpage'));
     $this->assertTrue(isset($class[0]), 'path-frontpage class found on the body tag');
 
diff --git a/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php b/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php
index 03dd8cb..dc26338 100644
--- a/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php
+++ b/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php
@@ -396,7 +396,7 @@ function testUrlLanguageFallback() {
     // Place a site branding block in the header region.
     $this->drupalPlaceBlock('system_branding_block', ['region' => 'header']);
 
-    // Access the front page without specifying any valid URL language prefix
+    // Access the home page without specifying any valid URL language prefix
     // and having as browser language preference a non-default language.
     $http_header = array("Accept-Language: $langcode_browser_fallback;q=1");
     $language = new Language(array('id' => ''));
@@ -404,7 +404,7 @@ function testUrlLanguageFallback() {
 
     // Check that the language switcher active link matches the given browser
     // language.
-    $args = array(':id' => 'block-test-language-block', ':url' => \Drupal::url('<front>') . $langcode_browser_fallback);
+    $args = array(':id' => 'block-test-language-block', ':url' => \Drupal::url('<home>') . $langcode_browser_fallback);
     $fields = $this->xpath('//div[@id=:id]//a[@class="language-link is-active" and starts-with(@href, :url)]', $args);
     $this->assertTrue($fields[0] == $languages[$langcode_browser_fallback]->getName(), 'The browser language is the URL active language');
 
diff --git a/core/modules/language/src/Tests/LanguageUrlRewritingTest.php b/core/modules/language/src/Tests/LanguageUrlRewritingTest.php
index 5cd80dc..9ff19cc 100644
--- a/core/modules/language/src/Tests/LanguageUrlRewritingTest.php
+++ b/core/modules/language/src/Tests/LanguageUrlRewritingTest.php
@@ -67,7 +67,7 @@ function testUrlRewritingEdgeCases() {
   /**
    * Check URL rewriting for the given language.
    *
-   * The test is performed with a fixed URL (the default front page) to simply
+   * The test is performed with a fixed URL (the default home page) to simply
    * check that language prefixes are not added to it and that the prefixed URL
    * is actually not working.
    *
@@ -81,7 +81,7 @@ function testUrlRewritingEdgeCases() {
   private function checkUrl(LanguageInterface $language, $message1, $message2) {
     $options = array('language' => $language, 'script' => '');
     $base_path = trim(base_path(), '/');
-    $rewritten_path = trim(str_replace($base_path, '', \Drupal::url('<front>', array(), $options)), '/');
+    $rewritten_path = trim(str_replace($base_path, '', \Drupal::url('<home>', array(), $options)), '/');
     $segments = explode('/', $rewritten_path, 2);
     $prefix = $segments[0];
     $path = isset($segments[1]) ? $segments[1] : $prefix;
@@ -126,7 +126,7 @@ function testDomainNameNegotiationPort() {
 
     // In case index.php is part of the URLs, we need to adapt the asserted
     // URLs as well.
-    $index_php = strpos(\Drupal::url('<front>', array(), array('absolute' => TRUE)), 'index.php') !== FALSE;
+    $index_php = strpos(\Drupal::url('<home>', array(), array('absolute' => TRUE)), 'index.php') !== FALSE;
 
     $request = Request::createFromGlobals();
     $server = $request->server->all();
@@ -134,7 +134,7 @@ function testDomainNameNegotiationPort() {
 
     // Create an absolute French link.
     $language = \Drupal::languageManager()->getLanguage('fr');
-    $url = Url::fromRoute('<front>', [], [
+    $url = Url::fromRoute('<home>', [], [
       'absolute' => TRUE,
       'language' => $language,
     ])->toString();
@@ -144,7 +144,7 @@ function testDomainNameNegotiationPort() {
     $this->assertEqual($url, $expected, 'The right port is used.');
 
     // If we set the port explicitly, it should not be overridden.
-    $url = Url::fromRoute('<front>', [], [
+    $url = Url::fromRoute('<home>', [], [
       'absolute' => TRUE,
       'language' => $language,
       'base_url' => $request->getBaseUrl() . ':90',
diff --git a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
index fd670fd..cf5300c 100644
--- a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
+++ b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
@@ -60,11 +60,11 @@ protected static function getUriAsDisplayableString($uri) {
     if ($scheme === 'internal') {
       $uri_reference = explode(':', $uri, 2)[1];
 
-      // @todo '<front>' is valid input for BC reasons, may be removed by
+      // @todo '<home>' is valid input for BC reasons, may be removed by
       //   https://www.drupal.org/node/2421941
       $path = parse_url($uri, PHP_URL_PATH);
       if ($path === '/') {
-        $uri_reference = '<front>' . substr($uri_reference, 1);
+        $uri_reference = '<home>' . substr($uri_reference, 1);
       }
 
       $displayable_string = $uri_reference;
@@ -111,12 +111,12 @@ protected static function getUserEnteredStringAsUri($string) {
     }
     // Detect a schemeless string, map to 'internal:' URI.
     elseif (!empty($string) && parse_url($string, PHP_URL_SCHEME) === NULL) {
-      // @todo '<front>' is valid input for BC reasons, may be removed by
+      // @todo '<home>' is valid input for BC reasons, may be removed by
       //   https://www.drupal.org/node/2421941
-      // - '<front>' -> '/'
-      // - '<front>#foo' -> '/#foo'
-      if (strpos($string, '<front>') === 0) {
-        $string = '/' . substr($string, strlen('<front>'));
+      // - '<home>' -> '/'
+      // - '<home>#foo' -> '/#foo'
+      if (strpos($string, '<home>') === 0) {
+        $string = '/' . substr($string, strlen('<home>'));
       }
       $uri = 'internal:' . $string;
     }
@@ -135,9 +135,9 @@ public static function validateUriElement($element, FormStateInterface $form_sta
 
     // If getUserEnteredStringAsUri() mapped the entered value to a 'internal:'
     // URI , ensure the raw value begins with '/', '?' or '#'.
-    // @todo '<front>' is valid input for BC reasons, may be removed by
+    // @todo '<home>' is valid input for BC reasons, may be removed by
     //   https://www.drupal.org/node/2421941
-    if (parse_url($uri, PHP_URL_SCHEME) === 'internal' && !in_array($element['#value'][0], ['/', '?', '#'], TRUE) && substr($element['#value'], 0, 7) !== '<front>') {
+    if (parse_url($uri, PHP_URL_SCHEME) === 'internal' && !in_array($element['#value'][0], ['/', '?', '#'], TRUE) && substr($element['#value'], 0, 7) !== '<home>') {
       $form_state->setError($element, t('Manually entered paths should start with /, ? or #.'));
       return;
     }
@@ -195,12 +195,12 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
     // If the field is configured to allow only internal links, add a useful
     // element prefix.
     if (!$this->supportsExternalLinks()) {
-      $element['uri']['#field_prefix'] = rtrim(\Drupal::url('<front>', array(), array('absolute' => TRUE)), '/');
+      $element['uri']['#field_prefix'] = rtrim(\Drupal::url('<home>', array(), array('absolute' => TRUE)), '/');
     }
     // If the field is configured to allow both internal and external links,
     // show a useful description.
     elseif ($this->supportsExternalLinks() && $this->supportsInternalLinks()) {
-      $element['uri']['#description'] = $this->t('Start typing the title of a piece of content to select it. You can also enter an internal path such as %add-node or an external URL such as %url. Enter %front to link to the front page.', array('%front' => '<front>', '%add-node' => '/node/add', '%url' => 'http://example.com'));
+      $element['uri']['#description'] = $this->t('Start typing the title of a piece of content to select it. You can also enter an internal path such as %add-node or an external URL such as %url. Enter %home to link to the home page.', array('%home' => '<home>', '%add-node' => '/node/add', '%url' => 'http://example.com'));
     }
     // If the field is configured to allow only external links, show a useful
     // description.
diff --git a/core/modules/link/src/Plugin/migrate/process/d6/CckLink.php b/core/modules/link/src/Plugin/migrate/process/d6/CckLink.php
index 2c03412..532085f 100644
--- a/core/modules/link/src/Plugin/migrate/process/d6/CckLink.php
+++ b/core/modules/link/src/Plugin/migrate/process/d6/CckLink.php
@@ -53,9 +53,9 @@ protected function canonicalizeUri($uri) {
       return $uri;
     }
 
-    // Remove the <front> component of the URL.
-    if (strpos($uri, '<front>') === 0) {
-      $uri = substr($uri, strlen('<front>'));
+    // Remove the <home> component of the URL.
+    if (strpos($uri, '<home>') === 0) {
+      $uri = substr($uri, strlen('<home>'));
     }
 
     // Add the internal: scheme and ensure a leading slash.
diff --git a/core/modules/link/src/Tests/LinkFieldTest.php b/core/modules/link/src/Tests/LinkFieldTest.php
index e85ad53..9d77f44 100644
--- a/core/modules/link/src/Tests/LinkFieldTest.php
+++ b/core/modules/link/src/Tests/LinkFieldTest.php
@@ -114,16 +114,16 @@ function testURLValidation() {
       '/entity_test/add' => '/entity_test/add',
       '/a/path/alias' => '/a/path/alias',
 
-      // Front page, with query string and fragment.
+      // Home page, with query string and fragment.
       '/' => '&lt;front&gt;',
       '/?example=llama' => '&lt;front&gt;?example=llama',
       '/#example' => '&lt;front&gt;#example',
 
-      // @todo '<front>' is valid input for BC reasons, may be removed by
+      // @todo '<home>' is valid input for BC reasons, may be removed by
       //   https://www.drupal.org/node/2421941
-      '<front>' => '&lt;front&gt;',
-      '<front>#example' => '&lt;front&gt;#example',
-      '<front>?example=llama' => '&lt;front&gt;?example=llama',
+      '<home>' => '&lt;front&gt;',
+      '<home>#example' => '&lt;front&gt;#example',
+      '<home>?example=llama' => '&lt;front&gt;?example=llama',
 
       // Query string and fragment.
       '?example=llama' => '?example=llama',
diff --git a/core/modules/link/tests/src/Unit/Plugin/migrate/process/d6/CckLinkTest.php b/core/modules/link/tests/src/Unit/Plugin/migrate/process/d6/CckLinkTest.php
index a96287a..e30caae 100644
--- a/core/modules/link/tests/src/Unit/Plugin/migrate/process/d6/CckLinkTest.php
+++ b/core/modules/link/tests/src/Unit/Plugin/migrate/process/d6/CckLinkTest.php
@@ -31,11 +31,11 @@ public function testCanonicalizeUri($url, $expected) {
   public function canonicalizeUriDataProvider() {
     return [
       'Simple front-page' => [
-        '<front>',
+        '<home>',
         'internal:/',
       ],
-      'Front page with query' => [
-        '<front>?query=1',
+      'Home page with query' => [
+        '<home>?query=1',
         'internal:/?query=1',
       ],
       'No leading forward slash' => [
diff --git a/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php b/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
index 67faa81..7f3a624 100644
--- a/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
+++ b/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
@@ -94,7 +94,7 @@ public function testConfigTranslationModuleInstall() {
     $this->drupalPostForm('admin/config/system/site-information', ['site_slogan' => 'Test site slogan'], 'Save configuration');
     $this->drupalPostForm('admin/config/system/site-information/translate/af/edit', ['translation[config_names][system.site][slogan]' => 'Test site slogan in Afrikaans'], 'Save translation');
 
-    // Get the front page and ensure that the translated configuration appears.
+    // Get the home page and ensure that the translated configuration appears.
     $this->drupalGet('af');
     $this->assertText('Test site slogan in Afrikaans');
 
@@ -112,7 +112,7 @@ public function testConfigTranslationModuleInstall() {
     $this->drupalPostForm('admin/modules', ['modules[Core][dblog][enable]' => 'dblog'], t('Install'));
     $this->assertText('Module Database Logging has been enabled.');
 
-    // Get the front page and ensure that the translated configuration still
+    // Get the home page and ensure that the translated configuration still
     // appears.
     $this->drupalGet('af');
     $this->assertText('Test site slogan in Afrikaans');
diff --git a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php
index 3ee988a..e5311c1 100644
--- a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php
+++ b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php
@@ -231,7 +231,7 @@ protected function assertNodeConfig($required, $optional) {
     }
 
     // Check the optional default configuration in node module.
-    $string = $this->storage->findString(['source' => 'No front page content has been created yet.', 'context' => '', 'type' => 'configuration']);
+    $string = $this->storage->findString(['source' => 'No home page content has been created yet.', 'context' => '', 'type' => 'configuration']);
     if ($optional) {
       $this->assertFalse($this->config('views.view.frontpage')->isNew());
       $this->assertTrue($string, 'Node view text can be found with node and views modules.');
diff --git a/core/modules/locale/src/Tests/LocalePathTest.php b/core/modules/locale/src/Tests/LocalePathTest.php
index cc4f31a..c7e16e5 100644
--- a/core/modules/locale/src/Tests/LocalePathTest.php
+++ b/core/modules/locale/src/Tests/LocalePathTest.php
@@ -57,10 +57,10 @@ public function testPathLanguageConfiguration() {
     $edit = array("prefix[$langcode]" => $prefix);
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
 
-    // Check that the "xx" front page is readily available because path prefix
+    // Check that the "xx" home page is readily available because path prefix
     // negotiation is pre-configured.
     $this->drupalGet($prefix);
-    $this->assertText(t('Welcome to Drupal'), 'The "xx" front page is readibly available.');
+    $this->assertText(t('Welcome to Drupal'), 'The "xx" home page is readibly available.');
 
     // Create a node.
     $node = $this->drupalCreateNode(array('type' => 'page'));
diff --git a/core/modules/locale/tests/modules/locale_test/locale_test.module b/core/modules/locale/tests/modules/locale_test/locale_test.module
index b59dfee..ffffcb2 100644
--- a/core/modules/locale/tests/modules/locale_test/locale_test.module
+++ b/core/modules/locale/tests/modules/locale_test/locale_test.module
@@ -53,7 +53,7 @@ function locale_test_locale_translation_projects_alter(&$projects) {
 
     // Instead of the default ftp.drupal.org we use the file system of the test
     // instance to simulate a remote file location.
-    $url = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $url = \Drupal::url('<home>', [], ['absolute' => TRUE]);
     $remote_url = $url . PublicStream::basePath() . '/remote/';
 
     // Completely replace the project data with a set of test projects.
diff --git a/core/modules/menu_link_content/src/Tests/MenuLinkContentDeleteFormTest.php b/core/modules/menu_link_content/src/Tests/MenuLinkContentDeleteFormTest.php
index e6ec76e..fc34251 100644
--- a/core/modules/menu_link_content/src/Tests/MenuLinkContentDeleteFormTest.php
+++ b/core/modules/menu_link_content/src/Tests/MenuLinkContentDeleteFormTest.php
@@ -37,8 +37,8 @@ public function testMenuLinkContentDeleteForm() {
     $this->drupalPostForm(
       'admin/structure/menu/manage/admin/add',
       [
-        'title[0][value]' => t('Front page'),
-        'link[0][uri]' => '<front>',
+        'title[0][value]' => t('Home page'),
+        'link[0][uri]' => '<home>',
       ],
       t('Save')
     );
diff --git a/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php b/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php
index 1bdc927..fead5ad 100644
--- a/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php
+++ b/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php
@@ -41,8 +41,8 @@ public function testMenuLinkContentForm() {
     $this->drupalPostForm(
       NULL,
       array(
-        'title[0][value]' => t('Front page'),
-        'link[0][uri]' => '<front>',
+        'title[0][value]' => t('Home page'),
+        'link[0][uri]' => '<home>',
       ),
       t('Save')
     );
diff --git a/core/modules/menu_link_content/tests/src/Kernel/MenuLinkContentCacheabilityBubblingTest.php b/core/modules/menu_link_content/tests/src/Kernel/MenuLinkContentCacheabilityBubblingTest.php
index c7689d9..c068cf7 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/MenuLinkContentCacheabilityBubblingTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/MenuLinkContentCacheabilityBubblingTest.php
@@ -51,7 +51,7 @@ public function testOutboundPathAndRouteProcessing() {
     $request_context = \Drupal::service('router.request_context');
 
     $request = Request::create('/');
-    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<front>');
+    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<home>');
     $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('/'));
     $request_stack->push($request);
     $request_context->fromRequest($request);
diff --git a/core/modules/menu_ui/src/Tests/MenuLanguageTest.php b/core/modules/menu_ui/src/Tests/MenuLanguageTest.php
index 72865ea..a10c09e 100644
--- a/core/modules/menu_ui/src/Tests/MenuLanguageTest.php
+++ b/core/modules/menu_ui/src/Tests/MenuLanguageTest.php
@@ -75,7 +75,7 @@ function testMenuLanguage() {
     $menu_link = reset($menu_links);
     $this->assertMenuLink($menu_link->getPluginId(), array(
       'menu_name' => $menu_name,
-      'route_name' => '<front>',
+      'route_name' => '<home>',
       'langcode' => 'bb',
     ));
 
@@ -97,7 +97,7 @@ function testMenuLanguage() {
     $menu_link = reset($menu_links);
     $this->assertMenuLink($menu_link->getPluginId(), array(
       'menu_name' => $menu_name,
-      'route_name' => '<front>',
+      'route_name' => '<home>',
       'langcode' => 'cc',
     ));
 
@@ -108,7 +108,7 @@ function testMenuLanguage() {
     $this->drupalPostForm('admin/structure/menu/item/' . $menu_link->id() . '/edit', $edit, t('Save'));
     $this->assertMenuLink($menu_link->getPluginId(), array(
       'menu_name' => $menu_name,
-      'route_name' => '<front>',
+      'route_name' => '<home>',
       'langcode' => 'bb',
     ));
 
diff --git a/core/modules/menu_ui/src/Tests/MenuTest.php b/core/modules/menu_ui/src/Tests/MenuTest.php
index e9464ab..32dd3b49 100644
--- a/core/modules/menu_ui/src/Tests/MenuTest.php
+++ b/core/modules/menu_ui/src/Tests/MenuTest.php
@@ -451,9 +451,9 @@ function doMenuTests() {
     $item7 = $this->addMenuLink('', 'https://www.drupal.org', $menu_name);
     $this->assertMenuLink($item7->getPluginId(), array('url' => 'https://www.drupal.org'));
 
-    // Add <front> menu item.
+    // Add <home> menu item.
     $item8 = $this->addMenuLink('', '/', $menu_name);
-    $this->assertMenuLink($item8->getPluginId(), array('route_name' => '<front>'));
+    $this->assertMenuLink($item8->getPluginId(), array('route_name' => '<home>'));
     $this->drupalGet('');
     $this->assertResponse(200);
     // Make sure we get routed correctly.
@@ -504,8 +504,8 @@ function testMenuQueryAndFragment() {
     $this->drupalGet('admin/structure/menu/item/' . $item->id() . '/edit');
     $this->assertFieldByName('link[0][uri]', $path, 'Path no longer has query or fragment.');
 
-    // Use <front>#fragment and ensure that saving it does not lose its content.
-    $path = '<front>?arg1=value#fragment';
+    // Use <home>#fragment and ensure that saving it does not lose its content.
+    $path = '<home>?arg1=value#fragment';
     $item = $this->addMenuLink('', $path);
 
     $this->drupalGet('admin/structure/menu/item/' . $item->id() . '/edit');
@@ -588,7 +588,7 @@ public function testBlockContextualLinks() {
    * @param string $parent
    *   Optional parent menu link id.
    * @param string $path
-   *   The path to enter on the form. Defaults to the front page.
+   *   The path to enter on the form. Defaults to the home page.
    * @param string $menu_name
    *   Menu name. Defaults to 'tools'.
    * @param bool $expanded
@@ -884,7 +884,7 @@ public function testMenuParentsJsAccess() {
    */
   private function getStandardMenuLink() {
     // Retrieve menu link id of the Log out menu link, which will always be on
-    // the front page.
+    // the home page.
     /** @var \Drupal\Core\Menu\MenuLinkManagerInterface $menu_link_manager */
     $menu_link_manager = \Drupal::service('plugin.manager.menu.link');
     $instance = $menu_link_manager->getInstance(['id' => 'user.logout']);
diff --git a/core/modules/migrate_drupal/tests/fixtures/drupal6.php b/core/modules/migrate_drupal/tests/fixtures/drupal6.php
index 347b2f2..c74e810 100644
--- a/core/modules/migrate_drupal/tests/fixtures/drupal6.php
+++ b/core/modules/migrate_drupal/tests/fixtures/drupal6.php
@@ -178,7 +178,7 @@
   'type' => 'node',
   'callback' => 'node_promote_action',
   'parameters' => '',
-  'description' => 'Promote post to front page',
+  'description' => 'Promote post to home page',
 ))
 ->values(array(
   'aid' => 'node_publish_action',
@@ -199,7 +199,7 @@
   'type' => 'node',
   'callback' => 'node_unpromote_action',
   'parameters' => '',
-  'description' => 'Remove post from front page',
+  'description' => 'Remove post from home page',
 ))
 ->values(array(
   'aid' => 'node_unpublish_action',
@@ -646,7 +646,7 @@
   'custom' => '0',
   'throttle' => '0',
   'visibility' => '0',
-  'pages' => "<front>\r\nnode/1\nblog/*",
+  'pages' => "<home>\r\nnode/1\nblog/*",
   'title' => '',
   'cache' => '-1',
 ))
@@ -781,7 +781,7 @@
   'custom' => '0',
   'throttle' => '0',
   'visibility' => '1',
-  'pages' => '<front>',
+  'pages' => '<home>',
   'title' => 'Static Block',
   'cache' => '-1',
 ))
@@ -14344,7 +14344,7 @@
   'lid' => '637',
   'location' => '/?q=fr/admin/settings/site-information',
   'textgroup' => 'default',
-  'source' => 'Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.',
+  'source' => 'Change basic site information, such as the site name, slogan, e-mail address, mission, home page and more.',
   'version' => '6.38-dev',
 ))
 ->values(array(
@@ -14393,7 +14393,7 @@
   'lid' => '644',
   'location' => '/?q=fr/admin/settings/site-information',
   'textgroup' => 'default',
-  'source' => "Your site's mission or focus statement (often prominently displayed on the front page).",
+  'source' => "Your site's mission or focus statement (often prominently displayed on the home page).",
   'version' => '6.38-dev',
 ))
 ->values(array(
@@ -14435,7 +14435,7 @@
   'lid' => '650',
   'location' => '/?q=fr/admin/settings/site-information',
   'textgroup' => 'default',
-  'source' => 'Default front page',
+  'source' => 'Default home page',
   'version' => '6.38-dev',
 ))
 ->values(array(
@@ -16521,14 +16521,14 @@
   'lid' => '948',
   'location' => '/?q=fr/admin/settings/actions',
   'textgroup' => 'default',
-  'source' => 'Promote post to front page',
+  'source' => 'Promote post to home page',
   'version' => '6.38-dev',
 ))
 ->values(array(
   'lid' => '949',
   'location' => '/?q=fr/admin/settings/actions',
   'textgroup' => 'default',
-  'source' => 'Remove post from front page',
+  'source' => 'Remove post from home page',
   'version' => '6.38-dev',
 ))
 ->values(array(
@@ -18558,7 +18558,7 @@
   'lid' => '1239',
   'location' => '/?q=fr/admin',
   'textgroup' => 'default',
-  'source' => 'Manage posts by content type, including default status, front page promotion, etc.',
+  'source' => 'Manage posts by content type, including default status, home page promotion, etc.',
   'version' => '6.38-dev',
 ))
 ->values(array(
@@ -18572,7 +18572,7 @@
   'lid' => '1241',
   'location' => '/?q=fr/admin',
   'textgroup' => 'default',
-  'source' => 'Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the front page.',
+  'source' => 'Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the home page.',
   'version' => '6.38-dev',
 ))
 ->values(array(
@@ -28114,7 +28114,7 @@
   'link_path' => 'admin/content/types',
   'router_path' => 'admin/content/types',
   'link_title' => 'Content types',
-  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:82:"Manage posts by content type, including default status, front page promotion, etc.";}}',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:82:"Manage posts by content type, including default status, home page promotion, etc.";}}',
   'module' => 'system',
   'hidden' => '0',
   'external' => '0',
@@ -28627,7 +28627,7 @@
   'link_path' => 'admin/content/node-settings',
   'router_path' => 'admin/content/node-settings',
   'link_title' => 'Post settings',
-  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:126:"Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the front page.";}}',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:126:"Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the home page.";}}',
   'module' => 'system',
   'hidden' => '0',
   'external' => '0',
@@ -28762,7 +28762,7 @@
   'link_path' => 'admin/settings/site-information',
   'router_path' => 'admin/settings/site-information',
   'link_title' => 'Site information',
-  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:107:"Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.";}}',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:107:"Change basic site information, such as the site name, slogan, e-mail address, mission, home page and more.";}}',
   'module' => 'system',
   'hidden' => '0',
   'external' => '0',
@@ -34509,7 +34509,7 @@
   'title_arguments' => '',
   'type' => '6',
   'block_callback' => '',
-  'description' => 'Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the front page.',
+  'description' => 'Control posting behavior, such as teaser length, requiring previews before posting, and the number of posts on the home page.',
   'position' => '',
   'weight' => '0',
   'file' => 'modules/node/node.admin.inc',
@@ -37391,7 +37391,7 @@
   'title_arguments' => '',
   'type' => '6',
   'block_callback' => '',
-  'description' => 'Manage posts by content type, including default status, front page promotion, etc.',
+  'description' => 'Manage posts by content type, including default status, home page promotion, etc.',
   'position' => '',
   'weight' => '0',
   'file' => 'sites/all/modules/cck/includes/content.admin.inc',
@@ -38645,7 +38645,7 @@
   'title_arguments' => '',
   'type' => '6',
   'block_callback' => '',
-  'description' => 'Change basic site information, such as the site name, slogan, e-mail address, mission, front page and more.',
+  'description' => 'Change basic site information, such as the site name, slogan, e-mail address, mission, home page and more.',
   'position' => '',
   'weight' => '0',
   'file' => 'modules/system/system.admin.inc',
diff --git a/core/modules/migrate_drupal/tests/fixtures/drupal7.php b/core/modules/migrate_drupal/tests/fixtures/drupal7.php
index aacbc2b..3199fd0 100644
--- a/core/modules/migrate_drupal/tests/fixtures/drupal7.php
+++ b/core/modules/migrate_drupal/tests/fixtures/drupal7.php
@@ -500,7 +500,7 @@
   'type' => 'node',
   'callback' => 'node_promote_action',
   'parameters' => '',
-  'label' => 'Promote content to front page',
+  'label' => 'Promote content to home page',
 ))
 ->values(array(
   'aid' => 'node_publish_action',
@@ -521,7 +521,7 @@
   'type' => 'node',
   'callback' => 'node_unpromote_action',
   'parameters' => '',
-  'label' => 'Remove content from front page',
+  'label' => 'Remove content from home page',
 ))
 ->values(array(
   'aid' => 'node_unpublish_action',
@@ -4957,7 +4957,7 @@
   'revision_id' => '2',
   'language' => 'und',
   'delta' => '0',
-  'field_link_url' => '<front>',
+  'field_link_url' => '<home>',
   'field_link_title' => 'Home',
   'field_link_attributes' => 'a:0:{}',
 ))
@@ -4969,7 +4969,7 @@
   'revision_id' => '3',
   'language' => 'und',
   'delta' => '0',
-  'field_link_url' => '<front>',
+  'field_link_url' => '<home>',
   'field_link_title' => 'Home',
   'field_link_attributes' => 'a:1:{s:5:"title";s:0:"";}',
 ))
@@ -6801,7 +6801,7 @@
   'revision_id' => '2',
   'language' => 'und',
   'delta' => '0',
-  'field_link_url' => '<front>',
+  'field_link_url' => '<home>',
   'field_link_title' => 'Home',
   'field_link_attributes' => 'a:0:{}',
 ))
@@ -6813,7 +6813,7 @@
   'revision_id' => '3',
   'language' => 'und',
   'delta' => '0',
-  'field_link_url' => '<front>',
+  'field_link_url' => '<home>',
   'field_link_title' => 'Home',
   'field_link_attributes' => 'a:1:{s:5:"title";s:0:"";}',
 ))
@@ -9909,7 +9909,7 @@
   'link_path' => 'admin/structure/types',
   'router_path' => 'admin/structure/types',
   'link_title' => 'Content types',
-  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:92:"Manage content types, including default status, front page promotion, comment settings, etc.";}}',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:92:"Manage content types, including default status, home page promotion, comment settings, etc.";}}',
   'module' => 'system',
   'hidden' => '0',
   'external' => '0',
@@ -11394,7 +11394,7 @@
   'link_path' => 'admin/config/system/site-information',
   'router_path' => 'admin/config/system/site-information',
   'link_title' => 'Site information',
-  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:104:"Change site name, e-mail address, slogan, default front page, and number of posts per page, error pages.";}}',
+  'options' => 'a:1:{s:10:"attributes";a:1:{s:5:"title";s:104:"Change site name, e-mail address, slogan, default home page, and number of posts per page, error pages.";}}',
   'module' => 'system',
   'hidden' => '0',
   'external' => '0',
@@ -14793,7 +14793,7 @@
   'menu_name' => 'main-menu',
   'mlid' => '245',
   'plid' => '0',
-  'link_path' => '<front>',
+  'link_path' => '<home>',
   'router_path' => '',
   'link_title' => 'Home',
   'options' => 'a:0:{}',
@@ -22414,7 +22414,7 @@
   'theme_callback' => '',
   'theme_arguments' => 'a:0:{}',
   'type' => '6',
-  'description' => 'Change site name, e-mail address, slogan, default front page, and number of posts per page, error pages.',
+  'description' => 'Change site name, e-mail address, slogan, default home page, and number of posts per page, error pages.',
   'position' => '',
   'weight' => '-20',
   'include_file' => 'modules/system/system.admin.inc',
@@ -26589,7 +26589,7 @@
   'theme_callback' => '',
   'theme_arguments' => 'a:0:{}',
   'type' => '6',
-  'description' => 'Manage content types, including default status, front page promotion, comment settings, etc.',
+  'description' => 'Manage content types, including default status, home page promotion, comment settings, etc.',
   'position' => '',
   'weight' => '0',
   'include_file' => 'modules/node/content_types.inc',
diff --git a/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php b/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php
index 77df361..fd18d51 100644
--- a/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php
+++ b/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php
@@ -1111,7 +1111,7 @@ public function submitConfirmForm(array &$form, FormStateInterface $form_state)
       ],
     ];
     batch_set($batch);
-    $form_state->setRedirect('<front>');
+    $form_state->setRedirect('<home>');
     $this->state->set('migrate_drupal_ui.performed', REQUEST_TIME);
   }
 
diff --git a/core/modules/node/config/install/system.action.node_promote_action.yml b/core/modules/node/config/install/system.action.node_promote_action.yml
index 7c45a42..a22c09c 100644
--- a/core/modules/node/config/install/system.action.node_promote_action.yml
+++ b/core/modules/node/config/install/system.action.node_promote_action.yml
@@ -4,7 +4,7 @@ dependencies:
   module:
     - node
 id: node_promote_action
-label: 'Promote content to front page'
+label: 'Promote content to home page'
 type: node
 plugin: node_promote_action
 configuration: {  }
diff --git a/core/modules/node/config/install/system.action.node_unpromote_action.yml b/core/modules/node/config/install/system.action.node_unpromote_action.yml
index cb290dd..9a16b55 100644
--- a/core/modules/node/config/install/system.action.node_unpromote_action.yml
+++ b/core/modules/node/config/install/system.action.node_unpromote_action.yml
@@ -4,7 +4,7 @@ dependencies:
   module:
     - node
 id: node_unpromote_action
-label: 'Remove content from front page'
+label: 'Remove content from home page'
 type: node
 plugin: node_unpromote_action
 configuration: {  }
diff --git a/core/modules/node/config/optional/views.view.frontpage.yml b/core/modules/node/config/optional/views.view.frontpage.yml
index d05e291..63691cb 100644
--- a/core/modules/node/config/optional/views.view.frontpage.yml
+++ b/core/modules/node/config/optional/views.view.frontpage.yml
@@ -10,7 +10,7 @@ dependencies:
 id: frontpage
 label: Frontpage
 module: node
-description: 'All content promoted to the front page.'
+description: 'All content promoted to the home page.'
 tag: default
 base_table: node_field_data
 base_field: nid
@@ -28,7 +28,7 @@ display:
       empty:
         area_text_custom:
           admin_label: ''
-          content: 'No front page content has been created yet.'
+          content: 'No home page content has been created yet.'
           empty: true
           field: area_text_custom
           group_type: group
diff --git a/core/modules/node/config/schema/node.schema.yml b/core/modules/node/config/schema/node.schema.yml
index 11a93c5..6b7a96d 100644
--- a/core/modules/node/config/schema/node.schema.yml
+++ b/core/modules/node/config/schema/node.schema.yml
@@ -56,11 +56,11 @@ action.configuration.node_assign_owner_action:
 
 action.configuration.node_unpromote_action:
   type: action_configuration_default
-  label: 'Demote selected content from front page configuration'
+  label: 'Demote selected content from home page configuration'
 
 action.configuration.node_promote_action:
   type: action_configuration_default
-  label: 'Promote selected content from front page configuration'
+  label: 'Promote selected content from home page configuration'
 
 action.configuration.node_publish_action:
   type: action_configuration_default
diff --git a/core/modules/node/migration_templates/d6_node_setting_promote.yml b/core/modules/node/migration_templates/d6_node_setting_promote.yml
index 469083d..e6e5473 100644
--- a/core/modules/node/migration_templates/d6_node_setting_promote.yml
+++ b/core/modules/node/migration_templates/d6_node_setting_promote.yml
@@ -13,7 +13,7 @@ process:
   field_name: 'constants/field_name'
   label:
     plugin: default_value
-    default_value: 'Promoted to front page'
+    default_value: 'Promoted to home page'
   'default_value/0/value': 'options/promote'
 destination:
   plugin: entity:base_field_override
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 5c86a13..39fe763 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -40,12 +40,12 @@
 const NODE_PUBLISHED = 1;
 
 /**
- * Denotes that the node is not promoted to the front page.
+ * Denotes that the node is not promoted to the home page.
  */
 const NODE_NOT_PROMOTED = 0;
 
 /**
- * Denotes that the node is promoted to the front page.
+ * Denotes that the node is promoted to the home page.
  */
 const NODE_PROMOTED = 1;
 
@@ -85,7 +85,7 @@ function node_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Creating content') . '</dt>';
-      $output .= '<dd>' . t('When new content is created, the Node module records basic information about the content, including the author, date of creation, and the <a href=":content-type">Content type</a>. It also manages the <em>publishing options</em>, which define whether or not the content is published, promoted to the front page of the site, and/or sticky at the top of content lists. Default settings can be configured for each <a href=":content-type">type of content</a> on your site.', array(':content-type' => \Drupal::url('entity.node_type.collection'))) . '</dd>';
+      $output .= '<dd>' . t('When new content is created, the Node module records basic information about the content, including the author, date of creation, and the <a href=":content-type">Content type</a>. It also manages the <em>publishing options</em>, which define whether or not the content is published, promoted to the home page of the site, and/or sticky at the top of content lists. Default settings can be configured for each <a href=":content-type">type of content</a> on your site.', array(':content-type' => \Drupal::url('entity.node_type.collection'))) . '</dd>';
       $output .= '<dt>' . t('Creating custom content types') . '</dt>';
       $output .= '<dd>' . t('The Node module gives users with the <em>Administer content types</em> permission the ability to <a href=":content-new">create new content types</a> in addition to the default ones already configured. Creating custom content types gives you the flexibility to add <a href=":field">fields</a> and configure default settings that suit the differing needs of various site content.', array(':content-new' => \Drupal::url('node.type_add'), ':field' => \Drupal::url('help.page', array('name' => 'field')))) . '</dd>';
       $output .= '<dt>' . t('Administering content') . '</dt>';
@@ -656,7 +656,7 @@ function node_ranking() {
       'score' => 'n.sticky',
     ),
     'promote' => array(
-      'title' => t('Content is promoted to the front page'),
+      'title' => t('Content is promoted to the home page'),
       // The promote flag is either 0 or 1, which is automatically normalized.
       'score' => 'n.promote',
     ),
diff --git a/core/modules/node/src/Entity/Node.php b/core/modules/node/src/Entity/Node.php
index bdb8050..5ad106f 100644
--- a/core/modules/node/src/Entity/Node.php
+++ b/core/modules/node/src/Entity/Node.php
@@ -438,7 +438,7 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setTranslatable(TRUE);
 
     $fields['promote'] = BaseFieldDefinition::create('boolean')
-      ->setLabel(t('Promoted to front page'))
+      ->setLabel(t('Promoted to home page'))
       ->setRevisionable(TRUE)
       ->setTranslatable(TRUE)
       ->setDefaultValue(TRUE)
diff --git a/core/modules/node/src/NodeForm.php b/core/modules/node/src/NodeForm.php
index d9437db..2ad95ed 100644
--- a/core/modules/node/src/NodeForm.php
+++ b/core/modules/node/src/NodeForm.php
@@ -377,7 +377,7 @@ public function save(array $form, FormStateInterface $form_state) {
         );
       }
       else {
-        $form_state->setRedirect('<front>');
+        $form_state->setRedirect('<home>');
       }
 
       // Remove the preview entry from the temp store, if any.
diff --git a/core/modules/node/src/NodeTypeForm.php b/core/modules/node/src/NodeTypeForm.php
index d5fb998..8698b0c 100644
--- a/core/modules/node/src/NodeTypeForm.php
+++ b/core/modules/node/src/NodeTypeForm.php
@@ -148,7 +148,7 @@ public function form(array $form, FormStateInterface $form_state) {
       '#default_value' => $workflow_options,
       '#options' => array(
         'status' => t('Published'),
-        'promote' => t('Promoted to front page'),
+        'promote' => t('Promoted to home page'),
         'sticky' => t('Sticky at top of lists'),
         'revision' => t('Create new revision'),
       ),
diff --git a/core/modules/node/src/NodeViewsData.php b/core/modules/node/src/NodeViewsData.php
index 21e1e44..9987469 100644
--- a/core/modules/node/src/NodeViewsData.php
+++ b/core/modules/node/src/NodeViewsData.php
@@ -49,8 +49,8 @@ public function getViewsData() {
       ),
     );
 
-    $data['node_field_data']['promote']['help'] = $this->t('A boolean indicating whether the node is visible on the front page.');
-    $data['node_field_data']['promote']['filter']['label'] = $this->t('Promoted to front page status');
+    $data['node_field_data']['promote']['help'] = $this->t('A boolean indicating whether the node is visible on the home page.');
+    $data['node_field_data']['promote']['filter']['label'] = $this->t('Promoted to home page status');
     $data['node_field_data']['promote']['filter']['type'] = 'yes-no';
 
     $data['node_field_data']['sticky']['help'] = $this->t('A boolean indicating whether the node should sort to the top of content lists.');
@@ -253,7 +253,7 @@ public function getViewsData() {
     $data['node_field_revision']['status']['filter']['type'] = 'yes-no';
     $data['node_field_revision']['status']['filter']['use_equal'] = TRUE;
 
-    $data['node_field_revision']['promote']['help'] = $this->t('A boolean indicating whether the node is visible on the front page.');
+    $data['node_field_revision']['promote']['help'] = $this->t('A boolean indicating whether the node is visible on the home page.');
 
     $data['node_field_revision']['sticky']['help'] = $this->t('A boolean indicating whether the node should sort to the top of content lists.');
 
diff --git a/core/modules/node/src/Plugin/Action/DemoteNode.php b/core/modules/node/src/Plugin/Action/DemoteNode.php
index 04644a9..3418ea4 100644
--- a/core/modules/node/src/Plugin/Action/DemoteNode.php
+++ b/core/modules/node/src/Plugin/Action/DemoteNode.php
@@ -10,7 +10,7 @@
  *
  * @Action(
  *   id = "node_unpromote_action",
- *   label = @Translation("Demote selected content from front page"),
+ *   label = @Translation("Demote selected content from home page"),
  *   type = "node"
  * )
  */
diff --git a/core/modules/node/src/Plugin/Action/PromoteNode.php b/core/modules/node/src/Plugin/Action/PromoteNode.php
index 097c341..cde118a 100644
--- a/core/modules/node/src/Plugin/Action/PromoteNode.php
+++ b/core/modules/node/src/Plugin/Action/PromoteNode.php
@@ -10,7 +10,7 @@
  *
  * @Action(
  *   id = "node_promote_action",
- *   label = @Translation("Promote selected content to front page"),
+ *   label = @Translation("Promote selected content to home page"),
  *   type = "node"
  * )
  */
diff --git a/core/modules/node/src/Plugin/migrate/source/d6/Node.php b/core/modules/node/src/Plugin/migrate/source/d6/Node.php
index 8686415..428aa68 100644
--- a/core/modules/node/src/Plugin/migrate/source/d6/Node.php
+++ b/core/modules/node/src/Plugin/migrate/source/d6/Node.php
@@ -99,7 +99,7 @@ public function fields() {
       'created' => $this->t('Created timestamp'),
       'changed' => $this->t('Modified timestamp'),
       'status' => $this->t('Published'),
-      'promote' => $this->t('Promoted to front page'),
+      'promote' => $this->t('Promoted to home page'),
       'sticky' => $this->t('Sticky at top of lists'),
       'revision' => $this->t('Create new revision'),
       'language' => $this->t('Language (fr, en, ...)'),
diff --git a/core/modules/node/src/Plugin/migrate/source/d7/Node.php b/core/modules/node/src/Plugin/migrate/source/d7/Node.php
index 6286d5f..c924644 100644
--- a/core/modules/node/src/Plugin/migrate/source/d7/Node.php
+++ b/core/modules/node/src/Plugin/migrate/source/d7/Node.php
@@ -82,7 +82,7 @@ public function fields() {
       'created' => $this->t('Created timestamp'),
       'changed' => $this->t('Modified timestamp'),
       'status' => $this->t('Published'),
-      'promote' => $this->t('Promoted to front page'),
+      'promote' => $this->t('Promoted to home page'),
       'sticky' => $this->t('Sticky at top of lists'),
       'revision' => $this->t('Create new revision'),
       'language' => $this->t('Language (fr, en, ...)'),
diff --git a/core/modules/node/src/Tests/NodeBlockFunctionalTest.php b/core/modules/node/src/Tests/NodeBlockFunctionalTest.php
index 9579045..e5a11b0 100644
--- a/core/modules/node/src/Tests/NodeBlockFunctionalTest.php
+++ b/core/modules/node/src/Tests/NodeBlockFunctionalTest.php
@@ -139,7 +139,7 @@ public function testRecentNodeBlock() {
     // Verify visibility rules.
     $this->drupalGet('');
     $label = $block->label();
-    $this->assertNoText($label, 'Block was not displayed on the front page.');
+    $this->assertNoText($label, 'Block was not displayed on the home page.');
     $this->assertCacheContexts(['languages:language_content', 'languages:language_interface', 'theme', 'url.query_args:' . MainContentViewSubscriber::WRAPPER_FORMAT, 'user', 'route']);
     $this->drupalGet('node/add/article');
     $this->assertText($label, 'Block was displayed on the node/add/article page.');
diff --git a/core/modules/node/src/Tests/NodeCreationTest.php b/core/modules/node/src/Tests/NodeCreationTest.php
index 7c4e142..b71002d 100644
--- a/core/modules/node/src/Tests/NodeCreationTest.php
+++ b/core/modules/node/src/Tests/NodeCreationTest.php
@@ -127,7 +127,7 @@ function testFailedPageCreation() {
    * Creates an unpublished node and confirms correct redirect behavior.
    */
   function testUnpublishedNodeCreation() {
-    // Set the front page to the test page.
+    // Set the home page to the test page.
     $this->config('system.site')->set('page.front', '/test-page')->save();
 
     // Set "Basic page" content type to be unpublished by default.
diff --git a/core/modules/node/src/Tests/PagePreviewTest.php b/core/modules/node/src/Tests/PagePreviewTest.php
index 2bfd2e7..e715964 100644
--- a/core/modules/node/src/Tests/PagePreviewTest.php
+++ b/core/modules/node/src/Tests/PagePreviewTest.php
@@ -246,7 +246,7 @@ function testPagePreview() {
     $this->clickLink(t('Back to content editing'));
     $this->assertFieldByName($title_key, $edit[$title_key], 'New title value displayed.');
     // Navigate away from the node without saving.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     // Go back to the edit form, the title should have its initial value.
     $this->drupalGet('node/' . $node->id() . '/edit');
     $this->assertFieldByName($title_key, $node->label(), 'Correct title value displayed.');
diff --git a/core/modules/node/src/Tests/Views/BulkFormTest.php b/core/modules/node/src/Tests/Views/BulkFormTest.php
index 677c9d8..12d148f 100644
--- a/core/modules/node/src/Tests/Views/BulkFormTest.php
+++ b/core/modules/node/src/Tests/Views/BulkFormTest.php
@@ -143,21 +143,21 @@ public function testBulkForm() {
     $node = $this->loadNode($node->id());
     $this->assertFalse($node->isSticky(), 'Node is not sticky anymore');
 
-    // Promote to front page.
-    $this->assertFalse($node->isPromoted(), 'Node is not promoted to the front page');
-    $this->assertFalse($node->getTranslation('en-gb')->isPromoted(), 'Node translation is not promoted to the front page');
-    $this->assertFalse($node->getTranslation('it')->isPromoted(), 'Node translation is not promoted to the front page');
+    // Promote to home page.
+    $this->assertFalse($node->isPromoted(), 'Node is not promoted to the home page');
+    $this->assertFalse($node->getTranslation('en-gb')->isPromoted(), 'Node translation is not promoted to the home page');
+    $this->assertFalse($node->getTranslation('it')->isPromoted(), 'Node translation is not promoted to the home page');
     $edit = array(
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_promote_action',
     );
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode($node->id());
-    $this->assertTrue($node->isPromoted(), 'Node has been promoted to the front page');
-    $this->assertFalse($node->getTranslation('en-gb')->isPromoted(), 'Node translation has not been promoted to the front page');
-    $this->assertFalse($node->getTranslation('it')->isPromoted(), 'Node translation has not been promoted to the front page');
+    $this->assertTrue($node->isPromoted(), 'Node has been promoted to the home page');
+    $this->assertFalse($node->getTranslation('en-gb')->isPromoted(), 'Node translation has not been promoted to the home page');
+    $this->assertFalse($node->getTranslation('it')->isPromoted(), 'Node translation has not been promoted to the home page');
 
-    // Demote from front page.
+    // Demote from home page.
     $edit = array(
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_unpromote_action',
diff --git a/core/modules/node/src/Tests/Views/FrontPageTest.php b/core/modules/node/src/Tests/Views/FrontPageTest.php
index b27c416..971e639 100644
--- a/core/modules/node/src/Tests/Views/FrontPageTest.php
+++ b/core/modules/node/src/Tests/Views/FrontPageTest.php
@@ -226,7 +226,7 @@ public function testCacheTagsWithCachePluginTime() {
   }
 
   /**
-   * Tests the cache tags on the front page.
+   * Tests the cache tags on the home page.
    *
    * @param bool $do_assert_views_caches
    *   Whether to check Views' result & output caches.
diff --git a/core/modules/node/src/Tests/Views/NodeLanguageTest.php b/core/modules/node/src/Tests/Views/NodeLanguageTest.php
index 4561508..a1e9054 100644
--- a/core/modules/node/src/Tests/Views/NodeLanguageTest.php
+++ b/core/modules/node/src/Tests/Views/NodeLanguageTest.php
@@ -149,8 +149,8 @@ public function testLanguages() {
     $this->assertNoText('French', 'French language is not shown on ' . $message);
     $this->assertText('Spanish', 'Spanish language is shown on ' . $message);
 
-    // Test the front page view filter. Only node titles in the current language
-    // should be displayed on the front page by default.
+    // Test the home page view filter. Only node titles in the current language
+    // should be displayed on the home page by default.
     foreach ($this->nodeTitles as $langcode => $titles) {
       // The frontpage view does not display content without a language.
       if ($langcode == LanguageInterface::LANGCODE_NOT_SPECIFIED) {
@@ -191,7 +191,7 @@ public function testLanguages() {
       }
     }
 
-    // Override the config for the front page view, so that the language
+    // Override the config for the home page view, so that the language
     // filter is set to the site default language instead. This should just
     // show the English nodes, no matter what the content language is.
     $config = $this->config('views.view.frontpage');
diff --git a/core/modules/node/templates/node.html.twig b/core/modules/node/templates/node.html.twig
index c7ada1e..81fa2f3 100644
--- a/core/modules/node/templates/node.html.twig
+++ b/core/modules/node/templates/node.html.twig
@@ -38,7 +38,7 @@
  *     teaser would result in: "node--view-mode-teaser", and
  *     full: "node--view-mode-full".
  *   The following are controlled through the node publishing options.
- *   - node--promoted: Appears on nodes promoted to the front page.
+ *   - node--promoted: Appears on nodes promoted to the home page.
  *   - node--sticky: Appears on nodes ordered above other non-sticky nodes in
  *     teaser listings.
  *   - node--unpublished: Appears on unpublished nodes visible only to site
diff --git a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeSettingPromoteTest.php b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeSettingPromoteTest.php
index a434cc7..cdbd1c2 100644
--- a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeSettingPromoteTest.php
+++ b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeSettingPromoteTest.php
@@ -26,7 +26,7 @@ protected function setUp() {
    * Tests migration of the promote checkbox's settings.
    */
   public function testMigration() {
-    $this->assertIdentical('Promoted to front page', BaseFieldOverride::load('node.article.promote')->label());
+    $this->assertIdentical('Promoted to home page', BaseFieldOverride::load('node.article.promote')->label());
   }
 
 }
diff --git a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php
index f7b98bd..d609522 100644
--- a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php
+++ b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php
@@ -72,7 +72,7 @@ protected function setUp() {
    * @param int $changed
    *   The expected modification time.
    * @param bool $promoted
-   *   Whether the node is expected to be promoted to the front page.
+   *   Whether the node is expected to be promoted to the home page.
    * @param bool $sticky
    *   Whether the node is expected to be sticky.
    */
diff --git a/core/modules/rdf/src/Tests/CommentAttributesTest.php b/core/modules/rdf/src/Tests/CommentAttributesTest.php
index 5febcb9..8eb90c7 100644
--- a/core/modules/rdf/src/Tests/CommentAttributesTest.php
+++ b/core/modules/rdf/src/Tests/CommentAttributesTest.php
@@ -23,7 +23,7 @@ class CommentAttributesTest extends CommentTestBase {
   public static $modules = array('views', 'node', 'comment', 'rdf');
 
   /**
-   * URI of the front page of the Drupal site.
+   * URI of the home page of the Drupal site.
    *
    * @var string
    */
@@ -53,7 +53,7 @@ protected function setUp() {
     $this->setCommentSettings('comment_default_mode', CommentManagerInterface::COMMENT_MODE_THREADED, 'Comment paging changed.');
 
     // Prepares commonly used URIs.
-    $this->baseUri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $this->baseUri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
     $this->nodeUri = $this->node->url('canonical', ['absolute' => TRUE]);
 
     // Set relation between node and comment.
diff --git a/core/modules/rdf/src/Tests/EntityReferenceFieldAttributesTest.php b/core/modules/rdf/src/Tests/EntityReferenceFieldAttributesTest.php
index 48653a5..d33daba 100644
--- a/core/modules/rdf/src/Tests/EntityReferenceFieldAttributesTest.php
+++ b/core/modules/rdf/src/Tests/EntityReferenceFieldAttributesTest.php
@@ -103,7 +103,7 @@ function testNodeTeaser() {
     // Parse the teaser.
     $parser = new \EasyRdf_Parser_Rdfa();
     $graph = new \EasyRdf_Graph();
-    $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $base_uri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
     $parser->parse($graph, $html, 'rdfa', $base_uri);
 
     // Node relations to taxonomy terms.
diff --git a/core/modules/rdf/src/Tests/FileFieldAttributesTest.php b/core/modules/rdf/src/Tests/FileFieldAttributesTest.php
index 34e76ae..1c68afb 100644
--- a/core/modules/rdf/src/Tests/FileFieldAttributesTest.php
+++ b/core/modules/rdf/src/Tests/FileFieldAttributesTest.php
@@ -78,10 +78,10 @@ function testNodeTeaser() {
     $node_render_array = entity_view_multiple(array($this->node), 'teaser');
     $html = \Drupal::service('renderer')->renderRoot($node_render_array);
 
-    // Parses front page where the node is displayed in its teaser form.
+    // Parses home page where the node is displayed in its teaser form.
     $parser = new \EasyRdf_Parser_Rdfa();
     $graph = new \EasyRdf_Graph();
-    $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $base_uri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
     $parser->parse($graph, $html, 'rdfa', $base_uri);
 
     $node_uri = $this->node->url('canonical', ['absolute' => TRUE]);
diff --git a/core/modules/rdf/src/Tests/GetNamespacesTest.php b/core/modules/rdf/src/Tests/GetNamespacesTest.php
index 8aeaf79..bc63e80 100644
--- a/core/modules/rdf/src/Tests/GetNamespacesTest.php
+++ b/core/modules/rdf/src/Tests/GetNamespacesTest.php
@@ -23,7 +23,7 @@ class GetNamespacesTest extends WebTestBase {
    * Tests RDF namespaces.
    */
   function testGetRdfNamespaces() {
-    // Fetches the front page and extracts RDFa 1.1 prefixes.
+    // Fetches the home page and extracts RDFa 1.1 prefixes.
     $this->drupalGet('');
 
     $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', array(
diff --git a/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php b/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php
index cce663b..716036d 100644
--- a/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php
+++ b/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php
@@ -88,7 +88,7 @@ function testNodeTeaser() {
     // Parse the teaser.
     $parser = new \EasyRdf_Parser_Rdfa();
     $graph = new \EasyRdf_Graph();
-    $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $base_uri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
     $parser->parse($graph, $html, 'rdfa', $base_uri);
 
     // Construct the node and image URIs for testing.
diff --git a/core/modules/rdf/src/Tests/NodeAttributesTest.php b/core/modules/rdf/src/Tests/NodeAttributesTest.php
index 5c6b267..0aefebc 100644
--- a/core/modules/rdf/src/Tests/NodeAttributesTest.php
+++ b/core/modules/rdf/src/Tests/NodeAttributesTest.php
@@ -48,9 +48,9 @@ function testNodeAttributes() {
     ));
 
     $node_uri = $node->url('canonical', ['absolute' => TRUE]);
-    $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $base_uri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
 
-    // Parses front page where the node is displayed in its teaser form.
+    // Parses home page where the node is displayed in its teaser form.
     $parser = new \EasyRdf_Parser_Rdfa();
     $graph = new \EasyRdf_Graph();
     $parser->parse($graph, $this->drupalGet('node/' . $node->id()), 'rdfa', $base_uri);
diff --git a/core/modules/rdf/src/Tests/StandardProfileTest.php b/core/modules/rdf/src/Tests/StandardProfileTest.php
index d8aa1b1..f72e417 100644
--- a/core/modules/rdf/src/Tests/StandardProfileTest.php
+++ b/core/modules/rdf/src/Tests/StandardProfileTest.php
@@ -109,7 +109,7 @@ protected function setUp() {
     \Drupal::service('theme_handler')->install(['classy']);
     $this->config('system.theme')->set('default', 'classy')->save();
 
-    $this->baseUri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $this->baseUri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
 
     // Create two test users.
     $this->adminUser = $this->drupalCreateUser(array(
@@ -201,14 +201,14 @@ public function testRdfaOutput() {
   }
 
   /**
-   * Tests that data is exposed in the front page teasers.
+   * Tests that data is exposed in the home page teasers.
    */
   protected function doFrontPageRdfaTests() {
     // Feed the HTML into the parser.
-    $graph = $this->getRdfGraph(Url::fromRoute('<front>'));
+    $graph = $this->getRdfGraph(Url::fromRoute('<home>'));
 
     // Ensure that both articles are listed.
-    $this->assertEqual(2, count($graph->allOfType('http://schema.org/Article')), 'Two articles found on front page.');
+    $this->assertEqual(2, count($graph->allOfType('http://schema.org/Article')), 'Two articles found on home page.');
 
     // Test interaction count.
     $expected_value = array(
@@ -270,7 +270,7 @@ protected function doArticleRdfaTests() {
    *
    * Two fields are not tested for output here. Changed date is not displayed
    * on the page, so there is no test for output in node view. Comment count is
-   * displayed in teaser view, so it is tested in the front page tests.
+   * displayed in teaser view, so it is tested in the home page tests.
    */
   protected function doPageRdfaTests() {
     // The standard profile hides the created date on pages. Revert display to
diff --git a/core/modules/rdf/src/Tests/TaxonomyAttributesTest.php b/core/modules/rdf/src/Tests/TaxonomyAttributesTest.php
index 6be2c5b..bc9f699 100644
--- a/core/modules/rdf/src/Tests/TaxonomyAttributesTest.php
+++ b/core/modules/rdf/src/Tests/TaxonomyAttributesTest.php
@@ -49,7 +49,7 @@ function testTaxonomyTermRdfaAttributes() {
     // Parses the term's page and checks that the RDF output is correct.
     $parser = new \EasyRdf_Parser_Rdfa();
     $graph = new \EasyRdf_Graph();
-    $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+    $base_uri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
     $parser->parse($graph, $this->drupalGet('taxonomy/term/' . $term->id()), 'rdfa', $base_uri);
 
     // Inspects RDF graph output.
diff --git a/core/modules/rdf/src/Tests/UserAttributesTest.php b/core/modules/rdf/src/Tests/UserAttributesTest.php
index 232b5b2..4603fe8 100644
--- a/core/modules/rdf/src/Tests/UserAttributesTest.php
+++ b/core/modules/rdf/src/Tests/UserAttributesTest.php
@@ -60,7 +60,7 @@ function testUserAttributesInMarkup() {
       // should be used.
       $parser = new \EasyRdf_Parser_Rdfa();
       $graph = new \EasyRdf_Graph();
-      $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+      $base_uri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
       $parser->parse($graph, $this->drupalGet('user/' . $author->id()), 'rdfa', $base_uri);
 
       // Inspects RDF graph output.
@@ -85,7 +85,7 @@ function testUserAttributesInMarkup() {
       // Parses the node created by the user.
       $parser = new \EasyRdf_Parser_Rdfa();
       $graph = new \EasyRdf_Graph();
-      $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
+      $base_uri = \Drupal::url('<home>', [], ['absolute' => TRUE]);
       $parser->parse($graph, $this->drupalGet('node/' . $node->id()), 'rdfa', $base_uri);
 
       // Ensures the default bundle mapping for user is used on the Authored By
diff --git a/core/modules/rest/tests/src/Kernel/RestLinkManagerTest.php b/core/modules/rest/tests/src/Kernel/RestLinkManagerTest.php
index ab558e5..7f21da3 100644
--- a/core/modules/rest/tests/src/Kernel/RestLinkManagerTest.php
+++ b/core/modules/rest/tests/src/Kernel/RestLinkManagerTest.php
@@ -31,7 +31,7 @@ public function testRestLinkManagers() {
     \Drupal::moduleHandler()->invoke('rest', 'install');
     /* @var \Drupal\rest\LinkManager\TypeLinkManagerInterface $type_manager */
     $type_manager = \Drupal::service('rest.link_manager.type');
-    $base = Url::fromRoute('<front>', [], ['absolute' => TRUE])->toString();
+    $base = Url::fromRoute('<home>', [], ['absolute' => TRUE])->toString();
     $link = $type_manager->getTypeUri('node', 'page');
     $this->assertEqual($link, $base . 'rest/type/node/page');
     // Now with optional context.
@@ -53,7 +53,7 @@ public function testRestLinkManagers() {
   public function testRestLinkManagersNoInstallHook() {
     /* @var \Drupal\rest\LinkManager\TypeLinkManagerInterface $type_manager */
     $type_manager = \Drupal::service('rest.link_manager.type');
-    $base = Url::fromRoute('<front>', [], ['absolute' => TRUE])->toString();
+    $base = Url::fromRoute('<home>', [], ['absolute' => TRUE])->toString();
     $link = $type_manager->getTypeUri('node', 'page');
     $this->assertEqual($link, $base . 'rest/type/node/page');
     // Now with optional context.
diff --git a/core/modules/search/src/Tests/SearchBlockTest.php b/core/modules/search/src/Tests/SearchBlockTest.php
index 7d42a85..9b7dde4 100644
--- a/core/modules/search/src/Tests/SearchBlockTest.php
+++ b/core/modules/search/src/Tests/SearchBlockTest.php
@@ -45,7 +45,7 @@ public function testSearchFormBlock() {
     $elements = $this->xpath($pattern);
     $this->assertTrue(empty($elements), 'The search input field does not have empty name attribute.');
 
-    // Test a normal search via the block form, from the front page.
+    // Test a normal search via the block form, from the home page.
     $terms = array('keys' => 'test');
     $this->submitGetForm('', $terms, t('Search'));
     $this->assertResponse(200);
@@ -76,7 +76,7 @@ public function testSearchFormBlock() {
       'Submitted to correct URL.'
     );
 
-    // Test an empty search via the block form, from the front page.
+    // Test an empty search via the block form, from the home page.
     $terms = array('keys' => '');
     $this->submitGetForm('', $terms, t('Search'));
     $this->assertResponse(200);
diff --git a/core/modules/search/src/Tests/SearchRankingTest.php b/core/modules/search/src/Tests/SearchRankingTest.php
index 2045233..7567aec 100644
--- a/core/modules/search/src/Tests/SearchRankingTest.php
+++ b/core/modules/search/src/Tests/SearchRankingTest.php
@@ -220,7 +220,7 @@ public function testHTMLRankings() {
     foreach ($shuffled_tags as $tag) {
       switch ($tag) {
         case 'a':
-          $settings['body'] = array(array('value' => \Drupal::l('Drupal Rocks', new Url('<front>')), 'format' => 'full_html'));
+          $settings['body'] = array(array('value' => \Drupal::l('Drupal Rocks', new Url('<home>')), 'format' => 'full_html'));
           break;
         case 'notag':
           $settings['body'] = array(array('value' => 'Drupal Rocks'));
diff --git a/core/modules/shortcut/src/Controller/ShortcutController.php b/core/modules/shortcut/src/Controller/ShortcutController.php
index ff0e184..cad10b0 100644
--- a/core/modules/shortcut/src/Controller/ShortcutController.php
+++ b/core/modules/shortcut/src/Controller/ShortcutController.php
@@ -32,7 +32,7 @@ public function addForm(ShortcutSetInterface $shortcut_set) {
    *   The shortcut to delete.
    *
    * @return \Symfony\Component\HttpFoundation\RedirectResponse
-   *   A redirect to the previous location or the front page when destination
+   *   A redirect to the previous location or the home page when destination
    *   is not set.
    */
   public function deleteShortcutLinkInline(ShortcutInterface $shortcut) {
@@ -46,7 +46,7 @@ public function deleteShortcutLinkInline(ShortcutInterface $shortcut) {
       drupal_set_message($this->t('Unable to delete the shortcut for %title.', array('%title' => $label)), 'error');
     }
 
-    return $this->redirect('<front>');
+    return $this->redirect('<home>');
   }
 
 }
diff --git a/core/modules/shortcut/src/Controller/ShortcutSetController.php b/core/modules/shortcut/src/Controller/ShortcutSetController.php
index 8d84f9a..c57b212 100644
--- a/core/modules/shortcut/src/Controller/ShortcutSetController.php
+++ b/core/modules/shortcut/src/Controller/ShortcutSetController.php
@@ -47,7 +47,7 @@ public static function create(ContainerInterface $container) {
    *   The request object.
    *
    * @return \Symfony\Component\HttpFoundation\RedirectResponse
-   *   A redirect response to the front page, or the previous location.
+   *   A redirect response to the home page, or the previous location.
    *
    * @throws \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException
    */
@@ -71,7 +71,7 @@ public function addShortcutLinkInline(ShortcutSetInterface $shortcut_set, Reques
         drupal_set_message($this->t('Unable to add a shortcut for %title.', array('%title' => $shortcut->label())), 'error');
       }
 
-      return $this->redirect('<front>');
+      return $this->redirect('<home>');
     }
 
     throw new AccessDeniedHttpException();
diff --git a/core/modules/shortcut/src/Tests/ShortcutLinksTest.php b/core/modules/shortcut/src/Tests/ShortcutLinksTest.php
index 679f89b..b31e349 100644
--- a/core/modules/shortcut/src/Tests/ShortcutLinksTest.php
+++ b/core/modules/shortcut/src/Tests/ShortcutLinksTest.php
@@ -285,7 +285,7 @@ public function testShortcutLinkDelete() {
     // Delete all the remaining shortcut links.
     entity_delete_multiple('shortcut', array_filter($ids));
 
-    // Get the front page to check that no exceptions occur.
+    // Get the home page to check that no exceptions occur.
     $this->drupalGet('');
   }
 
@@ -366,14 +366,14 @@ public function testAccessShortcutsPermission() {
   public function testShortcutLinkOrder() {
     // Ensure to give permissions to access the shortcuts.
     $this->drupalLogin($this->drupalCreateUser(array('access toolbar', 'access shortcuts', 'access content overview', 'administer content types')));
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $shortcuts = $this->cssSelect('#toolbar-item-shortcuts-tray .toolbar-menu a');
     $this->assertEqual((string) $shortcuts[0], 'Add content');
     $this->assertEqual((string) $shortcuts[1], 'All content');
     foreach ($this->set->getShortcuts() as $shortcut) {
       $shortcut->setWeight($shortcut->getWeight() * -1)->save();
     }
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $shortcuts = $this->cssSelect('#toolbar-item-shortcuts-tray .toolbar-menu a');
     $this->assertEqual((string) $shortcuts[0], 'All content');
     $this->assertEqual((string) $shortcuts[1], 'Add content');
diff --git a/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php b/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php
index 4be41c3..8a8bae9 100644
--- a/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php
+++ b/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php
@@ -72,9 +72,9 @@ protected function doTestBasicTranslation() {
     foreach ($this->langcodes as $langcode) {
       if ($entity->hasTranslation($langcode)) {
         $language = new Language(array('id' => $langcode));
-        // Request the front page in this language and assert that the right
+        // Request the home page in this language and assert that the right
         // translation shows up in the shortcut list with the right path.
-        $this->drupalGet('<front>', array('language' => $language));
+        $this->drupalGet('<home>', array('language' => $language));
         $expected_path = \Drupal::urlGenerator()->generateFromRoute('user.page', array(), array('language' => $language));
         $label = $entity->getTranslation($langcode)->label();
         $elements = $this->xpath('//nav[contains(@class, "toolbar-lining")]/ul[@class="toolbar-menu"]/li/a[contains(@href, :href) and normalize-space(text())=:label]', array(':href' => $expected_path, ':label' => $label));
diff --git a/core/modules/simpletest/src/Tests/BrowserTest.php b/core/modules/simpletest/src/Tests/BrowserTest.php
index f98fe48..c7be81e 100644
--- a/core/modules/simpletest/src/Tests/BrowserTest.php
+++ b/core/modules/simpletest/src/Tests/BrowserTest.php
@@ -92,7 +92,7 @@ public function testCookies() {
     // Check that the $this->cookies property is populated when a user logs in.
     $user = $this->drupalCreateUser();
     $edit = ['name' => $user->getUsername(), 'pass' => $user->pass_raw];
-    $this->drupalPostForm('<front>', $edit, t('Log in'));
+    $this->drupalPostForm('<home>', $edit, t('Log in'));
     $this->assertEqual(count($this->cookies), 1, 'A cookie is set when the user logs in.');
 
     // Check that the name and value of the cookie match the request data.
diff --git a/core/modules/simpletest/src/WebTestBase.php b/core/modules/simpletest/src/WebTestBase.php
index 3622642..ee1ecac 100644
--- a/core/modules/simpletest/src/WebTestBase.php
+++ b/core/modules/simpletest/src/WebTestBase.php
@@ -2432,7 +2432,7 @@ protected function assertUrl($path, array $options = array(), $message = '', $gr
       $url_obj = Url::fromUri($path, $options);
     }
     else {
-      $uri = $path === '<front>' ? 'base:/' : 'base:/' . $path;
+      $uri = $path === '<home>' ? 'base:/' : 'base:/' . $path;
       // This is needed for language prefixing.
       $options['path_processing'] = TRUE;
       $url_obj = Url::fromUri($uri, $options);
@@ -2583,7 +2583,7 @@ protected function buildUrl($path, array $options = array()) {
         return Url::fromUri($path, $options)->toString();
       }
       else {
-        $uri = $path === '<front>' ? 'base:/' : 'base:/' . $path;
+        $uri = $path === '<home>' ? 'base:/' : 'base:/' . $path;
         // Path processing is needed for language prefixing.  Skip it when a
         // path that may look like an external URL is being used as internal.
         $options['path_processing'] = !$force_internal;
diff --git a/core/modules/simpletest/tests/src/FunctionalJavascript/BrowserWithJavascriptTest.php b/core/modules/simpletest/tests/src/FunctionalJavascript/BrowserWithJavascriptTest.php
index 2439799..06aeca2 100644
--- a/core/modules/simpletest/tests/src/FunctionalJavascript/BrowserWithJavascriptTest.php
+++ b/core/modules/simpletest/tests/src/FunctionalJavascript/BrowserWithJavascriptTest.php
@@ -12,7 +12,7 @@
 class BrowserWithJavascriptTest extends JavascriptTestBase {
 
   public function testJavascript() {
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $session = $this->getSession();
 
     $session->resizeWindow(400, 300);
@@ -31,7 +31,7 @@ public function testJavascript() {
   }
 
   public function testAssertJsCondition() {
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $session = $this->getSession();
 
     $session->resizeWindow(500, 300);
@@ -57,7 +57,7 @@ public function testAssertJsCondition() {
    * Tests creating screenshots.
    */
   public function testCreateScreenshot() {
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->createScreenshot('public://screenshot.jpg');
     $this->assertFileExists('public://screenshot.jpg');
   }
diff --git a/core/modules/system/config/schema/system.schema.yml b/core/modules/system/config/schema/system.schema.yml
index e34d375..4ec4fdc 100644
--- a/core/modules/system/config/schema/system.schema.yml
+++ b/core/modules/system/config/schema/system.schema.yml
@@ -28,7 +28,7 @@ system.site:
           label: 'Default 404 (not found) page'
         front:
           type: path
-          label: 'Default front page'
+          label: 'Default home page'
     admin_compact_mode:
       type: boolean
       label: 'Compact mode'
diff --git a/core/modules/system/src/Controller/DbUpdateController.php b/core/modules/system/src/Controller/DbUpdateController.php
index f378631..20fe799 100644
--- a/core/modules/system/src/Controller/DbUpdateController.php
+++ b/core/modules/system/src/Controller/DbUpdateController.php
@@ -406,7 +406,7 @@ protected function results(Request $request) {
     }
 
     if (!empty($_SESSION['update_success'])) {
-      $message = '<p>' . $this->t('Updates were attempted. If you see no failures below, you may proceed happily back to your <a href=":url">site</a>. Otherwise, you may need to update your database manually.', array(':url' => Url::fromRoute('<front>')->setOption('base_url', $base_url)->toString(TRUE)->getGeneratedUrl())) . ' ' . $log_message . '</p>';
+      $message = '<p>' . $this->t('Updates were attempted. If you see no failures below, you may proceed happily back to your <a href=":url">site</a>. Otherwise, you may need to update your database manually.', array(':url' => Url::fromRoute('<home>')->setOption('base_url', $base_url)->toString(TRUE)->getGeneratedUrl())) . ' ' . $log_message . '</p>';
     }
     else {
       $last = reset($_SESSION['updates_remaining']);
@@ -674,8 +674,8 @@ protected function helpfulLinks(Request $request) {
     // @todo Simplify with https://www.drupal.org/node/2548095
     $base_url = str_replace('/update.php', '', $request->getBaseUrl());
     $links['front'] = array(
-      'title' => $this->t('Front page'),
-      'url' => Url::fromRoute('<front>')->setOption('base_url', $base_url),
+      'title' => $this->t('Home page'),
+      'url' => Url::fromRoute('<home>')->setOption('base_url', $base_url),
     );
     if ($this->account->hasPermission('access administration pages')) {
       $links['admin-pages'] = array(
diff --git a/core/modules/system/src/Controller/SystemController.php b/core/modules/system/src/Controller/SystemController.php
index 41ed824..4e03caf 100644
--- a/core/modules/system/src/Controller/SystemController.php
+++ b/core/modules/system/src/Controller/SystemController.php
@@ -174,7 +174,7 @@ public function overview($link_id) {
    */
   public function compactPage($mode) {
     user_cookie_save(array('admin_compact_mode' => ($mode == 'on')));
-    return $this->redirect('<front>');
+    return $this->redirect('<home>');
   }
 
   /**
diff --git a/core/modules/system/src/EventSubscriber/ConfigCacheTag.php b/core/modules/system/src/EventSubscriber/ConfigCacheTag.php
index 6a4d807..8293730 100644
--- a/core/modules/system/src/EventSubscriber/ConfigCacheTag.php
+++ b/core/modules/system/src/EventSubscriber/ConfigCacheTag.php
@@ -48,7 +48,7 @@ public function __construct(ThemeHandlerInterface $theme_handler, CacheTagsInval
    */
   public function onSave(ConfigCrudEvent $event) {
     // Changing the site settings may mean a different route is selected for the
-    // front page. Additionally a change to the site name or similar must
+    // home page. Additionally a change to the site name or similar must
     // invalidate the render cache since this could be used anywhere.
     if ($event->getConfig()->getName() === 'system.site') {
       $this->cacheTagsInvalidator->invalidateTags(['route_match', 'rendered']);
diff --git a/core/modules/system/src/Form/SiteInformationForm.php b/core/modules/system/src/Form/SiteInformationForm.php
index 92986d6..a25ef38 100644
--- a/core/modules/system/src/Form/SiteInformationForm.php
+++ b/core/modules/system/src/Form/SiteInformationForm.php
@@ -118,16 +118,16 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     );
     $form['front_page'] = array(
       '#type' => 'details',
-      '#title' => t('Front page'),
+      '#title' => t('Home page'),
       '#open' => TRUE,
     );
     $front_page = $site_config->get('page.front') != '/user/login' ? $this->aliasManager->getAliasByPath($site_config->get('page.front')) : '';
     $form['front_page']['site_frontpage'] = array(
       '#type' => 'textfield',
-      '#title' => t('Default front page'),
+      '#title' => t('Default home page'),
       '#default_value' => $front_page,
       '#size' => 40,
-      '#description' => t('Optionally, specify a relative URL to display as the front page. Leave blank to display the default front page.'),
+      '#description' => t('Optionally, specify a relative URL to display as the home page. Leave blank to display the default home page.'),
       '#field_prefix' => $this->requestContext->getCompleteBaseUrl(),
     );
     $form['error_page'] = array(
@@ -157,16 +157,16 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function validateForm(array &$form, FormStateInterface $form_state) {
-    // Check for empty front page path.
+    // Check for empty home page path.
     if ($form_state->isValueEmpty('site_frontpage')) {
       // Set to default "user/login".
       $form_state->setValueForElement($form['front_page']['site_frontpage'], '/user/login');
     }
     else {
-      // Get the normal path of the front page.
+      // Get the normal path of the home page.
       $form_state->setValueForElement($form['front_page']['site_frontpage'], $this->aliasManager->getPathByAlias($form_state->getValue('site_frontpage')));
     }
-    // Validate front page path.
+    // Validate home page path.
     if (($value = $form_state->getValue('site_frontpage')) && $value[0] !== '/') {
       $form_state->setErrorByName('site_frontpage', $this->t("The path '%path' has to start with a slash.", ['%path' => $form_state->getValue('site_frontpage')]));
 
diff --git a/core/modules/system/src/PathBasedBreadcrumbBuilder.php b/core/modules/system/src/PathBasedBreadcrumbBuilder.php
index dcfc073..c493123 100644
--- a/core/modules/system/src/PathBasedBreadcrumbBuilder.php
+++ b/core/modules/system/src/PathBasedBreadcrumbBuilder.php
@@ -163,8 +163,8 @@ public function build(RouteMatchInterface $route_match) {
 
     }
     if ($path && '/' . $path != $front) {
-      // Add the Home link, except for the front page.
-      $links[] = Link::createFromRoute($this->t('Home'), '<front>');
+      // Add the Home link, except for the home page.
+      $links[] = Link::createFromRoute($this->t('Home'), '<home>');
     }
 
     return $breadcrumb->setLinks(array_reverse($links));
@@ -194,7 +194,7 @@ protected function getRequestForPath($path, array $exclude) {
     // Find the system path by resolving aliases, language prefix, etc.
     $processed = $this->pathProcessor->processInbound($path, $request);
     if (empty($processed) || !empty($exclude[$processed])) {
-      // This resolves to the front page, which we already add.
+      // This resolves to the home page, which we already add.
       return NULL;
     }
     $this->currentPath->setPath($processed, $request);
diff --git a/core/modules/system/src/Plugin/Condition/RequestPath.php b/core/modules/system/src/Plugin/Condition/RequestPath.php
index 17373ce..a0ab6c4 100644
--- a/core/modules/system/src/Plugin/Condition/RequestPath.php
+++ b/core/modules/system/src/Plugin/Condition/RequestPath.php
@@ -105,9 +105,9 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
       '#type' => 'textarea',
       '#title' => $this->t('Pages'),
       '#default_value' => $this->configuration['pages'],
-      '#description' => $this->t("Specify pages by using their paths. Enter one path per line. The '*' character is a wildcard. An example path is %user-wildcard for every user page. %front is the front page.", array(
+      '#description' => $this->t("Specify pages by using their paths. Enter one path per line. The '*' character is a wildcard. An example path is %user-wildcard for every user page. %home is the home page.", array(
         '%user-wildcard' => '/user/*',
-        '%front' => '<front>',
+        '%home' => '<home>',
       )),
     );
     return parent::buildConfigurationForm($form, $form_state);
diff --git a/core/modules/system/src/Tests/Cache/SessionExistsCacheContextTest.php b/core/modules/system/src/Tests/Cache/SessionExistsCacheContextTest.php
index b3c195d..451b20a 100644
--- a/core/modules/system/src/Tests/Cache/SessionExistsCacheContextTest.php
+++ b/core/modules/system/src/Tests/Cache/SessionExistsCacheContextTest.php
@@ -27,7 +27,7 @@ public function testCacheContext() {
 
     // 1. No session (anonymous).
     $this->assertSessionCookieOnClient(FALSE);
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $this->assertSessionCookieOnClient(FALSE);
     $this->assertRaw('Session does not exist!');
     $this->assertRaw('[session.exists]=0');
@@ -45,11 +45,11 @@ public function testCacheContext() {
 
     // 3. Session (anonymous).
     $this->assertSessionCookieOnClient(FALSE);
-    $this->drupalGet(Url::fromRoute('<front>', [], ['query' => ['trigger_session' => 1]]));
+    $this->drupalGet(Url::fromRoute('<home>', [], ['query' => ['trigger_session' => 1]]));
     $this->assertSessionCookieOnClient(TRUE);
     $this->assertRaw('Session does not exist!');
     $this->assertRaw('[session.exists]=0');
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $this->assertSessionCookieOnClient(TRUE);
     $this->assertRaw('Session exists!');
     $this->assertRaw('[session.exists]=1');
diff --git a/core/modules/system/src/Tests/DrupalKernel/ContainerRebuildWebTest.php b/core/modules/system/src/Tests/DrupalKernel/ContainerRebuildWebTest.php
index c87e3ad..0631e41 100644
--- a/core/modules/system/src/Tests/DrupalKernel/ContainerRebuildWebTest.php
+++ b/core/modules/system/src/Tests/DrupalKernel/ContainerRebuildWebTest.php
@@ -20,12 +20,12 @@ class ContainerRebuildWebTest extends WebTestBase {
    * Sets a different deployment identifier.
    */
   public function testSetContainerRebuildWithDifferentDeploymentIdentifier() {
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertHeader('container_rebuild_indicator', FALSE);
 
     $this->writeSettings(['settings' => ['deployment_identifier' => (object) ['value' => 'new-identifier', 'required' => TRUE]]]);
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
 
     $this->assertHeader('container_rebuild_indicator', 'new-identifier');
   }
@@ -36,19 +36,19 @@ public function testSetContainerRebuildWithDifferentDeploymentIdentifier() {
   public function testContainerInvalidation() {
 
     // Ensure that parameter is not set.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertHeader('container_rebuild_test_parameter', FALSE);
 
     // Ensure that after setting the parameter, without a container rebuild the
     // parameter is still not set.
     $this->writeSettings(['settings' => ['container_rebuild_test_parameter' => (object) ['value' => 'rebuild_me_please', 'required' => TRUE]]]);
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertHeader('container_rebuild_test_parameter', FALSE);
 
     // Ensure that after container invalidation the parameter is set.
     \Drupal::service('kernel')->invalidateContainer();
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertHeader('container_rebuild_test_parameter', 'rebuild_me_please');
   }
 
diff --git a/core/modules/system/src/Tests/Form/ConfirmFormTest.php b/core/modules/system/src/Tests/Form/ConfirmFormTest.php
index 312aa2e..a4e80d1 100644
--- a/core/modules/system/src/Tests/Form/ConfirmFormTest.php
+++ b/core/modules/system/src/Tests/Form/ConfirmFormTest.php
@@ -57,8 +57,8 @@ public function testConfirmFormWithExternalDestination() {
     $this->assertCancelLinkUrl(Url::fromUri('internal:/node'));
     $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => 'http://example.com')));
     $this->assertCancelLinkUrl(Url::fromRoute('form_test.route8'));
-    $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => '<front>')));
-    $this->assertCancelLinkUrl(Url::fromRoute('<front>'));
+    $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => '<home>')));
+    $this->assertCancelLinkUrl(Url::fromRoute('<home>'));
     // Other invalid destinations, should fall back to the form default.
     $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => '/http://example.com')));
     $this->assertCancelLinkUrl(Url::fromRoute('form_test.route8'));
diff --git a/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php b/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php
index 330d61f..4b5ff3d 100644
--- a/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php
@@ -90,7 +90,7 @@ public function testInstaller() {
     // Assert that the theme CSS was added to the page.
     $edit = array('preprocess_css' => FALSE);
     $this->drupalPostForm('admin/config/development/performance', $edit, t('Save configuration'));
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertRaw('classy/css/components/action-links.css');
 
     // Verify the strings from the translation files were imported.
diff --git a/core/modules/system/src/Tests/Installer/SiteNameTest.php b/core/modules/system/src/Tests/Installer/SiteNameTest.php
index ec4c0e1..dcbbf91 100644
--- a/core/modules/system/src/Tests/Installer/SiteNameTest.php
+++ b/core/modules/system/src/Tests/Installer/SiteNameTest.php
@@ -33,7 +33,7 @@ protected function installParameters() {
    */
   function testSiteName() {
     $this->drupalGet('');
-    $this->assertRaw($this->siteName, 'The site name that was set during the installation appears on the front page after installation.');
+    $this->assertRaw($this->siteName, 'The site name that was set during the installation appears on the home page after installation.');
   }
 
 }
diff --git a/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php b/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php
index f9c35ee..73771e5 100644
--- a/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php
+++ b/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php
@@ -64,12 +64,12 @@ protected function assertBreadcrumbParts($trail) {
     // this test would go into an infinite loop, so we need to check that too.
     while ($trail && !empty($parts)) {
       foreach ($trail as $path => $title) {
-        // If the path is empty, generate the path from the <front> route.  If
+        // If the path is empty, generate the path from the <home> route.  If
         // the path does not start with a leading slash, then run it through
         // Url::fromUri('base:')->toString() to get the correct base
         // prepended.
         if ($path == '') {
-          $url = Url::fromRoute('<front>')->toString();
+          $url = Url::fromRoute('<home>')->toString();
         }
         elseif ($path[0] != '/') {
           $url = Url::fromUri('base:' . $path)->toString();
diff --git a/core/modules/system/src/Tests/Menu/BreadcrumbTest.php b/core/modules/system/src/Tests/Menu/BreadcrumbTest.php
index f756300..8cda16b 100644
--- a/core/modules/system/src/Tests/Menu/BreadcrumbTest.php
+++ b/core/modules/system/src/Tests/Menu/BreadcrumbTest.php
@@ -305,8 +305,8 @@ function testBreadCrumbs() {
       'access user profiles',
     ));
 
-    // Verify breadcrumb on front page.
-    $this->assertBreadcrumb('<front>', array());
+    // Verify breadcrumb on home page.
+    $this->assertBreadcrumb('<home>', array());
 
     // Verify breadcrumb on user pages (without menu link) for anonymous user.
     $trail = $home;
diff --git a/core/modules/system/src/Tests/Menu/MenuLinkSecurityTest.php b/core/modules/system/src/Tests/Menu/MenuLinkSecurityTest.php
index 94bb14a..0caa811 100644
--- a/core/modules/system/src/Tests/Menu/MenuLinkSecurityTest.php
+++ b/core/modules/system/src/Tests/Menu/MenuLinkSecurityTest.php
@@ -24,13 +24,13 @@ public function testMenuLink() {
     $menu_link_content = MenuLinkContent::create([
       'title' => '<script>alert("Wild animals")</script>',
       'menu_name' => 'tools',
-      'link' => ['uri' => 'route:<front>'],
+      'link' => ['uri' => 'route:<home>'],
     ]);
     $menu_link_content->save();
 
     $this->drupalPlaceBlock('system_menu_block:tools');
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertNoRaw('<script>alert("Wild animals")</script>');
     $this->assertNoRaw('<script>alert("Even more wild animals")</script>');
     $this->assertEscaped('<script>alert("Wild animals")</script>');
diff --git a/core/modules/system/src/Tests/Render/DisplayVariantTest.php b/core/modules/system/src/Tests/Render/DisplayVariantTest.php
index 09f54d9..2d7b3db 100644
--- a/core/modules/system/src/Tests/Render/DisplayVariantTest.php
+++ b/core/modules/system/src/Tests/Render/DisplayVariantTest.php
@@ -25,7 +25,7 @@ function testPageDisplayVariantSelectionEvent() {
     // Tests that our display variant was selected, and that its configuration
     // was passed correctly. If the configuration wasn't passed, we'd get an
     // error page here.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertRaw('A very important, required value.');
     $this->assertRaw('Explicitly passed in context.');
     $this->assertCacheTag('custom_cache_tag');
diff --git a/core/modules/system/src/Tests/Render/HtmlResponseAttachmentsTest.php b/core/modules/system/src/Tests/Render/HtmlResponseAttachmentsTest.php
index 06af7c7..68155d0 100644
--- a/core/modules/system/src/Tests/Render/HtmlResponseAttachmentsTest.php
+++ b/core/modules/system/src/Tests/Render/HtmlResponseAttachmentsTest.php
@@ -63,7 +63,7 @@ public function testRenderCachedBlock() {
     // Make sure our test block is visible.
     $this->drupalPlaceBlock('attached_rendering_block', ['region' => 'content']);
 
-    // Get the front page, which should now have our visible block.
+    // Get the home page, which should now have our visible block.
     $this->drupalGet('');
     // Make sure our block is visible.
     $this->assertText('Markup from attached_rendering_block.');
diff --git a/core/modules/system/src/Tests/Routing/DestinationTest.php b/core/modules/system/src/Tests/Routing/DestinationTest.php
index d959c7a..4a71406 100644
--- a/core/modules/system/src/Tests/Routing/DestinationTest.php
+++ b/core/modules/system/src/Tests/Routing/DestinationTest.php
@@ -72,7 +72,7 @@ public function testDestination() {
     \Drupal::configFactory()->getEditable('system.site')->set('page.404', '/system-test/get-destination')->save();
     $this->drupalGet('http://example.com', ['external' => FALSE]);
     $this->assertResponse(404);
-    $this->assertIdentical(Url::fromRoute('<front>')->toString(), $this->getRawContent(), 'External URL is not allowed on 404 pages.');
+    $this->assertIdentical(Url::fromRoute('<home>')->toString(), $this->getRawContent(), 'External URL is not allowed on 404 pages.');
   }
 
 }
diff --git a/core/modules/system/src/Tests/Routing/RouterTest.php b/core/modules/system/src/Tests/Routing/RouterTest.php
index 1b33baf..aeec617 100644
--- a/core/modules/system/src/Tests/Routing/RouterTest.php
+++ b/core/modules/system/src/Tests/Routing/RouterTest.php
@@ -188,7 +188,7 @@ public function testControllerResolutionPage() {
    * Checks the generate method on the url generator using the front router.
    */
   public function testUrlGeneratorFront() {
-    $front_url = Url::fromRoute('<front>', [], ['absolute' => TRUE]);
+    $front_url = Url::fromRoute('<home>', [], ['absolute' => TRUE]);
     // Compare to the site base URL.
     $base_url = Url::fromUri('base:/', ['absolute' => TRUE]);
     $this->assertIdentical($base_url->toString(), $front_url->toString());
diff --git a/core/modules/system/src/Tests/ServiceProvider/ServiceProviderWebTest.php b/core/modules/system/src/Tests/ServiceProvider/ServiceProviderWebTest.php
index 5d2505a..701f46b 100644
--- a/core/modules/system/src/Tests/ServiceProvider/ServiceProviderWebTest.php
+++ b/core/modules/system/src/Tests/ServiceProvider/ServiceProviderWebTest.php
@@ -28,7 +28,7 @@ public function testServiceProviderRegistrationIntegration() {
     $this->assertTrue(\Drupal::hasService('service_provider_test_class'), 'The service_provider_test_class service has been registered to the DIC');
     // The event subscriber method in the test class calls drupal_set_message()
     // with a message saying it has fired. This will fire on every page request
-    // so it should show up on the front page.
+    // so it should show up on the home page.
     $this->drupalGet('');
     $this->assertText(t('The service_provider_test event subscriber fired!'), 'The service_provider_test event subscriber fired');
   }
diff --git a/core/modules/system/src/Tests/Session/SessionAuthenticationTest.php b/core/modules/system/src/Tests/Session/SessionAuthenticationTest.php
index ffdc08d..ff43455 100644
--- a/core/modules/system/src/Tests/Session/SessionAuthenticationTest.php
+++ b/core/modules/system/src/Tests/Session/SessionAuthenticationTest.php
@@ -113,7 +113,7 @@ public function testBasicAuthNoSession() {
     $no_cookie_url = Url::fromRoute('session_test.get_session_basic_auth');
 
     // A route that is authorized with standard cookie authentication.
-    $cookie_url = '<front>';
+    $cookie_url = '<home>';
 
     // If we authenticate with a third party authentication system then no
     // session cookie should be set, the third party system is responsible for
diff --git a/core/modules/system/src/Tests/Session/SessionHttpsTest.php b/core/modules/system/src/Tests/Session/SessionHttpsTest.php
index 8e25fd2..0c53376 100644
--- a/core/modules/system/src/Tests/Session/SessionHttpsTest.php
+++ b/core/modules/system/src/Tests/Session/SessionHttpsTest.php
@@ -181,7 +181,7 @@ protected function loginHttps(AccountInterface $account) {
    */
   protected function getPathFromLocationHeader($https = FALSE, $response_code = 303) {
     // Generate the base_url.
-    $base_url = $this->container->get('url_generator')->generateFromRoute('<front>', [], ['absolute' => TRUE]);
+    $base_url = $this->container->get('url_generator')->generateFromRoute('<home>', [], ['absolute' => TRUE]);
     if ($https) {
       $base_url = str_replace('http://', 'https://', $base_url);
     }
diff --git a/core/modules/system/src/Tests/System/AdminTest.php b/core/modules/system/src/Tests/System/AdminTest.php
index 8921ad0..36c55c2 100644
--- a/core/modules/system/src/Tests/System/AdminTest.php
+++ b/core/modules/system/src/Tests/System/AdminTest.php
@@ -144,14 +144,14 @@ protected function getTopLevelMenuLinks() {
    * Test compact mode.
    */
   function testCompactMode() {
-    // The front page defaults to 'user/login', which redirects to 'user/{user}'
-    // for authenticated users. We cannot use '<front>', since this does not
+    // The home page defaults to 'user/login', which redirects to 'user/{user}'
+    // for authenticated users. We cannot use '<home>', since this does not
     // match the redirected url.
     $frontpage_url = 'user/' . $this->adminUser->id();
 
     $this->drupalGet('admin/compact/on');
     $this->assertResponse(200, 'A valid page is returned after turning on compact mode.');
-    $this->assertUrl($frontpage_url, array(), 'The user is redirected to the front page after turning on compact mode.');
+    $this->assertUrl($frontpage_url, array(), 'The user is redirected to the home page after turning on compact mode.');
     $this->assertTrue($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'Compact mode turns on.');
     $this->drupalGet('admin/compact/on');
     $this->assertTrue($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'Compact mode remains on after a repeat call.');
@@ -160,7 +160,7 @@ function testCompactMode() {
 
     $this->drupalGet('admin/compact/off');
     $this->assertResponse(200, 'A valid page is returned after turning off compact mode.');
-    $this->assertUrl($frontpage_url, array(), 'The user is redirected to the front page after turning off compact mode.');
+    $this->assertUrl($frontpage_url, array(), 'The user is redirected to the home page after turning off compact mode.');
     $this->assertEqual($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'deleted', 'Compact mode turns off.');
     $this->drupalGet('admin/compact/off');
     $this->assertEqual($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'deleted', 'Compact mode remains off after a repeat call.');
diff --git a/core/modules/system/src/Tests/System/FrontPageTest.php b/core/modules/system/src/Tests/System/FrontPageTest.php
index 03666fd..69fdc94 100644
--- a/core/modules/system/src/Tests/System/FrontPageTest.php
+++ b/core/modules/system/src/Tests/System/FrontPageTest.php
@@ -6,7 +6,7 @@
 use Drupal\simpletest\WebTestBase;
 
 /**
- * Tests front page functionality and administration.
+ * Tests home page functionality and administration.
  *
  * @group system
  */
@@ -37,17 +37,17 @@ protected function setUp() {
     $this->drupalCreateContentType(array('type' => 'page'));
     $this->nodePath = "node/" . $this->drupalCreateNode(array('promote' => 1))->id();
 
-    // Configure 'node' as front page.
+    // Configure 'node' as home page.
     $this->config('system.site')->set('page.front', '/node')->save();
-    // Enable front page logging in system_test.module.
+    // Enable home page logging in system_test.module.
     \Drupal::state()->set('system_test.front_page_output', 1);
   }
 
   /**
-   * Test front page functionality.
+   * Test home page functionality.
    */
   public function testDrupalFrontPage() {
-    // Create a promoted node to test the <title> tag on the front page view.
+    // Create a promoted node to test the <title> tag on the home page view.
     $settings = array(
       'title' => $this->randomMachineName(8),
       'promote' => 1,
@@ -56,33 +56,33 @@ public function testDrupalFrontPage() {
     $this->drupalGet('');
     $this->assertTitle('Home | Drupal');
 
-    $this->assertText(t('On front page.'), 'Path is the front page.');
+    $this->assertText(t('On home page.'), 'Path is the home page.');
     $this->drupalGet('node');
-    $this->assertText(t('On front page.'), 'Path is the front page.');
+    $this->assertText(t('On home page.'), 'Path is the home page.');
     $this->drupalGet($this->nodePath);
-    $this->assertNoText(t('On front page.'), 'Path is not the front page.');
+    $this->assertNoText(t('On home page.'), 'Path is not the home page.');
 
-    // Change the front page to an invalid path.
+    // Change the home page to an invalid path.
     $edit = array('site_frontpage' => '/kittens');
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
     $this->assertText(t("The path '@path' is either invalid or you do not have access to it.", array('@path' => $edit['site_frontpage'])));
 
-    // Change the front page to a path without a starting slash.
+    // Change the home page to a path without a starting slash.
     $edit = ['site_frontpage' => $this->nodePath];
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
     $this->assertRaw(SafeMarkup::format("The path '%path' has to start with a slash.", ['%path' => $edit['site_frontpage']]));
 
-    // Change the front page to a valid path.
+    // Change the home page to a valid path.
     $edit['site_frontpage'] = '/' . $this->nodePath;
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
-    $this->assertText(t('The configuration options have been saved.'), 'The front page path has been saved.');
+    $this->assertText(t('The configuration options have been saved.'), 'The home page path has been saved.');
 
     $this->drupalGet('');
-    $this->assertText(t('On front page.'), 'Path is the front page.');
+    $this->assertText(t('On home page.'), 'Path is the home page.');
     $this->drupalGet('node');
-    $this->assertNoText(t('On front page.'), 'Path is not the front page.');
+    $this->assertNoText(t('On home page.'), 'Path is not the home page.');
     $this->drupalGet($this->nodePath);
-    $this->assertText(t('On front page.'), 'Path is the front page.');
+    $this->assertText(t('On home page.'), 'Path is the home page.');
   }
 
 }
diff --git a/core/modules/system/src/Tests/System/SiteMaintenanceTest.php b/core/modules/system/src/Tests/System/SiteMaintenanceTest.php
index fc14b2d..914533b 100644
--- a/core/modules/system/src/Tests/System/SiteMaintenanceTest.php
+++ b/core/modules/system/src/Tests/System/SiteMaintenanceTest.php
@@ -24,7 +24,7 @@ class SiteMaintenanceTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    // Configure 'node' as front page.
+    // Configure 'node' as home page.
     $this->config('system.site')->set('page.front', '/node')->save();
     $this->config('system.performance')->set('js.preprocess', 1)->save();
 
@@ -140,7 +140,7 @@ public function testNonHtmlRequest() {
     $formats = ['json', 'xml', 'non-existing'];
     foreach ($formats as $format) {
       $this->pass('Testing format ' . $format);
-      $this->drupalGet('<front>', ['query' => ['_format' => $format]]);
+      $this->drupalGet('<home>', ['query' => ['_format' => $format]]);
       $this->assertResponse(503);
       $this->assertRaw('Drupal is currently under maintenance. We should be back shortly. Thank you for your patience.');
       $this->assertHeader('Content-Type', 'text/plain; charset=UTF-8');
diff --git a/core/modules/system/src/Tests/Theme/FunctionsTest.php b/core/modules/system/src/Tests/Theme/FunctionsTest.php
index fa5a2ac..61f3e01 100644
--- a/core/modules/system/src/Tests/Theme/FunctionsTest.php
+++ b/core/modules/system/src/Tests/Theme/FunctionsTest.php
@@ -196,9 +196,9 @@ function testLinks() {
       'html text' => array(
         'title' => SafeMarkup::format('<span class="unescaped">@text</span>', array('@text' => 'potentially unsafe text that <should> be escaped')),
       ),
-      'front page' => array(
-        'title' => 'Front page',
-        'url' => Url::fromRoute('<front>'),
+      'home page' => array(
+        'title' => 'Home page',
+        'url' => Url::fromRoute('<home>'),
       ),
       'router-test' => array(
         'title' => 'Test route',
@@ -218,7 +218,7 @@ function testLinks() {
     $expected_links .= '<li class="a-link"><a href="' . Url::fromUri('base:a/link')->toString() . '">' . Html::escape('A <link>') . '</a></li>';
     $expected_links .= '<li class="plain-text">' . Html::escape('Plain "text"') . '</li>';
     $expected_links .= '<li class="html-text"><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
-    $expected_links .= '<li class="front-page"><a href="' . Url::fromRoute('<front>')->toString() . '">' . Html::escape('Front page') . '</a></li>';
+    $expected_links .= '<li class="front-page"><a href="' . Url::fromRoute('<home>')->toString() . '">' . Html::escape('Home page') . '</a></li>';
     $expected_links .= '<li class="router-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '">' . Html::escape('Test route') . '</a></li>';
     $query = array('key' => 'value');
     $expected_links .= '<li class="query-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1', $query) . '">' . Html::escape('Query test route') . '</a></li>';
@@ -258,7 +258,7 @@ function testLinks() {
     $expected_links .= '<li class="a-link"><a href="' . Url::fromUri('base:a/link')->toString() . '">' . Html::escape('A <link>') . '</a></li>';
     $expected_links .= '<li class="plain-text"><span class="a/class">' . Html::escape('Plain "text"') . '</span></li>';
     $expected_links .= '<li class="html-text"><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
-    $expected_links .= '<li class="front-page"><a href="' . Url::fromRoute('<front>')->toString() . '">' . Html::escape('Front page') . '</a></li>';
+    $expected_links .= '<li class="front-page"><a href="' . Url::fromRoute('<home>')->toString() . '">' . Html::escape('Home page') . '</a></li>';
     $expected_links .= '<li class="router-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '">' . Html::escape('Test route') . '</a></li>';
     $query = array('key' => 'value');
     $expected_links .= '<li class="query-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1', $query) . '">' . Html::escape('Query test route') . '</a></li>';
@@ -274,7 +274,7 @@ function testLinks() {
     $expected_links .= '<li class="a-link"><a href="' . Url::fromUri('base:a/link')->toString() . '">' . Html::escape('A <link>') . '</a></li>';
     $expected_links .= '<li class="plain-text"><span class="a/class">' . Html::escape('Plain "text"') . '</span></li>';
     $expected_links .= '<li class="html-text"><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
-    $expected_links .= '<li data-drupal-link-system-path="&lt;front&gt;" class="front-page"><a href="' . Url::fromRoute('<front>')->toString() . '" data-drupal-link-system-path="&lt;front&gt;">' . Html::escape('Front page') . '</a></li>';
+    $expected_links .= '<li data-drupal-link-system-path="&lt;front&gt;" class="front-page"><a href="' . Url::fromRoute('<home>')->toString() . '" data-drupal-link-system-path="&lt;front&gt;">' . Html::escape('Home page') . '</a></li>';
     $expected_links .= '<li data-drupal-link-system-path="router_test/test1" class="router-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '" data-drupal-link-system-path="router_test/test1">' . Html::escape('Test route') . '</a></li>';
     $query = array('key' => 'value');
     $encoded_query = Html::escape(Json::encode($query));
@@ -318,8 +318,8 @@ function testIndexedKeyedLinks() {
         'title' => SafeMarkup::format('<span class="unescaped">@text</span>', array('@text' => 'potentially unsafe text that <should> be escaped')),
       ),
       array(
-        'title' => 'Front page',
-        'url' => Url::fromRoute('<front>'),
+        'title' => 'Home page',
+        'url' => Url::fromRoute('<home>'),
       ),
       array(
         'title' => 'Test route',
@@ -339,7 +339,7 @@ function testIndexedKeyedLinks() {
     $expected_links .= '<li><a href="' . Url::fromUri('base:a/link')->toString() . '">' . Html::escape('A <link>') . '</a></li>';
     $expected_links .= '<li>' . Html::escape('Plain "text"') . '</li>';
     $expected_links .= '<li><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
-    $expected_links .= '<li><a href="' . Url::fromRoute('<front>')->toString() . '">' . Html::escape('Front page') . '</a></li>';
+    $expected_links .= '<li><a href="' . Url::fromRoute('<home>')->toString() . '">' . Html::escape('Home page') . '</a></li>';
     $expected_links .= '<li><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '">' . Html::escape('Test route') . '</a></li>';
     $query = ['key' => 'value'];
     $expected_links .= '<li><a href="' . \Drupal::urlGenerator()->generate('router_test.1', $query) . '">' . Html::escape('Query test route') . '</a></li>';
@@ -379,7 +379,7 @@ function testIndexedKeyedLinks() {
     $expected_links .= '<li><a href="' . Url::fromUri('base:a/link')->toString() . '">' . Html::escape('A <link>') . '</a></li>';
     $expected_links .= '<li><span class="a/class">' . Html::escape('Plain "text"') . '</span></li>';
     $expected_links .= '<li><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
-    $expected_links .= '<li><a href="' . Url::fromRoute('<front>')->toString() . '">' . Html::escape('Front page') . '</a></li>';
+    $expected_links .= '<li><a href="' . Url::fromRoute('<home>')->toString() . '">' . Html::escape('Home page') . '</a></li>';
     $expected_links .= '<li><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '">' . Html::escape('Test route') . '</a></li>';
     $query = ['key' => 'value'];
     $expected_links .= '<li><a href="' . \Drupal::urlGenerator()->generate('router_test.1', $query) . '">' . Html::escape('Query test route') . '</a></li>';
@@ -395,7 +395,7 @@ function testIndexedKeyedLinks() {
     $expected_links .= '<li><a href="' . Url::fromUri('base:a/link')->toString() . '">' . Html::escape('A <link>') . '</a></li>';
     $expected_links .= '<li><span class="a/class">' . Html::escape('Plain "text"') . '</span></li>';
     $expected_links .= '<li><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
-    $expected_links .= '<li data-drupal-link-system-path="&lt;front&gt;"><a href="' . Url::fromRoute('<front>')->toString() . '" data-drupal-link-system-path="&lt;front&gt;">' . Html::escape('Front page') . '</a></li>';
+    $expected_links .= '<li data-drupal-link-system-path="&lt;front&gt;"><a href="' . Url::fromRoute('<home>')->toString() . '" data-drupal-link-system-path="&lt;front&gt;">' . Html::escape('Home page') . '</a></li>';
     $expected_links .= '<li data-drupal-link-system-path="router_test/test1"><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '" data-drupal-link-system-path="router_test/test1">' . Html::escape('Test route') . '</a></li>';
     $query = ['key' => 'value'];
     $encoded_query = Html::escape(Json::encode($query));
diff --git a/core/modules/system/src/Tests/Theme/ThemeTest.php b/core/modules/system/src/Tests/Theme/ThemeTest.php
index afced8e..5b6f59a 100644
--- a/core/modules/system/src/Tests/Theme/ThemeTest.php
+++ b/core/modules/system/src/Tests/Theme/ThemeTest.php
@@ -80,7 +80,7 @@ function testThemeDataTypes() {
    * Test function theme_get_suggestions() for SA-CORE-2009-003.
    */
   function testThemeSuggestions() {
-    // Set the front page as something random otherwise the CLI
+    // Set the home page as something random otherwise the CLI
     // test runner fails.
     $this->config('system.site')->set('page.front', '/nobody-home')->save();
     $args = array('node', '1', 'edit');
@@ -140,11 +140,11 @@ public function testThemeOnNonHtmlRequest() {
   }
 
   /**
-   * Ensure page-front template suggestion is added when on front page.
+   * Ensure page-front template suggestion is added when on home page.
    */
   function testFrontPageThemeSuggestion() {
     // Set the current route to user.login because theme_get_suggestions() will
-    // query it to see if we are on the front page.
+    // query it to see if we are on the home page.
     $request = Request::create('/user/login');
     $request->attributes->set(RouteObjectInterface::ROUTE_NAME, 'user.login');
     $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('/user/login'));
@@ -153,7 +153,7 @@ function testFrontPageThemeSuggestion() {
     $suggestions = theme_get_suggestions(array('user', 'login'), 'page');
     // Set it back to not annoy the batch runner.
     \Drupal::requestStack()->pop();
-    $this->assertTrue(in_array('page__front', $suggestions), 'Front page template was suggested.');
+    $this->assertTrue(in_array('page__front', $suggestions), 'Home page template was suggested.');
   }
 
   /**
diff --git a/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php b/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php
index eb95fce..746753c 100644
--- a/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php
@@ -81,7 +81,7 @@ public function testUpdatedSite() {
     $this->assertText('drupal Spanish');
 
     // Make sure the custom block appears.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     // Block title.
     $this->assertText('Another block');
     // Block body.
diff --git a/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseTest.php b/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseTest.php
index a4f99e6..dce9c86 100644
--- a/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseTest.php
@@ -56,7 +56,7 @@ public function testDatabaseLoaded() {
 
     $this->runUpdates();
     $this->assertEqual(\Drupal::config('system.site')->get('name'), 'Site-Install');
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertText('Site-Install');
     $extensions = \Drupal::service('config.storage')->read('core.extension');
     $this->assertTrue(isset($extensions['theme']['stable']), 'Stable is installed after updating.');
diff --git a/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php b/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php
index 6edbfe3..b95e7a0 100644
--- a/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php
@@ -81,7 +81,7 @@ public function testUpdatedSite() {
     $this->assertText('drupal Spanish');
 
     // Make sure the custom block appears.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     // Block title.
     $this->assertText('Another block');
     // Block body.
diff --git a/core/modules/system/src/Tests/Update/UpdatePathTestBaseTest.php b/core/modules/system/src/Tests/Update/UpdatePathTestBaseTest.php
index efff986..f4a366c 100644
--- a/core/modules/system/src/Tests/Update/UpdatePathTestBaseTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatePathTestBaseTest.php
@@ -58,7 +58,7 @@ public function testDatabaseLoaded() {
     // be broken.
     $this->runUpdates();
     $this->assertEqual(\Drupal::config('system.site')->get('name'), 'Site-Install');
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertText('Site-Install');
 
     // Ensure that the database tasks have been run during set up. Neither MySQL
diff --git a/core/modules/system/src/Tests/Update/UpdatePathWithBrokenRoutingTest.php b/core/modules/system/src/Tests/Update/UpdatePathWithBrokenRoutingTest.php
index e710a4e..a06acde 100644
--- a/core/modules/system/src/Tests/Update/UpdatePathWithBrokenRoutingTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatePathWithBrokenRoutingTest.php
@@ -23,11 +23,11 @@ protected function setDatabaseDumpFiles() {
    * Tests running update.php with some form of broken routing.
    */
   public function testWithBrokenRouting() {
-    // Simulate a broken router, and make sure the front page is
+    // Simulate a broken router, and make sure the home page is
     // inaccessible.
     \Drupal::state()->set('update_script_test_broken_inbound', TRUE);
     \Drupal::service('cache_tags.invalidator')->invalidateTags(['route_match', 'rendered']);
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertResponse(500);
 
     // The exceptions are expected. Do not interpret them as a test failure.
@@ -43,9 +43,9 @@ public function testWithBrokenRouting() {
     $this->runUpdates();
 
     // Remove the simulation of the broken router, and make sure we can get to
-    // the front page again.
+    // the home page again.
     \Drupal::state()->set('update_script_test_broken_inbound', FALSE);
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertResponse(200);
   }
 
diff --git a/core/modules/system/src/Tests/Update/UpdateScriptTest.php b/core/modules/system/src/Tests/Update/UpdateScriptTest.php
index b80ef82..5bc9048 100644
--- a/core/modules/system/src/Tests/Update/UpdateScriptTest.php
+++ b/core/modules/system/src/Tests/Update/UpdateScriptTest.php
@@ -168,7 +168,7 @@ function testNoUpdateFunctionality() {
     $this->assertText(t('No pending updates.'));
     $this->assertNoLink('Administration pages');
     $this->assertNoLinkByHrefInMainRegion('update.php', 0);
-    $this->clickLink('Front page');
+    $this->clickLink('Home page');
     $this->assertResponse(200);
 
     // Click through update.php with 'access administration pages' permission.
@@ -321,8 +321,8 @@ protected function updateScriptTest($maintenance_mode) {
     $this->assertNoLinkByHrefInMainRegion('update.php', 0);
     $this->assertNoLink('logged');
 
-    // Verify the front page can be visited following the upgrade.
-    $this->clickLink('Front page');
+    // Verify the home page can be visited following the upgrade.
+    $this->clickLink('Home page');
     $this->assertResponse(200);
   }
 
diff --git a/core/modules/system/system.links.menu.yml b/core/modules/system/system.links.menu.yml
index b5f9d87..11a6a22 100644
--- a/core/modules/system/system.links.menu.yml
+++ b/core/modules/system/system.links.menu.yml
@@ -115,7 +115,7 @@ system.admin_config_system:
 system.site_information_settings:
   title: 'Basic site settings'
   parent: system.admin_config_system
-  description: 'Change site name, email address, slogan, default front page, and error pages.'
+  description: 'Change site name, email address, slogan, default home page, and error pages.'
   route_name: system.site_information_settings
   weight: -20
 system.cron_settings:
diff --git a/core/modules/system/system.routing.yml b/core/modules/system/system.routing.yml
index ae89fb0..0497d19 100644
--- a/core/modules/system/system.routing.yml
+++ b/core/modules/system/system.routing.yml
@@ -383,7 +383,7 @@ system.theme_settings_theme:
   requirements:
     _permission: 'administer themes'
 
-'<front>':
+'<home>':
   path: '/'
   defaults:
     _title: Home
diff --git a/core/modules/system/system.tokens.inc b/core/modules/system/system.tokens.inc
index 66b5c7f..8324c4d 100644
--- a/core/modules/system/system.tokens.inc
+++ b/core/modules/system/system.tokens.inc
@@ -38,11 +38,11 @@ function system_token_info() {
   );
   $site['url'] = array(
     'name' => t("URL"),
-    'description' => t("The URL of the site's front page."),
+    'description' => t("The URL of the site's home page."),
   );
   $site['url-brief'] = array(
     'name' => t("URL (brief)"),
-    'description' => t("The URL of the site's front page without the protocol."),
+    'description' => t("The URL of the site's home page without the protocol."),
   );
   $site['login-url'] = array(
     'name' => t("Login page"),
@@ -129,14 +129,14 @@ function system_tokens($type, $tokens, array $data, array $options, BubbleableMe
 
         case 'url':
           /** @var \Drupal\Core\GeneratedUrl $result */
-          $result = \Drupal::url('<front>', array(), $url_options, TRUE);
+          $result = \Drupal::url('<home>', array(), $url_options, TRUE);
           $bubbleable_metadata->addCacheableDependency($result);
           $replacements[$original] = $result->getGeneratedUrl();
           break;
 
         case 'url-brief':
           /** @var \Drupal\Core\GeneratedUrl $result */
-          $result = \Drupal::url('<front>', array(), $url_options, TRUE);
+          $result = \Drupal::url('<home>', array(), $url_options, TRUE);
           $bubbleable_metadata->addCacheableDependency($result);
           $replacements[$original] = preg_replace(array('!^https?://!', '!/$!'), '', $result->getGeneratedUrl());
           break;
diff --git a/core/modules/system/templates/block--system-branding-block.html.twig b/core/modules/system/templates/block--system-branding-block.html.twig
index 2a98687..a2f5d81 100644
--- a/core/modules/system/templates/block--system-branding-block.html.twig
+++ b/core/modules/system/templates/block--system-branding-block.html.twig
@@ -17,12 +17,12 @@
 #}
 {% block content %}
   {% if site_logo %}
-    <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home">
+    <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home">
       <img src="{{ site_logo }}" alt="{{ 'Home'|t }}" />
     </a>
   {% endif %}
   {% if site_name %}
-    <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
+    <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
   {% endif %}
   {{ site_slogan }}
 {% endblock %}
diff --git a/core/modules/system/templates/page.html.twig b/core/modules/system/templates/page.html.twig
index 032b724..d55bc59 100644
--- a/core/modules/system/templates/page.html.twig
+++ b/core/modules/system/templates/page.html.twig
@@ -11,14 +11,14 @@
  * General utility variables:
  * - base_path: The base URL path of the Drupal installation. Will usually be
  *   "/" unless you have installed Drupal in a sub-directory.
- * - is_front: A flag indicating if the current page is the front page.
+ * - is_front: A flag indicating if the current page is the home page.
  * - logged_in: A flag indicating if the user is registered and signed in.
  * - is_admin: A flag indicating if the user has permission to access
  *   administration pages.
  *
  * Site identity:
- * - front_page: The URL of the front page. Use this instead of base_path when
- *   linking to the front page. This includes the language domain or prefix.
+ * - front_page: The URL of the home page. Use this instead of base_path when
+ *   linking to the home page. This includes the language domain or prefix.
  *
  * Page content (in order of occurrence in the default page.html.twig):
  * - messages: Status and error messages. Should be displayed prominently.
diff --git a/core/modules/system/tests/fixtures/update/drupal-8.block-content-uninstall.php b/core/modules/system/tests/fixtures/update/drupal-8.block-content-uninstall.php
index 7c2ca94..43d7bc7 100644
--- a/core/modules/system/tests/fixtures/update/drupal-8.block-content-uninstall.php
+++ b/core/modules/system/tests/fixtures/update/drupal-8.block-content-uninstall.php
@@ -107,7 +107,7 @@
 $connection->update('key_value')
   ->condition('collection', 'state')
   ->condition('name', 'routing.non_admin_routes')
-  ->fields(['value' => 'a:79:{i:0;s:27:"block.category_autocomplete";i:1;s:24:"entity.comment.edit_form";i:2;s:15:"comment.approve";i:3;s:24:"entity.comment.canonical";i:4;s:26:"entity.comment.delete_form";i:5;s:13:"comment.reply";i:6;s:31:"comment.new_comments_node_links";i:7;s:21:"comment.node_redirect";i:8;s:17:"contact.site_page";i:9;s:22:"contact.site_page_form";i:10;s:24:"entity.user.contact_form";i:11;s:17:"contextual.render";i:12;s:17:"editor.filter_xss";i:13;s:31:"editor.field_untransformed_text";i:14;s:19:"editor.image_dialog";i:15;s:18:"editor.link_dialog";i:16;s:18:"file.ajax_progress";i:17;s:15:"filter.tips_all";i:18;s:11:"filter.tips";i:19;s:26:"history.get_last_node_view";i:20;s:17:"history.read_node";i:21;s:18:"image.style_public";i:22;s:19:"image.style_private";i:23;s:13:"node.add_page";i:24;s:8:"node.add";i:25;s:19:"entity.node.preview";i:26;s:27:"entity.node.version_history";i:27;s:20:"entity.node.revision";i:28;s:28:"node.revision_revert_confirm";i:29;s:28:"node.revision_delete_confirm";i:30;s:18:"quickedit.metadata";i:31;s:21:"quickedit.attachments";i:32;s:20:"quickedit.field_form";i:33;s:21:"quickedit.entity_save";i:34;s:11:"search.view";i:35;s:23:"search.view_node_search";i:36;s:23:"search.help_node_search";i:37;s:23:"search.view_user_search";i:38;s:23:"search.help_user_search";i:39;s:19:"shortcut.set_switch";i:40;s:11:"system.ajax";i:41;s:10:"system.401";i:42;s:10:"system.403";i:43;s:10:"system.404";i:44;s:11:"system.cron";i:45;s:33:"system.machine_name_transliterate";i:46;s:12:"system.files";i:47;s:28:"system.private_file_download";i:48;s:16:"system.temporary";i:49;s:7:"<front>";i:50;s:6:"<none>";i:51;s:9:"<current>";i:52;s:15:"system.timezone";i:53;s:22:"system.batch_page.html";i:54;s:22:"system.batch_page.json";i:55;s:16:"system.db_update";i:56;s:26:"system.entity_autocomplete";i:57;s:30:"entity.taxonomy_term.edit_form";i:58;s:32:"entity.taxonomy_term.delete_form";i:59;s:16:"toolbar.subtrees";i:60;s:13:"user.register";i:61;s:11:"user.logout";i:62;s:9:"user.pass";i:63;s:9:"user.page";i:64;s:10:"user.login";i:65;s:19:"user.cancel_confirm";i:66;s:10:"user.reset";i:67;s:21:"view.frontpage.feed_1";i:68;s:21:"view.frontpage.page_1";i:69;s:25:"view.taxonomy_term.feed_1";i:70;s:25:"view.taxonomy_term.page_1";i:71;s:10:"views.ajax";i:72;s:21:"entity.node.canonical";i:73;s:23:"entity.node.delete_form";i:74;s:21:"entity.node.edit_form";i:75;s:21:"entity.user.canonical";i:76;s:21:"entity.user.edit_form";i:77;s:23:"entity.user.cancel_form";i:78;s:30:"entity.taxonomy_term.canonical";}'])
+  ->fields(['value' => 'a:79:{i:0;s:27:"block.category_autocomplete";i:1;s:24:"entity.comment.edit_form";i:2;s:15:"comment.approve";i:3;s:24:"entity.comment.canonical";i:4;s:26:"entity.comment.delete_form";i:5;s:13:"comment.reply";i:6;s:31:"comment.new_comments_node_links";i:7;s:21:"comment.node_redirect";i:8;s:17:"contact.site_page";i:9;s:22:"contact.site_page_form";i:10;s:24:"entity.user.contact_form";i:11;s:17:"contextual.render";i:12;s:17:"editor.filter_xss";i:13;s:31:"editor.field_untransformed_text";i:14;s:19:"editor.image_dialog";i:15;s:18:"editor.link_dialog";i:16;s:18:"file.ajax_progress";i:17;s:15:"filter.tips_all";i:18;s:11:"filter.tips";i:19;s:26:"history.get_last_node_view";i:20;s:17:"history.read_node";i:21;s:18:"image.style_public";i:22;s:19:"image.style_private";i:23;s:13:"node.add_page";i:24;s:8:"node.add";i:25;s:19:"entity.node.preview";i:26;s:27:"entity.node.version_history";i:27;s:20:"entity.node.revision";i:28;s:28:"node.revision_revert_confirm";i:29;s:28:"node.revision_delete_confirm";i:30;s:18:"quickedit.metadata";i:31;s:21:"quickedit.attachments";i:32;s:20:"quickedit.field_form";i:33;s:21:"quickedit.entity_save";i:34;s:11:"search.view";i:35;s:23:"search.view_node_search";i:36;s:23:"search.help_node_search";i:37;s:23:"search.view_user_search";i:38;s:23:"search.help_user_search";i:39;s:19:"shortcut.set_switch";i:40;s:11:"system.ajax";i:41;s:10:"system.401";i:42;s:10:"system.403";i:43;s:10:"system.404";i:44;s:11:"system.cron";i:45;s:33:"system.machine_name_transliterate";i:46;s:12:"system.files";i:47;s:28:"system.private_file_download";i:48;s:16:"system.temporary";i:49;s:7:"<home>";i:50;s:6:"<none>";i:51;s:9:"<current>";i:52;s:15:"system.timezone";i:53;s:22:"system.batch_page.html";i:54;s:22:"system.batch_page.json";i:55;s:16:"system.db_update";i:56;s:26:"system.entity_autocomplete";i:57;s:30:"entity.taxonomy_term.edit_form";i:58;s:32:"entity.taxonomy_term.delete_form";i:59;s:16:"toolbar.subtrees";i:60;s:13:"user.register";i:61;s:11:"user.logout";i:62;s:9:"user.pass";i:63;s:9:"user.page";i:64;s:10:"user.login";i:65;s:19:"user.cancel_confirm";i:66;s:10:"user.reset";i:67;s:21:"view.frontpage.feed_1";i:68;s:21:"view.frontpage.page_1";i:69;s:25:"view.taxonomy_term.feed_1";i:70;s:25:"view.taxonomy_term.page_1";i:71;s:10:"views.ajax";i:72;s:21:"entity.node.canonical";i:73;s:23:"entity.node.delete_form";i:74;s:21:"entity.node.edit_form";i:75;s:21:"entity.user.canonical";i:76;s:21:"entity.user.edit_form";i:77;s:23:"entity.user.cancel_form";i:78;s:30:"entity.taxonomy_term.canonical";}'])
   ->execute();
 $connection->update('key_value')
   ->condition('collection', 'state')
diff --git a/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php b/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php
index b618f0a..d4f8c1a 100644
--- a/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php
+++ b/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php
@@ -30,7 +30,7 @@ public static function dialogContents() {
       'cancel' => array(
         '#type' => 'link',
         '#title' => 'Cancel',
-        '#url' => Url::fromRoute('<front>'),
+        '#url' => Url::fromRoute('<home>'),
         '#attributes' => array(
           // This is a special class to which JavaScript assigns dialog closing
           // behavior.
diff --git a/core/modules/system/tests/modules/entity_test/src/EntityTestDeleteForm.php b/core/modules/system/tests/modules/entity_test/src/EntityTestDeleteForm.php
index 0c24456..fbd319c 100644
--- a/core/modules/system/tests/modules/entity_test/src/EntityTestDeleteForm.php
+++ b/core/modules/system/tests/modules/entity_test/src/EntityTestDeleteForm.php
@@ -14,7 +14,7 @@ class EntityTestDeleteForm extends ContentEntityDeleteForm {
    * {@inheritdoc}
    */
   public function getCancelUrl() {
-    return new Url('<front>');
+    return new Url('<home>');
   }
 
 }
diff --git a/core/modules/system/tests/modules/entity_test_operation/entity_test_operation.module b/core/modules/system/tests/modules/entity_test_operation/entity_test_operation.module
index 2b050ea..74a7892 100644
--- a/core/modules/system/tests/modules/entity_test_operation/entity_test_operation.module
+++ b/core/modules/system/tests/modules/entity_test_operation/entity_test_operation.module
@@ -14,8 +14,8 @@
 function entity_test_operation_entity_operation(EntityInterface $entity) {
   return [
     'test' => [
-      'title' => t('Front page'),
-      'url' => Url::fromRoute('<front>'),
+      'title' => t('Home page'),
+      'url' => Url::fromRoute('<home>'),
       'weight' => 0,
     ],
   ];
diff --git a/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php b/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php
index d35c59d..9475cb0 100644
--- a/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php
+++ b/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php
@@ -67,7 +67,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     drupal_set_message($this->t('The ConfirmFormTestForm::submitForm() method was used for this form.'));
-    $form_state->setRedirect('<front>');
+    $form_state->setRedirect('<home>');
   }
 
 }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
index 948c592..04d9b63 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
@@ -139,7 +139,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if ($form_state->has(['thing', 'changed'])) {
       drupal_set_message("The thing has been changed.");
     }
-    $form_state->setRedirect('<front>');
+    $form_state->setRedirect('<home>');
   }
 
 }
diff --git a/core/modules/system/tests/modules/system_test/system_test.module b/core/modules/system/tests/modules/system_test/system_test.module
index 04fa2da..eff69ef 100644
--- a/core/modules/system/tests/modules/system_test/system_test.module
+++ b/core/modules/system/tests/modules/system_test/system_test.module
@@ -90,7 +90,7 @@ function system_test_page_attachments(array &$page) {
   // \Drupal::service('path.matcher')->isFrontPage().
   $frontpage = \Drupal::state()->get('system_test.front_page_output') ?: 0;
   if ($frontpage && \Drupal::service('path.matcher')->isFrontPage()) {
-    drupal_set_message(t('On front page.'));
+    drupal_set_message(t('On home page.'));
   }
 }
 
diff --git a/core/modules/system/tests/modules/test_page_test/test_page_test.links.menu.yml b/core/modules/system/tests/modules/test_page_test/test_page_test.links.menu.yml
index 1150688..643cf63 100644
--- a/core/modules/system/tests/modules/test_page_test/test_page_test.links.menu.yml
+++ b/core/modules/system/tests/modules/test_page_test/test_page_test.links.menu.yml
@@ -1,8 +1,8 @@
 test_page_test.test_page:
   route_name: test_page_test.test_page
-  title: 'Test front page link'
+  title: 'Test home page link'
   weight: 0
 test_page_test.front_page:
   title: 'Home'
-  route_name: '<front>'
+  route_name: '<home>'
   menu_name: main
diff --git a/core/modules/system/tests/modules/test_page_test/test_page_test.routing.yml b/core/modules/system/tests/modules/test_page_test/test_page_test.routing.yml
index cbcf6d8..ac95ed5 100644
--- a/core/modules/system/tests/modules/test_page_test/test_page_test.routing.yml
+++ b/core/modules/system/tests/modules/test_page_test/test_page_test.routing.yml
@@ -1,7 +1,7 @@
 test_page_test.test_page:
   path: '/test-page'
   defaults:
-    _title: 'Test front page'
+    _title: 'Test home page'
     _controller: '\Drupal\test_page_test\Controller\TestPageTestController::testPage'
   requirements:
     _access: 'TRUE'
diff --git a/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php b/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php
index 040cf1a..56d6608 100644
--- a/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php
+++ b/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php
@@ -102,8 +102,8 @@ public function testSystemSiteTokenReplacement() {
     $tests['[site:name]'] = Html::escape($config->get('name'));
     $tests['[site:slogan]'] = $safe_slogan;
     $tests['[site:mail]'] = $config->get('mail');
-    $tests['[site:url]'] = \Drupal::url('<front>', [], $url_options);
-    $tests['[site:url-brief]'] = preg_replace(array('!^https?://!', '!/$!'), '', \Drupal::url('<front>', [], $url_options));
+    $tests['[site:url]'] = \Drupal::url('<home>', [], $url_options);
+    $tests['[site:url-brief]'] = preg_replace(array('!^https?://!', '!/$!'), '', \Drupal::url('<home>', [], $url_options));
     $tests['[site:login-url]'] = \Drupal::url('user.page', [], $url_options);
 
     $base_bubbleable_metadata = new BubbleableMetadata();
diff --git a/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php b/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
index eb095a7..81accfc 100644
--- a/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
+++ b/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
@@ -158,7 +158,7 @@ public function testBuildWithOnePathElement() {
       ->will($this->returnValue('/example'));
 
     $breadcrumb = $this->builder->build($this->getMock('Drupal\Core\Routing\RouteMatchInterface'));
-    $this->assertEquals([0 => new Link('Home', new Url('<front>'))], $breadcrumb->getLinks());
+    $this->assertEquals([0 => new Link('Home', new Url('<home>'))], $breadcrumb->getLinks());
     $this->assertEquals(['url.path.parent'], $breadcrumb->getCacheContexts());
     $this->assertEquals([], $breadcrumb->getCacheTags());
     $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
@@ -193,7 +193,7 @@ public function testBuildWithTwoPathElements() {
     $this->setupAccessManagerToAllow();
 
     $breadcrumb = $this->builder->build($this->getMock('Drupal\Core\Routing\RouteMatchInterface'));
-    $this->assertEquals([0 => new Link('Home', new Url('<front>')), 1 => new Link('Example', new Url('example'))], $breadcrumb->getLinks());
+    $this->assertEquals([0 => new Link('Home', new Url('<home>')), 1 => new Link('Example', new Url('example'))], $breadcrumb->getLinks());
     $this->assertEquals(['url.path.parent', 'user.permissions'], $breadcrumb->getCacheContexts());
     $this->assertEquals([], $breadcrumb->getCacheTags());
     $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
@@ -241,7 +241,7 @@ public function testBuildWithThreePathElements() {
       );
     $breadcrumb = $this->builder->build($this->getMock('Drupal\Core\Routing\RouteMatchInterface'));
     $this->assertEquals([
-      new Link('Home', new Url('<front>')),
+      new Link('Home', new Url('<home>')),
       new Link('Example', new Url('example')),
       new Link('Bar', new Url('example_bar')),
     ], $breadcrumb->getLinks());
@@ -271,7 +271,7 @@ public function testBuildWithException($exception_class, $exception_argument) {
     $breadcrumb = $this->builder->build($this->getMock('Drupal\Core\Routing\RouteMatchInterface'));
 
     // No path matched, though at least the frontpage is displayed.
-    $this->assertEquals([0 => new Link('Home', new Url('<front>'))], $breadcrumb->getLinks());
+    $this->assertEquals([0 => new Link('Home', new Url('<home>'))], $breadcrumb->getLinks());
     $this->assertEquals(['url.path.parent'], $breadcrumb->getCacheContexts());
     $this->assertEquals([], $breadcrumb->getCacheTags());
     $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
@@ -315,7 +315,7 @@ public function testBuildWithNonProcessedPath() {
     $breadcrumb = $this->builder->build($this->getMock('Drupal\Core\Routing\RouteMatchInterface'));
 
     // No path matched, though at least the frontpage is displayed.
-    $this->assertEquals([0 => new Link('Home', new Url('<front>'))], $breadcrumb->getLinks());
+    $this->assertEquals([0 => new Link('Home', new Url('<home>'))], $breadcrumb->getLinks());
     $this->assertEquals(['url.path.parent'], $breadcrumb->getCacheContexts());
     $this->assertEquals([], $breadcrumb->getCacheTags());
     $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
@@ -363,7 +363,7 @@ public function testBuildWithUserPath() {
       ->will($this->returnValue('Admin'));
 
     $breadcrumb = $this->builder->build($this->getMock('Drupal\Core\Routing\RouteMatchInterface'));
-    $this->assertEquals([0 => new Link('Home', new Url('<front>')), 1 => new Link('Admin', new Url('user_page'))], $breadcrumb->getLinks());
+    $this->assertEquals([0 => new Link('Home', new Url('<home>')), 1 => new Link('Admin', new Url('user_page'))], $breadcrumb->getLinks());
     $this->assertEquals(['url.path.parent', 'user.permissions'], $breadcrumb->getCacheContexts());
     $this->assertEquals([], $breadcrumb->getCacheTags());
     $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
diff --git a/core/modules/taxonomy/src/TermBreadcrumbBuilder.php b/core/modules/taxonomy/src/TermBreadcrumbBuilder.php
index 838011d..f38fa6d 100644
--- a/core/modules/taxonomy/src/TermBreadcrumbBuilder.php
+++ b/core/modules/taxonomy/src/TermBreadcrumbBuilder.php
@@ -53,7 +53,7 @@ public function applies(RouteMatchInterface $route_match) {
    */
   public function build(RouteMatchInterface $route_match) {
     $breadcrumb = new Breadcrumb();
-    $breadcrumb->addLink(Link::createFromRoute($this->t('Home'), '<front>'));
+    $breadcrumb->addLink(Link::createFromRoute($this->t('Home'), '<home>'));
     $term = $route_match->getParameter('taxonomy_term');
     // Breadcrumb needs to have terms cacheable metadata as a cacheable
     // dependency even though it is not shown in the breadcrumb because e.g. its
diff --git a/core/modules/taxonomy/src/Tests/TermTranslationTest.php b/core/modules/taxonomy/src/Tests/TermTranslationTest.php
index 91b13b1..aaa4468 100644
--- a/core/modules/taxonomy/src/Tests/TermTranslationTest.php
+++ b/core/modules/taxonomy/src/Tests/TermTranslationTest.php
@@ -55,7 +55,7 @@ protected function setUp() {
    */
   public function testTranslatedBreadcrumbs() {
     // Ensure non-translated breadcrumb is correct.
-    $breadcrumb = array(Url::fromRoute('<front>')->toString() => 'Home');
+    $breadcrumb = array(Url::fromRoute('<home>')->toString() => 'Home');
     foreach ($this->terms as $term) {
       $breadcrumb[$term->url()] = $term->label();
     }
@@ -69,7 +69,7 @@ public function testTranslatedBreadcrumbs() {
     $languages = \Drupal::languageManager()->getLanguages();
 
     // Construct the expected translated breadcrumb.
-    $breadcrumb = array(Url::fromRoute('<front>', [], ['language' => $languages[$this->translateToLangcode]])->toString() => 'Home');
+    $breadcrumb = array(Url::fromRoute('<home>', [], ['language' => $languages[$this->translateToLangcode]])->toString() => 'Home');
     foreach ($this->terms as $term) {
       $translated = $term->getTranslation($this->translateToLangcode);
       $url = $translated->url('canonical', ['language' => $languages[$this->translateToLangcode]]);
diff --git a/core/modules/toolbar/src/Element/ToolbarItem.php b/core/modules/toolbar/src/Element/ToolbarItem.php
index e39295f..ce987a1 100644
--- a/core/modules/toolbar/src/Element/ToolbarItem.php
+++ b/core/modules/toolbar/src/Element/ToolbarItem.php
@@ -26,7 +26,7 @@ public function getInfo() {
       'tab' => array(
         '#type' => 'link',
         '#title' => NULL,
-        '#url' => Url::fromRoute('<front>'),
+        '#url' => Url::fromRoute('<home>'),
       ),
     );
   }
diff --git a/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php b/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php
index 56b9d69..f06b518 100644
--- a/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php
+++ b/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php
@@ -387,7 +387,7 @@ public function testExternalLink() {
     $this->assertText('External URL');
 
     // Assert that the new menu link is shown in the toolbar on a regular page.
-    $this->drupalGet(Url::fromRoute('<front>'));
+    $this->drupalGet(Url::fromRoute('<home>'));
     $this->assertText('External URL');
     // Ensure the description is escaped as expected.
     $this->assertRaw('title="External URL &amp; escaped"');
diff --git a/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module b/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module
index 4a82ca7..d282f54 100644
--- a/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module
+++ b/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module
@@ -17,7 +17,7 @@ function toolbar_test_toolbar() {
     'tab' => array(
       '#type' => 'link',
       '#title' => t('Test tab'),
-      '#url' => Url::fromRoute('<front>'),
+      '#url' => Url::fromRoute('<home>'),
       '#options' => array(
         'attributes' => array(
           'id' => 'toolbar-tab-testing',
@@ -33,9 +33,9 @@ function toolbar_test_toolbar() {
       'content' => array(
         '#theme' => 'item_list',
         '#items' => array(
-          \Drupal::l(t('link 1'), new Url('<front>', [], array('attributes' => array('title' => 'Test link 1 title')))),
-          \Drupal::l(t('link 2'), new Url('<front>', [], array('attributes' => array('title' => 'Test link 2 title')))),
-          \Drupal::l(t('link 3'), new Url('<front>', [], array('attributes' => array('title' => 'Test link 3 title')))),
+          \Drupal::l(t('link 1'), new Url('<home>', [], array('attributes' => array('title' => 'Test link 1 title')))),
+          \Drupal::l(t('link 2'), new Url('<home>', [], array('attributes' => array('title' => 'Test link 2 title')))),
+          \Drupal::l(t('link 3'), new Url('<home>', [], array('attributes' => array('title' => 'Test link 3 title')))),
         ),
         '#attributes' => array(
           'class' => array('toolbar-menu'),
diff --git a/core/modules/toolbar/tests/src/FunctionalJavascript/ToolbarIntegrationTest.php b/core/modules/toolbar/tests/src/FunctionalJavascript/ToolbarIntegrationTest.php
index c3b3d9a..daf9202 100644
--- a/core/modules/toolbar/tests/src/FunctionalJavascript/ToolbarIntegrationTest.php
+++ b/core/modules/toolbar/tests/src/FunctionalJavascript/ToolbarIntegrationTest.php
@@ -27,7 +27,7 @@ public function testToolbarToggling() {
     ]);
     $this->drupalLogin($admin_user);
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $page = $this->getSession()->getPage();
 
     // Test that it is possible to toggle the toolbar tray.
diff --git a/core/modules/toolbar/toolbar.api.php b/core/modules/toolbar/toolbar.api.php
index b2d0409..f2ea78f 100644
--- a/core/modules/toolbar/toolbar.api.php
+++ b/core/modules/toolbar/toolbar.api.php
@@ -74,7 +74,7 @@ function hook_toolbar() {
     'tab' => array(
       '#type' => 'link',
       '#title' => t('Home'),
-      '#url' => Url::fromRoute('<front>'),
+      '#url' => Url::fromRoute('<home>'),
       '#options' => array(
         'attributes' => array(
           'title' => t('Home page'),
diff --git a/core/modules/toolbar/toolbar.module b/core/modules/toolbar/toolbar.module
index 281f3ab..3079ab8 100644
--- a/core/modules/toolbar/toolbar.module
+++ b/core/modules/toolbar/toolbar.module
@@ -141,7 +141,7 @@ function toolbar_toolbar() {
     'tab' => array(
       '#type' => 'link',
       '#title' => t('Back to site'),
-      '#url' => Url::fromRoute('<front>'),
+      '#url' => Url::fromRoute('<home>'),
       '#attributes' => array(
         'title' => t('Return to site content'),
         'class' => array('toolbar-icon', 'toolbar-icon-escape-admin'),
@@ -330,7 +330,7 @@ function _toolbar_do_get_rendered_subtrees(array $data) {
     else {
       $output = '';
     }
-    // Many routes have dots as route name, while some special ones like <front>
+    // Many routes have dots as route name, while some special ones like <home>
     // have <> characters in them.
     $url = $link->getUrlObject();
     $id = str_replace(array('.', '<', '>'), array('-', '', '' ), $url->isRouted() ? $url->getRouteName() : $url->getUri());
diff --git a/core/modules/tour/src/Tests/TourTest.php b/core/modules/tour/src/Tests/TourTest.php
index 78304c6..728dab1 100644
--- a/core/modules/tour/src/Tests/TourTest.php
+++ b/core/modules/tour/src/Tests/TourTest.php
@@ -66,7 +66,7 @@ public function testTourFunctionality() {
     $elements = $this->xpath('//li[@data-id=:data_id and @class=:classes and ./p//a[@href=:href and contains(., :text)]]', array(
       ':classes' => 'tip-module-tour-test tip-type-text tip-tour-test-1',
       ':data_id' => 'tour-test-1',
-      ':href' => \Drupal::url('<front>', [], ['absolute' => TRUE]),
+      ':href' => \Drupal::url('<home>', [], ['absolute' => TRUE]),
       ':text' => 'Drupal',
     ));
     $this->assertEqual(count($elements), 1, 'Found Token replacement.');
diff --git a/core/modules/user/src/Controller/UserController.php b/core/modules/user/src/Controller/UserController.php
index 779cf90..26c3286 100644
--- a/core/modules/user/src/Controller/UserController.php
+++ b/core/modules/user/src/Controller/UserController.php
@@ -127,7 +127,7 @@ public function resetPass(Request $request, $uid, $timestamp, $hash) {
           // Invalid one-time link specifies an unknown user.
           drupal_set_message($this->t('The one-time login link you clicked is invalid.'), 'error');
         }
-        return $this->redirect('<front>');
+        return $this->redirect('<home>');
       }
     }
 
@@ -279,7 +279,7 @@ public function userTitle(UserInterface $user = NULL) {
    */
   public function logout() {
     user_logout();
-    return $this->redirect('<front>');
+    return $this->redirect('<home>');
   }
 
   /**
@@ -310,7 +310,7 @@ public function confirmCancel(UserInterface $user, $timestamp = 0, $hashed_pass
         );
         user_cancel($edit, $user->id(), $account_data['cancel_method']);
         // Since user_cancel() is not invoked via Form API, batch processing
-        // needs to be invoked manually and should redirect to the front page
+        // needs to be invoked manually and should redirect to the home page
         // after completion.
         return batch_process('');
       }
diff --git a/core/modules/user/src/EventSubscriber/MaintenanceModeSubscriber.php b/core/modules/user/src/EventSubscriber/MaintenanceModeSubscriber.php
index 3ba847b..82607a5 100644
--- a/core/modules/user/src/EventSubscriber/MaintenanceModeSubscriber.php
+++ b/core/modules/user/src/EventSubscriber/MaintenanceModeSubscriber.php
@@ -58,7 +58,7 @@ public function onKernelRequestMaintenance(GetResponseEvent $event) {
       if ($this->account->isAuthenticated() && !$this->maintenanceMode->exempt($this->account)) {
         user_logout();
         // Redirect to homepage.
-        $event->setResponse($this->redirect($this->url('<front>')));
+        $event->setResponse($this->redirect($this->url('<home>')));
       }
     }
   }
diff --git a/core/modules/user/src/RegisterForm.php b/core/modules/user/src/RegisterForm.php
index 9bc047b..dbe6ccf 100644
--- a/core/modules/user/src/RegisterForm.php
+++ b/core/modules/user/src/RegisterForm.php
@@ -108,7 +108,7 @@ public function save(array $form, FormStateInterface $form_state) {
       _user_mail_notify('register_no_approval_required', $account);
       user_login_finalize($account);
       drupal_set_message($this->t('Registration successful. You are now logged in.'));
-      $form_state->setRedirect('<front>');
+      $form_state->setRedirect('<home>');
     }
     // No administrator approval required.
     elseif ($account->isActive() || $notify) {
@@ -123,7 +123,7 @@ public function save(array $form, FormStateInterface $form_state) {
           }
           else {
             drupal_set_message($this->t('A welcome message with further instructions has been sent to your email address.'));
-            $form_state->setRedirect('<front>');
+            $form_state->setRedirect('<home>');
           }
         }
       }
@@ -132,7 +132,7 @@ public function save(array $form, FormStateInterface $form_state) {
     else {
       _user_mail_notify('register_pending_approval', $account);
       drupal_set_message($this->t('Thank you for applying for an account. Your account is currently pending approval by the site administrator.<br />In the meantime, a welcome message with further instructions has been sent to your email address.'));
-      $form_state->setRedirect('<front>');
+      $form_state->setRedirect('<home>');
     }
   }
 
diff --git a/core/modules/user/src/Tests/UserAccountLinksTest.php b/core/modules/user/src/Tests/UserAccountLinksTest.php
index 6d7d723..a45fd64 100644
--- a/core/modules/user/src/Tests/UserAccountLinksTest.php
+++ b/core/modules/user/src/Tests/UserAccountLinksTest.php
@@ -37,7 +37,7 @@ function testSecondaryMenu() {
 
     // Log in and get the homepage.
     $this->drupalLogin($user);
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
 
     // For a logged-in user, expect the secondary menu to have links for "My
     // account" and "Log out".
@@ -57,7 +57,7 @@ function testSecondaryMenu() {
 
     // Log out and get the homepage.
     $this->drupalLogout();
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
 
     // For a logged-out user, expect the secondary menu to have a "Log in" link.
     $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', array(
@@ -96,7 +96,7 @@ function testDisabledAccountLink() {
     $this->drupalPostForm('admin/structure/menu/manage/account', $edit, t('Save'));
 
     // Get the homepage.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
 
     // Verify that the 'My account' link does not appear when disabled.
     $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', array(
diff --git a/core/modules/views/src/Plugin/views/field/FieldPluginBase.php b/core/modules/views/src/Plugin/views/field/FieldPluginBase.php
index 5c9fc66..4dcd6df 100644
--- a/core/modules/views/src/Plugin/views/field/FieldPluginBase.php
+++ b/core/modules/views/src/Plugin/views/field/FieldPluginBase.php
@@ -1370,16 +1370,16 @@ protected function renderAsLink($alter, $text, $tokens) {
     ];
 
     $path = $alter['path'];
-    // strip_tags() and viewsTokenReplace remove <front>, so check whether it's
+    // strip_tags() and viewsTokenReplace remove <home>, so check whether it's
     // different to front.
-    if ($path != '<front>') {
+    if ($path != '<home>') {
       // Use strip_tags as there should never be HTML in the path.
       // However, we need to preserve special characters like " that were
       // removed by Html::escape().
       $path = Html::decodeEntities($this->viewsTokenReplace($alter['path'], $tokens));
 
-      // Tokens might contain <front>, so check for <front> again.
-      if ($path != '<front>') {
+      // Tokens might contain <home>, so check for <home> again.
+      if ($path != '<home>') {
         $path = strip_tags($path);
       }
 
diff --git a/core/modules/views/src/Tests/Handler/FieldWebTest.php b/core/modules/views/src/Tests/Handler/FieldWebTest.php
index e852069..f27505c 100644
--- a/core/modules/views/src/Tests/Handler/FieldWebTest.php
+++ b/core/modules/views/src/Tests/Handler/FieldWebTest.php
@@ -265,8 +265,8 @@ public function testAlterUrl() {
       });
       $this->assertSubString(Html::decodeEntities($result), Html::decodeEntities($expected_result));
 
-      $expected_result = \Drupal::url('<front>', [], ['absolute' => $absolute]);
-      $alter['path'] = '<front>';
+      $expected_result = \Drupal::url('<home>', [], ['absolute' => $absolute]);
+      $alter['path'] = '<home>';
       $result = $renderer->executeInRenderContext(new RenderContext(), function () use ($id_field, $row) {
         return $id_field->theme($row);
       });
diff --git a/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php b/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php
index d31f457..b9753d1 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php
@@ -78,7 +78,7 @@ public function testFeedOutput() {
     $view->save();
     // Test the feed display adds a feed icon to the block display.
     $this->drupalPlaceBlock('views_block:test_display_feed-test');
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $feed_icon = $this->cssSelect('div.view-id-test_display_feed a.feed-icon');
     $this->assertTrue(strpos($feed_icon[0]['href'], 'test-feed-display.xml'), 'The feed icon was found.');
 
diff --git a/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php b/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php
index acb3af8..9fbd8a0 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php
@@ -111,7 +111,7 @@ public function testPageDisplayMenu() {
     $admin_user = $this->drupalCreateUser(['administer menu']);
     $this->drupalLogin($admin_user);
     $this->drupalPlaceBlock('system_menu_block:tools');
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
 
     $menu_link = $this->cssSelect('nav.block-menu ul.menu a');
     $this->assertEqual((string) $menu_link[0], 'Test menu link');
@@ -121,7 +121,7 @@ public function testPageDisplayMenu() {
       'title' => 'New title',
     ], t('Save'));
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $menu_link = $this->cssSelect('nav.block-menu ul.menu a');
     $this->assertEqual((string) $menu_link[0], 'New title');
   }
diff --git a/core/modules/views/src/Tests/Plugin/DisplayTest.php b/core/modules/views/src/Tests/Plugin/DisplayTest.php
index 3bbfd66..c5e0db0 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayTest.php
@@ -288,7 +288,7 @@ public function testInvalidDisplayPlugins() {
     // Place the block display.
     $block = $this->drupalPlaceBlock('views_block:test_display_invalid-block_1', array('label' => 'Invalid display'));
 
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertResponse(200);
     $this->assertBlockAppears($block);
 
@@ -299,7 +299,7 @@ public function testInvalidDisplayPlugins() {
 
     // Test the page is still displayed, the block not present, and has the
     // plugin warning message.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertResponse(200);
     $this->assertText('The &quot;invalid&quot; plugin does not exist.');
     $this->assertNoBlockAppears($block);
diff --git a/core/modules/views/src/Tests/Plugin/StyleSummaryTest.php b/core/modules/views/src/Tests/Plugin/StyleSummaryTest.php
index cbd569c..c01931d 100644
--- a/core/modules/views/src/Tests/Plugin/StyleSummaryTest.php
+++ b/core/modules/views/src/Tests/Plugin/StyleSummaryTest.php
@@ -127,7 +127,7 @@ public function testSummaryView() {
     $this->assertEqual(2, count($entries));
 
     // Set base_path to an unknown path and test that the links lead to the
-    // front page.
+    // home page.
     $edit = [
       'options[summary][options][unformatted_summary][base_path]' => 'unknown-path',
     ];
diff --git a/core/modules/views/src/Tests/RenderCacheWebTest.php b/core/modules/views/src/Tests/RenderCacheWebTest.php
index fcd38b7..8f35d09 100644
--- a/core/modules/views/src/Tests/RenderCacheWebTest.php
+++ b/core/modules/views/src/Tests/RenderCacheWebTest.php
@@ -56,7 +56,7 @@ protected function setUp($import_test_views = TRUE) {
    * Tests rendering caching of a views block with arguments.
    */
   public function testEmptyView() {
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
     $this->assertEqual([], $this->cssSelect('div.region-header div.views-field-title'));
 
     $this->drupalGet($this->nodes[0]->toUrl());
diff --git a/core/modules/views/src/Tests/Wizard/MenuTest.php b/core/modules/views/src/Tests/Wizard/MenuTest.php
index 552ff50..11cf71d 100644
--- a/core/modules/views/src/Tests/Wizard/MenuTest.php
+++ b/core/modules/views/src/Tests/Wizard/MenuTest.php
@@ -31,7 +31,7 @@ function testMenus() {
     $view['page[link_properties][title]'] = $this->randomMachineName(16);
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
 
-    // Make sure there is a link to the view from the front page (where we
+    // Make sure there is a link to the view from the home page (where we
     // expect the main menu to display).
     $this->drupalGet('');
     $this->assertResponse(200);
diff --git a/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php b/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php
index 0b33a58..4f4089a 100644
--- a/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php
@@ -280,9 +280,9 @@ public function providerTestRenderTrimmedWithMoreLinkAndPath() {
     // Query specified as part of the path.
     $data[] = ['test-path?foo=bar', '/test-path?foo=bar'];
     // Empty path.
-    $data[] = ['', '/%3Cfront%3E'];
-    // Front page path.
-    $data[] = ['<front>', '/%3Cfront%3E'];
+    $data[] = ['', '/%3Chome%3E'];
+    // Home page path.
+    $data[] = ['<home>', '/%3Chome%3E'];
 
     // External URL.
     $data[] = ['https://www.drupal.org', 'https://www.drupal.org'];
diff --git a/core/modules/views/views.theme.inc b/core/modules/views/views.theme.inc
index 94c519e..feb694d 100644
--- a/core/modules/views/views.theme.inc
+++ b/core/modules/views/views.theme.inc
@@ -297,8 +297,8 @@ function template_preprocess_views_view_summary(&$variables) {
         $url->setRouteParameters($parameters);
       }
       catch (Exception $e) {
-        // If the given route doesn't exist, default to <front>
-        $url = Url::fromRoute('<front>');
+        // If the given route doesn't exist, default to <home>
+        $url = Url::fromRoute('<home>');
       }
     }
     else {
@@ -383,8 +383,8 @@ function template_preprocess_views_view_summary_unformatted(&$variables) {
         $url->setRouteParameters($parameters);
       }
       catch (Exception $e) {
-        // If the given route doesn't exist, default to <front>
-        $url = Url::fromRoute('<front>');
+        // If the given route doesn't exist, default to <home>
+        $url = Url::fromRoute('<home>');
       }
     }
     else {
@@ -873,7 +873,7 @@ function template_preprocess_views_view_rss(&$variables) {
     // just use $base_url.
     $url_string = $url->setOptions($url_options)->toString();
     if ($url_string === Url::fromUserInput($config->get('page.front'))->toString()) {
-      $url_string = Url::fromRoute('<front>')->setAbsolute()->toString();
+      $url_string = Url::fromRoute('<home>')->setAbsolute()->toString();
     }
 
     $variables['link'] = $url_string;
diff --git a/core/modules/views_ui/src/Tests/DefaultViewsTest.php b/core/modules/views_ui/src/Tests/DefaultViewsTest.php
index 08fcae8..b23d49e 100644
--- a/core/modules/views_ui/src/Tests/DefaultViewsTest.php
+++ b/core/modules/views_ui/src/Tests/DefaultViewsTest.php
@@ -35,7 +35,7 @@ function testDefaultViews() {
     // page).
     $edit_href = 'admin/structure/views/view/glossary';
     $this->drupalGet('admin/structure/views');
-    // @todo Disabled default views do now appear on the front page. Test this
+    // @todo Disabled default views do now appear on the home page. Test this
     // behavior with templates instead.
     // $this->assertNoLinkByHref($edit_href);
 
diff --git a/core/profiles/standard/config/install/core.base_field_override.node.page.promote.yml b/core/profiles/standard/config/install/core.base_field_override.node.page.promote.yml
index 27226a1..fcafc74 100644
--- a/core/profiles/standard/config/install/core.base_field_override.node.page.promote.yml
+++ b/core/profiles/standard/config/install/core.base_field_override.node.page.promote.yml
@@ -7,7 +7,7 @@ id: node.page.promote
 field_name: promote
 entity_type: node
 bundle: page
-label: 'Promoted to front page'
+label: 'Promoted to home page'
 description: ''
 required: false
 translatable: false
diff --git a/core/profiles/standard/standard.install b/core/profiles/standard/standard.install
index 0a40ce6..de0767a 100644
--- a/core/profiles/standard/standard.install
+++ b/core/profiles/standard/standard.install
@@ -17,7 +17,7 @@
  * @see system_install()
  */
 function standard_install() {
-  // Set front page to "node".
+  // Set home page to "node".
   \Drupal::configFactory()->getEditable('system.site')->set('page.front', '/node')->save(TRUE);
 
   // Allow visitor account creation with administrative approval.
diff --git a/core/profiles/standard/standard.links.menu.yml b/core/profiles/standard/standard.links.menu.yml
index 2278b21..9d4851d 100644
--- a/core/profiles/standard/standard.links.menu.yml
+++ b/core/profiles/standard/standard.links.menu.yml
@@ -1,4 +1,4 @@
 standard.front_page:
   title: 'Home'
-  route_name: '<front>'
+  route_name: '<home>'
   menu_name: main
diff --git a/core/profiles/standard/tests/src/Functional/StandardTest.php b/core/profiles/standard/tests/src/Functional/StandardTest.php
index 4f9e756..bd1188e 100644
--- a/core/profiles/standard/tests/src/Functional/StandardTest.php
+++ b/core/profiles/standard/tests/src/Functional/StandardTest.php
@@ -77,7 +77,7 @@ function testStandard() {
     $this->drupalLogout();
     $this->assertText('Main navigation');
 
-    // Ensure comments don't show in the front page RSS feed.
+    // Ensure comments don't show in the home page RSS feed.
     // Create an article.
     $this->drupalCreateNode(array(
       'type' => 'article',
@@ -183,7 +183,7 @@ function testStandard() {
     $this->drupalGet($url);
     $this->assertEqual('UNCACHEABLE', $this->drupalGetHeader(DynamicPageCacheSubscriber::HEADER), 'Site-wide contact page cannot be cached by Dynamic Page Cache.');
 
-    $url = Url::fromRoute('<front>');
+    $url = Url::fromRoute('<home>');
     $this->drupalGet($url);
     $this->drupalGet($url);
     $this->assertEqual('HIT', $this->drupalGetHeader(DynamicPageCacheSubscriber::HEADER), 'Frontpage is cached by Dynamic Page Cache.');
diff --git a/core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php b/core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php
index e02e0df..964a631 100644
--- a/core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php
+++ b/core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php
@@ -27,9 +27,9 @@ protected function setUp() {
     $this->drupalLogin($account);
 
     $menu_link_content = MenuLinkContent::create([
-      'title' => 'Link to front page',
+      'title' => 'Link to home page',
       'menu_name' => 'tools',
-      'link' => ['uri' => 'route:<front>'],
+      'link' => ['uri' => 'route:<home>'],
     ]);
     $menu_link_content->save();
 
@@ -44,16 +44,16 @@ protected function setUp() {
    * be valid.
    */
   public function testSessionExpiration() {
-    // Visit the front page and click the link back to the front page a large
+    // Visit the home page and click the link back to the home page a large
     // number of times.
-    $this->drupalGet('<front>');
+    $this->drupalGet('<home>');
 
     $session_assert = $this->assertSession();
 
     $page = $this->getSession()->getPage();
 
     for ($i = 0; $i < 25; $i++) {
-      $page->clickLink('Link to front page');
+      $page->clickLink('Link to home page');
       $session_assert->statusCodeEquals(200);
     }
   }
diff --git a/core/tests/Drupal/KernelTests/Core/Menu/MenuTreeStorageTest.php b/core/tests/Drupal/KernelTests/Core/Menu/MenuTreeStorageTest.php
index cb1d74d..14915a4 100644
--- a/core/tests/Drupal/KernelTests/Core/Menu/MenuTreeStorageTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Menu/MenuTreeStorageTest.php
@@ -179,7 +179,7 @@ public function testMenuDisabledChildLinks() {
     $this->addMenuLink('test1', '');
     $this->assertMenuLink('test1', array('has_children' => 0, 'depth' => 1));
 
-    $this->addMenuLink('test2', 'test1', '<front>', array(), 'tools', array('enabled' => 0));
+    $this->addMenuLink('test2', 'test1', '<home>', array(), 'tools', array('enabled' => 0));
     // The 1st link does not have any visible children, so has_children is 0.
     $this->assertMenuLink('test1', array('has_children' => 0, 'depth' => 1));
     $this->assertMenuLink('test2', array('has_children' => 0, 'depth' => 2, 'enabled' => 0), array('test1'));
@@ -198,7 +198,7 @@ public function testMenuDisabledChildLinks() {
     // ------- test7
     // -------- test8
     // --------- test9
-    $this->addMenuLink('footerA', '', '<front>', array(), 'footer');
+    $this->addMenuLink('footerA', '', '<home>', array(), 'footer');
     $visible_children = array();
     for ($i = 3; $i <= $this->treeStorage->maxDepth(); $i++) {
       $parent = $i - 1;
diff --git a/core/tests/Drupal/KernelTests/Core/Render/Element/RenderElementTypesTest.php b/core/tests/Drupal/KernelTests/Core/Render/Element/RenderElementTypesTest.php
index 3e11695..99ea4d5 100644
--- a/core/tests/Drupal/KernelTests/Core/Render/Element/RenderElementTypesTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Render/Element/RenderElementTypesTest.php
@@ -178,12 +178,12 @@ function testMoreLink() {
         'expected' => '//div[@class="more-link"]/a[@href="' . Url::fromRoute('system.admin_content')->setAbsolute()->toString() . '" and text()="More"]',
       ),
       array(
-        'name' => "#type 'more_link' anchor tag to the front page",
+        'name' => "#type 'more_link' anchor tag to the home page",
         'value' => array(
           '#type' => 'more_link',
-          '#url' => Url::fromRoute('<front>'),
+          '#url' => Url::fromRoute('<home>'),
         ),
-        'expected' => '//div[@class="more-link"]/a[@href="' . Url::fromRoute('<front>')->toString() . '" and text()="More"]',
+        'expected' => '//div[@class="more-link"]/a[@href="' . Url::fromRoute('<home>')->toString() . '" and text()="More"]',
       ),
     );
 
diff --git a/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteNoneTest.php b/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteNoneTest.php
index 2b59933..46166c2 100644
--- a/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteNoneTest.php
+++ b/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteNoneTest.php
@@ -57,7 +57,7 @@ public function testProcessOutbound() {
       'SERVER_NAME' => 'http://www.example.com',
     ];
     $request = Request::create('/subdir', 'GET', [], [], [], $server);
-    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<front>');
+    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<home>');
     $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('/'));
 
     $request_stack->push($request);
@@ -91,7 +91,7 @@ public function testProcessOutbound() {
       'SERVER_NAME' => 'http://www.example.com',
     ];
     $request = Request::create('/', 'GET', [], [], [], $server);
-    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<front>');
+    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<home>');
     $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('/'));
 
     $request_stack->push($request);
diff --git a/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteProcessorCurrentIntegrationTest.php b/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteProcessorCurrentIntegrationTest.php
index ea6a9c2..40e7801 100644
--- a/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteProcessorCurrentIntegrationTest.php
+++ b/core/tests/Drupal/KernelTests/Core/RouteProcessor/RouteProcessorCurrentIntegrationTest.php
@@ -58,7 +58,7 @@ public function testProcessOutbound() {
       'SERVER_NAME' => 'http://www.example.com',
     ];
     $request = Request::create('/subdir/', 'GET', [], [], [], $server);
-    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<front>');
+    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<home>');
     $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('/'));
 
     $request_stack->push($request);
@@ -88,7 +88,7 @@ public function testProcessOutbound() {
       'SERVER_NAME' => 'http://www.example.com',
     ];
     $request = Request::create('/', 'GET', [], [], [], $server);
-    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<front>');
+    $request->attributes->set(RouteObjectInterface::ROUTE_NAME, '<home>');
     $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('/'));
 
     $request_stack->push($request);
diff --git a/core/tests/Drupal/Tests/BrowserTestBase.php b/core/tests/Drupal/Tests/BrowserTestBase.php
index 74a0635..5b25b36 100644
--- a/core/tests/Drupal/Tests/BrowserTestBase.php
+++ b/core/tests/Drupal/Tests/BrowserTestBase.php
@@ -377,7 +377,7 @@ protected function initMink() {
     // the cookie domain is equal to the domain of the active document. When the
     // browser starts up the active document is not our domain but 'about:blank'
     // or similar. To be able to set our User-Agent and Xdebug cookies at the
-    // start of the test we now do a request to the front page so the active
+    // start of the test we now do a request to the home page so the active
     // document matches the domain.
     // @see https://w3c.github.io/webdriver/webdriver-spec.html#add-cookie
     // @see https://www.w3.org/Bugs/Public/show_bug.cgi?id=20975
@@ -681,7 +681,7 @@ protected function buildUrl($path, array $options = array()) {
         return Url::fromUri($path, $options)->toString();
       }
       else {
-        $uri = $path === '<front>' ? 'base:/' : 'base:/' . $path;
+        $uri = $path === '<home>' ? 'base:/' : 'base:/' . $path;
         // Path processing is needed for language prefixing.  Skip it when a
         // path that may look like an external URL is being used as internal.
         $options['path_processing'] = !$force_internal;
diff --git a/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php b/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php
index 87ab75f..4249890 100644
--- a/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php
@@ -379,7 +379,7 @@ public static function providerTestIsExternal() {
       array('?q=foo:bar', FALSE),
       array('node/edit:me', FALSE),
       array('/drupal.org', FALSE),
-      array('<front>', FALSE),
+      array('<home>', FALSE),
     );
   }
 
diff --git a/core/tests/Drupal/Tests/Core/Breadcrumb/BreadcrumbTest.php b/core/tests/Drupal/Tests/Core/Breadcrumb/BreadcrumbTest.php
index ca8acfc..43164d9 100644
--- a/core/tests/Drupal/Tests/Core/Breadcrumb/BreadcrumbTest.php
+++ b/core/tests/Drupal/Tests/Core/Breadcrumb/BreadcrumbTest.php
@@ -20,7 +20,7 @@ class BreadcrumbTest extends UnitTestCase {
    */
   public function testSetLinks() {
     $breadcrumb = new Breadcrumb();
-    $breadcrumb->setLinks([new Link('Home', Url::fromRoute('<front>'))]);
+    $breadcrumb->setLinks([new Link('Home', Url::fromRoute('<home>'))]);
     $breadcrumb->setLinks([new Link('None', Url::fromRoute('<none>'))]);
   }
 
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php
index 0597e8c..2d0aada 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php
@@ -61,7 +61,7 @@ public function providerTestSetLinkActiveClass() {
     // class is set: all possible situations that can be encountered.
     $situations = array();
 
-    // Situations with context: front page, English, no query.
+    // Situations with context: home page, English, no query.
     $context = array(
       'path' => 'myfrontpage',
       'front' => TRUE,
@@ -87,7 +87,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'en', 'data-drupal-link-query' => TRUE));
     // Special matching path, plus all variations.
     $attributes = array(
-      'data-drupal-link-system-path' => '<front>',
+      'data-drupal-link-system-path' => '<home>',
     );
     $situations[] = array('context' => $context, 'is active' => TRUE, 'attributes' => $attributes);
     $situations[] = array('context' => $context, 'is active' => TRUE, 'attributes' => $attributes + array('hreflang' => 'en'));
@@ -100,7 +100,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'en', 'data-drupal-link-query' => ""));
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'en', 'data-drupal-link-query' => TRUE));
 
-    // Situations with context: non-front page, Dutch, no query.
+    // Situations with context: non-home page, Dutch, no query.
     $context = array(
       'path' => 'llama',
       'front' => FALSE,
@@ -124,7 +124,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => TRUE));
     // Special non-matching path, plus all variations.
     $attributes = array(
-      'data-drupal-link-system-path' => '<front>',
+      'data-drupal-link-system-path' => '<home>',
     );
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes);
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'en'));
@@ -135,7 +135,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => ""));
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => TRUE));
 
-    // Situations with context: non-front page, Dutch, with query.
+    // Situations with context: non-home page, Dutch, with query.
     $context = array(
       'path' => 'llama',
       'front' => FALSE,
@@ -157,7 +157,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => TRUE));
     // Special non-matching path, plus all variations.
     $attributes = array(
-      'data-drupal-link-system-path' => '<front>',
+      'data-drupal-link-system-path' => '<home>',
     );
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes);
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl'));
@@ -166,7 +166,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => ""));
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => TRUE));
 
-    // Situations with context: non-front page, Dutch, with query.
+    // Situations with context: non-home page, Dutch, with query.
     $context = array(
       'path' => 'llama',
       'front' => FALSE,
@@ -190,7 +190,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => TRUE));
     // Special non-matching path, plus all variations.
     $attributes = array(
-      'data-drupal-link-system-path' => '<front>',
+      'data-drupal-link-system-path' => '<home>',
     );
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes);
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl'));
@@ -201,7 +201,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => ""));
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'nl', 'data-drupal-link-query' => TRUE));
 
-    // Situations with context: front page, English, query.
+    // Situations with context: home page, English, query.
     $context = array(
       'path' => 'myfrontpage',
       'front' => TRUE,
@@ -225,7 +225,7 @@ public function providerTestSetLinkActiveClass() {
     $situations[] = array('context' => $context, 'is active' => FALSE, 'attributes' => $attributes + array('hreflang' => 'en', 'data-drupal-link-query' => TRUE));
     // Special matching path, plus all variations.
     $attributes = array(
-      'data-drupal-link-system-path' => '<front>',
+      'data-drupal-link-system-path' => '<home>',
       'data-drupal-link-query' => Json::encode(array('foo' => 'bar')),
     );
     $situations[] = array('context' => $context, 'is active' => TRUE, 'attributes' => $attributes);
@@ -296,10 +296,10 @@ public function providerTestSetLinkActiveClass() {
     ];
 
     // Test cases to verify that the 'is-active' class is added when on the
-    // front page, and there are two different kinds of matching links on the
+    // home page, and there are two different kinds of matching links on the
     // page:
-    // - the matching path (the resolved front page path)
-    // - the special matching path ('<front>')
+    // - the matching path (the resolved home page path)
+    // - the special matching path ('<home>')
     $front_special_link = '<a data-drupal-link-system-path="&lt;front&gt;">Front</a>';
     $front_special_link_active = '<a data-drupal-link-system-path="&lt;front&gt;" class="is-active">Front</a>';
     $front_path_link = '<a data-drupal-link-system-path="myfrontpage">Front Path</a>';
@@ -321,11 +321,11 @@ public function providerTestSetLinkActiveClass() {
       5 => $front_special_link_active . ' ' . $front_path_link_active,
     ];
 
-    // Test cases to verify that links to the front page do not get the
-    // 'is-active' class when not on the front page.
+    // Test cases to verify that links to the home page do not get the
+    // 'is-active' class when not on the home page.
     $other_link = '<a data-drupal-link-system-path="otherpage">Other page</a>';
     $other_link_active = '<a data-drupal-link-system-path="otherpage" class="is-active">Other page</a>';
-    $data['<front>-and-other-link-on-other-path'] = [
+    $data['<home>-and-other-link-on-other-path'] = [
       0 => $front_special_link . ' ' . $other_link,
       1 => 'otherpage',
       2 => FALSE,
@@ -341,7 +341,7 @@ public function providerTestSetLinkActiveClass() {
       4 => [],
       5 => $front_path_link . ' ' . $other_link_active,
     ];
-    $data['other-and-<front>-link-on-other-path'] = [
+    $data['other-and-<home>-link-on-other-path'] = [
       0 => $other_link . ' ' . $front_special_link,
       1 => 'otherpage',
       2 => FALSE,
@@ -368,8 +368,8 @@ public function providerTestSetLinkActiveClass() {
    * @param string $current_path
    *   The system path of the currently active page.
    * @param bool $is_front
-   *   Whether the current page is the front page (which implies the current
-   *   path might also be <front>).
+   *   Whether the current page is the home page (which implies the current
+   *   path might also be <home>).
    * @param string $url_language
    *   The language code of the current URL.
    * @param array $query
diff --git a/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php b/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php
index b456654..9efecb7 100644
--- a/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php
+++ b/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php
@@ -87,8 +87,8 @@ public function getMatchPathData() {
         ),
       ),
       array(
-        // Single paths with '<front>'.
-        "<front>",
+        // Single paths with '<home>'.
+        "<home>",
         array(
           '/dummy' => TRUE,
           "/dummy/" => FALSE,
@@ -98,8 +98,8 @@ public function getMatchPathData() {
         ),
       ),
       array(
-        // Paths with both '<front>' and wildcards (should not work).
-        "<front>/*",
+        // Paths with both '<home>' and wildcards (should not work).
+        "<home>/*",
         array(
           '/dummy' => FALSE,
           '/dummy/' => FALSE,
@@ -135,7 +135,7 @@ public function getMatchPathData() {
       ),
       array(
         // Multiple paths with the \r\n delimiter.
-        "/test\r\n<front>",
+        "/test\r\n<home>",
         array(
           '/test' => TRUE,
           '/dummy' => TRUE,
diff --git a/core/tests/Drupal/Tests/Core/Path/PathValidatorTest.php b/core/tests/Drupal/Tests/Core/Path/PathValidatorTest.php
index 2bfb1c9..0e8c2d3 100644
--- a/core/tests/Drupal/Tests/Core/Path/PathValidatorTest.php
+++ b/core/tests/Drupal/Tests/Core/Path/PathValidatorTest.php
@@ -73,7 +73,7 @@ public function testIsValidWithFrontpage() {
     $this->accessAwareRouter->expects($this->never())
       ->method('match');
 
-    $this->assertTrue($this->pathValidator->isValid('<front>'));
+    $this->assertTrue($this->pathValidator->isValid('<home>'));
   }
 
   /**
@@ -405,13 +405,13 @@ public function testGetUrlIfValidWithoutAccess() {
   }
 
   /**
-   * Tests the getUrlIfValid() method with a front page + query + fragments.
+   * Tests the getUrlIfValid() method with a home page + query + fragments.
    *
    * @covers ::getUrlIfValid
    */
   public function testGetUrlIfValidWithFrontPageAndQueryAndFragments() {
-    $url = $this->pathValidator->getUrlIfValid('<front>?hei=sen#berg');
-    $this->assertEquals('<front>', $url->getRouteName());
+    $url = $this->pathValidator->getUrlIfValid('<home>?hei=sen#berg');
+    $this->assertEquals('<home>', $url->getRouteName());
     $this->assertEquals(['hei' => 'sen'], $url->getOptions()['query']);
     $this->assertEquals('berg', $url->getOptions()['fragment']);
   }
diff --git a/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php b/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php
index 4076f1e..e61eae7 100644
--- a/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php
+++ b/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php
@@ -9,7 +9,7 @@
 use Symfony\Component\HttpFoundation\Request;
 
 /**
- * Test front page path processing.
+ * Test home page path processing.
  *
  * @group PathProcessor
  * @coversDefaultClass \Drupal\Core\PathProcessor\PathProcessorFront
@@ -77,8 +77,8 @@ public function testProcessOutbound($path, $expected) {
    */
   public function providerProcessOutbound() {
     return [
-      ['/<front>', '/'],
-      ['<front>', '<front>'],
+      ['/<home>', '/'],
+      ['<home>', '<home>'],
       ['/user', '/user'],
     ];
   }
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/TableSelectTest.php b/core/tests/Drupal/Tests/Core/Render/Element/TableSelectTest.php
index ead47e4..3d7e2c9 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/TableSelectTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/TableSelectTest.php
@@ -30,7 +30,7 @@ public function testProcessTableselectWithLinkTitle() {
     $element['#value'] = 0;
 
     $element['#options'][] = [
-      'title' => new Link('my-text', Url::fromRoute('<front>'))
+      'title' => new Link('my-text', Url::fromRoute('<home>'))
     ];
 
     $element['#attributes'] = [];
diff --git a/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php b/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php
index 06e8c17..a7d9b9c 100644
--- a/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php
@@ -183,7 +183,7 @@ public function aliasManagerCallback() {
         return '/hello/world';
       case '/test/two/5':
         return '/goodbye/cruel/world';
-      case '/<front>':
+      case '/<home>':
         return '/';
       default:
         return $args[0];
diff --git a/core/tests/Drupal/Tests/Core/UrlTest.php b/core/tests/Drupal/Tests/Core/UrlTest.php
index 5324c26..a4ec5a3 100644
--- a/core/tests/Drupal/Tests/Core/UrlTest.php
+++ b/core/tests/Drupal/Tests/Core/UrlTest.php
@@ -170,13 +170,13 @@ protected function getRequestConstraint($path) {
   }
 
   /**
-   * Tests the fromRoute() method with the special <front> path.
+   * Tests the fromRoute() method with the special <home> path.
    *
    * @covers ::fromRoute
    */
   public function testFromRouteFront() {
-    $url = Url::fromRoute('<front>');
-    $this->assertSame('<front>', $url->getRouteName());
+    $url = Url::fromRoute('<home>');
+    $this->assertSame('<home>', $url->getRouteName());
   }
 
   /**
@@ -653,7 +653,7 @@ public function testToUriStringForInternal($uri, $options, $uri_string) {
       ->method('getUrlIfValidWithoutAccessCheck')
       ->willReturnMap([
         ['test-entity/1', $url],
-        ['<front>', Url::fromRoute('<front>')],
+        ['<home>', Url::fromRoute('<home>')],
         ['<none>', Url::fromRoute('<none>')],
       ]);
     $url = Url::fromUri($uri, $options);
@@ -671,11 +671,11 @@ public function providerTestToUriStringForInternal() {
       ['internal:/test-entity/1', ['fragment' => 'top', 'query' => ['page' => '2']], 'route:entity.test_entity.canonical;test_entity=1?page=2#top'],
       ['internal:/test-entity/1?page=2#top', [], 'route:entity.test_entity.canonical;test_entity=1?page=2#top'],
 
-      // The four permutations of the special '<front>' path.
-      ['internal:/', [], 'route:<front>'],
-      ['internal:/', ['fragment' => 'top'], 'route:<front>#top'],
-      ['internal:/', ['fragment' => 'top', 'query' => ['page' => '2']], 'route:<front>?page=2#top'],
-      ['internal:/?page=2#top', [], 'route:<front>?page=2#top'],
+      // The four permutations of the special '<home>' path.
+      ['internal:/', [], 'route:<home>'],
+      ['internal:/', ['fragment' => 'top'], 'route:<home>#top'],
+      ['internal:/', ['fragment' => 'top', 'query' => ['page' => '2']], 'route:<home>?page=2#top'],
+      ['internal:/?page=2#top', [], 'route:<home>?page=2#top'],
 
       // The four permutations of the special '<none>' path.
       ['internal:', [], 'route:<none>'],
diff --git a/core/themes/bartik/templates/block--system-branding-block.html.twig b/core/themes/bartik/templates/block--system-branding-block.html.twig
index 9bf4f3d..cd7d782 100644
--- a/core/themes/bartik/templates/block--system-branding-block.html.twig
+++ b/core/themes/bartik/templates/block--system-branding-block.html.twig
@@ -16,7 +16,7 @@
 {% set attributes = attributes.addClass('site-branding') %}
 {% block content %}
   {% if site_logo %}
-    <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home" class="site-branding__logo">
+    <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home" class="site-branding__logo">
       <img src="{{ site_logo }}" alt="{{ 'Home'|t }}" />
     </a>
   {% endif %}
@@ -24,7 +24,7 @@
     <div class="site-branding__text">
       {% if site_name %}
         <div class="site-branding__name">
-          <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
+          <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
         </div>
       {% endif %}
       {% if site_slogan %}
diff --git a/core/themes/bartik/templates/node.html.twig b/core/themes/bartik/templates/node.html.twig
index b257ad3..295e89c 100644
--- a/core/themes/bartik/templates/node.html.twig
+++ b/core/themes/bartik/templates/node.html.twig
@@ -38,7 +38,7 @@
  *     teaser would result in: "node--view-mode-teaser", and
  *     full: "node--view-mode-full".
  *   The following are controlled through the node publishing options.
- *   - node--promoted: Appears on nodes promoted to the front page.
+ *   - node--promoted: Appears on nodes promoted to the home page.
  *   - node--sticky: Appears on nodes ordered above other non-sticky nodes in
  *     teaser listings.
  *   - node--unpublished: Appears on unpublished nodes visible only to site
diff --git a/core/themes/bartik/templates/page.html.twig b/core/themes/bartik/templates/page.html.twig
index 023204f..8fff702 100644
--- a/core/themes/bartik/templates/page.html.twig
+++ b/core/themes/bartik/templates/page.html.twig
@@ -12,14 +12,14 @@
  * General utility variables:
  * - base_path: The base URL path of the Drupal installation. Will usually be
  *   "/" unless you have installed Drupal in a sub-directory.
- * - is_front: A flag indicating if the current page is the front page.
+ * - is_front: A flag indicating if the current page is the home page.
  * - logged_in: A flag indicating if the user is registered and signed in.
  * - is_admin: A flag indicating if the user has permission to access
  *   administration pages.
  *
  * Site identity:
- * - front_page: The URL of the front page. Use this instead of base_path when
- *   linking to the front page. This includes the language domain or prefix.
+ * - front_page: The URL of the home page. Use this instead of base_path when
+ *   linking to the home page. This includes the language domain or prefix.
  *
  * Page content (in order of occurrence in the default page.html.twig):
  * - node: Fully loaded node, if there is an automatically-loaded node
diff --git a/core/themes/classy/templates/block/block--system-branding-block.html.twig b/core/themes/classy/templates/block/block--system-branding-block.html.twig
index 7c3b7de..c0117c2 100644
--- a/core/themes/classy/templates/block/block--system-branding-block.html.twig
+++ b/core/themes/classy/templates/block/block--system-branding-block.html.twig
@@ -15,13 +15,13 @@
 #}
 {% block content %}
   {% if site_logo %}
-    <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home" class="site-logo">
+    <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home" class="site-logo">
       <img src="{{ site_logo }}" alt="{{ 'Home'|t }}" />
     </a>
   {% endif %}
   {% if site_name %}
     <div class="site-name">
-      <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
+      <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
     </div>
   {% endif %}
   {% if site_slogan %}
diff --git a/core/themes/classy/templates/content/node.html.twig b/core/themes/classy/templates/content/node.html.twig
index 7f99e79..1865a0f 100644
--- a/core/themes/classy/templates/content/node.html.twig
+++ b/core/themes/classy/templates/content/node.html.twig
@@ -38,7 +38,7 @@
  *     teaser would result in: "node--view-mode-teaser", and
  *     full: "node--view-mode-full".
  *   The following are controlled through the node publishing options.
- *   - node--promoted: Appears on nodes promoted to the front page.
+ *   - node--promoted: Appears on nodes promoted to the home page.
  *   - node--sticky: Appears on nodes ordered above other non-sticky nodes in
  *     teaser listings.
  *   - node--unpublished: Appears on unpublished nodes visible only to site
diff --git a/core/themes/classy/templates/layout/page.html.twig b/core/themes/classy/templates/layout/page.html.twig
index 0f5ba83..8d51464 100644
--- a/core/themes/classy/templates/layout/page.html.twig
+++ b/core/themes/classy/templates/layout/page.html.twig
@@ -11,14 +11,14 @@
  * General utility variables:
  * - base_path: The base URL path of the Drupal installation. Will usually be
  *   "/" unless you have installed Drupal in a sub-directory.
- * - is_front: A flag indicating if the current page is the front page.
+ * - is_front: A flag indicating if the current page is the home page.
  * - logged_in: A flag indicating if the user is registered and signed in.
  * - is_admin: A flag indicating if the user has permission to access
  *   administration pages.
  *
  * Site identity:
- * - front_page: The URL of the front page. Use this instead of base_path when
- *   linking to the front page. This includes the language domain or prefix.
+ * - front_page: The URL of the home page. Use this instead of base_path when
+ *   linking to the home page. This includes the language domain or prefix.
  *
  * Page content (in order of occurrence in the default page.html.twig):
  * - node: Fully loaded node, if there is an automatically-loaded node
diff --git a/core/themes/seven/templates/page.html.twig b/core/themes/seven/templates/page.html.twig
index 1a1a89b..7ddfb4d 100644
--- a/core/themes/seven/templates/page.html.twig
+++ b/core/themes/seven/templates/page.html.twig
@@ -12,14 +12,14 @@
  * General utility variables:
  * - base_path: The base URL path of the Drupal installation. Will usually be
  *   "/" unless you have installed Drupal in a sub-directory.
- * - is_front: A flag indicating if the current page is the front page.
+ * - is_front: A flag indicating if the current page is the home page.
  * - logged_in: A flag indicating if the user is registered and signed in.
  * - is_admin: A flag indicating if the user has permission to access
  *   administration pages.
  *
  * Site identity:
- * - front_page: The URL of the front page. Use this instead of base_path when
- *   linking to the front page. This includes the language domain or prefix.
+ * - front_page: The URL of the home page. Use this instead of base_path when
+ *   linking to the home page. This includes the language domain or prefix.
  *
  * Page content (in order of occurrence in the default page.html.twig):
  * - node: Fully loaded node, if there is an automatically-loaded node
diff --git a/core/themes/stable/templates/block/block--system-branding-block.html.twig b/core/themes/stable/templates/block/block--system-branding-block.html.twig
index 186b360..b5aff1d 100644
--- a/core/themes/stable/templates/block/block--system-branding-block.html.twig
+++ b/core/themes/stable/templates/block/block--system-branding-block.html.twig
@@ -15,12 +15,12 @@
 #}
 {% block content %}
   {% if site_logo %}
-    <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home">
+    <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home">
       <img src="{{ site_logo }}" alt="{{ 'Home'|t }}" />
     </a>
   {% endif %}
   {% if site_name %}
-    <a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
+    <a href="{{ path('<home>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
   {% endif %}
   {{ site_slogan }}
 {% endblock %}
diff --git a/core/themes/stable/templates/content/node.html.twig b/core/themes/stable/templates/content/node.html.twig
index e9dcd0b..91d3f7c 100644
--- a/core/themes/stable/templates/content/node.html.twig
+++ b/core/themes/stable/templates/content/node.html.twig
@@ -38,7 +38,7 @@
  *     teaser would result in: "node--view-mode-teaser", and
  *     full: "node--view-mode-full".
  *   The following are controlled through the node publishing options.
- *   - node--promoted: Appears on nodes promoted to the front page.
+ *   - node--promoted: Appears on nodes promoted to the home page.
  *   - node--sticky: Appears on nodes ordered above other non-sticky nodes in
  *     teaser listings.
  *   - node--unpublished: Appears on unpublished nodes visible only to site
diff --git a/core/themes/stable/templates/layout/page.html.twig b/core/themes/stable/templates/layout/page.html.twig
index 669a1c6..a02f2c6 100644
--- a/core/themes/stable/templates/layout/page.html.twig
+++ b/core/themes/stable/templates/layout/page.html.twig
@@ -11,14 +11,14 @@
  * General utility variables:
  * - base_path: The base URL path of the Drupal installation. Will usually be
  *   "/" unless you have installed Drupal in a sub-directory.
- * - is_front: A flag indicating if the current page is the front page.
+ * - is_front: A flag indicating if the current page is the home page.
  * - logged_in: A flag indicating if the user is registered and signed in.
  * - is_admin: A flag indicating if the user has permission to access
  *   administration pages.
  *
  * Site identity:
- * - front_page: The URL of the front page. Use this instead of base_path when
- *   linking to the front page. This includes the language domain or prefix.
+ * - front_page: The URL of the home page. Use this instead of base_path when
+ *   linking to the home page. This includes the language domain or prefix.
  *
  * Page content (in order of occurrence in the default page.html.twig):
  * - messages: Status and error messages. Should be displayed prominently.
