website/src/index.ejs
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,viewport-fit=cover">
<link href="<%= htmlWebpackPlugin.files.publicPath %>apple-icon-180x180.png" rel="apple-touch-icon" sizes="180x180">
<link href="<%= htmlWebpackPlugin.files.publicPath %>favicon-32x32.png" rel="icon" type="image/png" sizes="32x32">
<link href="<%= htmlWebpackPlugin.files.publicPath %>favicon-16x16.png" rel="icon" type="image/png" sizes="16x16">
<link href="<%= htmlWebpackPlugin.files.publicPath %>safari-pinned-tab.svg" rel="mask-icon" color="#ff5138">
<link href="<%= htmlWebpackPlugin.files.publicPath %>manifest.json" rel="manifest">
<link href="<%= moduleListUrl %>" rel="preload" as="fetch" crossorigin="anonymous">
<link href="<%= venuesUrl %>" rel="prefetch">
<% for (const jsFile of loadedJsFiles) { %>
<link href="<%= jsFile %>" rel="preload" as="script">
<% } %>
<% for (const cssFile of htmlWebpackPlugin.files.css) { %>
<link href="<%= cssFile %>" rel="stylesheet">
<% } %>
<title><%= brandName %></title>
<!-- data-react-helmet="true" is set on tags which should be replaced by React Helmet (See <Title> component) -->
<meta name="description" content="<%= description %>" data-react-helmet="true">
<!-- Open Graph general (Facebook, Pinterest & Google+) -->
<meta name="og:title" content="<%= brandName %>" data-react-helmet="true">
<meta name="og:description" content="<%= description %>" data-react-helmet="true">
<meta name="og:site_name" content="<%= brandName %>">
<meta name="og:type" content="website">
<!-- Open Search -->
<link href="<%= htmlWebpackPlugin.files.publicPath %>opensearch.xml" rel="search" title="<%= brandName %> Modules" type="application/opensearchdescription+xml">
<meta name="theme-color" content="#ffffff" />
</head>
<body>
<div id="app"></div>
<noscript>Please enable JavaScript to use <%= brandName %></noscript>
<% if (typeof browserWarningPath !== 'undefined') { %>
<script src="/<%= browserWarningPath %>" async defer></script>
<% } %>
<% for (const jsFile of inlinedJsFiles) { %>
<script>
<%= compilation.assets[jsFile.substr(htmlWebpackPlugin.files.publicPath.length)].source() %>
</script>
<% } %>
<% for (const jsFile of loadedJsFiles) { %>
<script src="<%= jsFile %>" defer></script>
<% } %>
</body>
</html>