feat : add favicon and meta tags
BIN
public/android-chrome-192x192.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
public/android-chrome-512x512.png
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
public/apple-touch-icon.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
public/favicon-16x16.png
Normal file
|
After Width: | Height: | Size: 683 B |
BIN
public/favicon-32x32.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
public/favicon.ico
Normal file
|
After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
19
public/site.webmanifest
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"name": "FreeChess",
|
||||||
|
"short_name": "FreeChess",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "/android-chrome-192x192.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/android-chrome-512x512.png",
|
||||||
|
"sizes": "512x512",
|
||||||
|
"type": "image/png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"theme_color": "#5d9948",
|
||||||
|
"background_color": "#ffffff",
|
||||||
|
"display": "standalone"
|
||||||
|
}
|
||||||
@@ -4,7 +4,45 @@ export default function Document() {
|
|||||||
return (
|
return (
|
||||||
<Html lang="en">
|
<Html lang="en">
|
||||||
<Head>
|
<Head>
|
||||||
<link rel="icon" href="/favicon.png" />
|
<link
|
||||||
|
rel="apple-touch-icon"
|
||||||
|
sizes="180x180"
|
||||||
|
href="/apple-touch-icon.png"
|
||||||
|
/>
|
||||||
|
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
||||||
|
<link
|
||||||
|
rel="icon"
|
||||||
|
type="image/png"
|
||||||
|
sizes="32x32"
|
||||||
|
href="/favicon-32x32.png"
|
||||||
|
/>
|
||||||
|
<link
|
||||||
|
rel="icon"
|
||||||
|
type="image/png"
|
||||||
|
sizes="16x16"
|
||||||
|
href="/favicon-16x16.png"
|
||||||
|
/>
|
||||||
|
<meta
|
||||||
|
name="description"
|
||||||
|
content="Open source chess app to play, view and analyze your chess games for free from anywhere with Stockfish !"
|
||||||
|
/>
|
||||||
|
|
||||||
|
{/* Balises OG (Facebook & Twitter) */}
|
||||||
|
<meta property="og:type" content="website" />
|
||||||
|
<meta property="og:title" content="FreeChess" />
|
||||||
|
<meta property="og:site_name" content="Freechess.web.app" />
|
||||||
|
<meta property="og:url" content="https://freechess.web.app/" />
|
||||||
|
<meta
|
||||||
|
property="og:image"
|
||||||
|
content="https://freechess.web.app/android-chrome-512x512.png"
|
||||||
|
/>
|
||||||
|
<meta
|
||||||
|
property="og:description"
|
||||||
|
content="Open source chess app to play, view and analyze your chess games for free from anywhere with Stockfish !"
|
||||||
|
/>
|
||||||
|
|
||||||
|
{/* Balise Twitter */}
|
||||||
|
<meta name="twitter:card" content="summary_large_image" />
|
||||||
</Head>
|
</Head>
|
||||||
<body>
|
<body>
|
||||||
<Main />
|
<Main />
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import NavMenu from "./NavMenu";
|
|||||||
import { Icon } from "@iconify/react";
|
import { Icon } from "@iconify/react";
|
||||||
import { useRouter } from "next/router";
|
import { useRouter } from "next/router";
|
||||||
import NavLink from "@/components/NavLink";
|
import NavLink from "@/components/NavLink";
|
||||||
|
import Image from "next/image";
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
darkMode: boolean;
|
darkMode: boolean;
|
||||||
@@ -40,8 +41,18 @@ export default function NavBar({ darkMode, switchDarkMode }: Props) {
|
|||||||
>
|
>
|
||||||
<Icon icon="mdi:menu" />
|
<Icon icon="mdi:menu" />
|
||||||
</IconButton>
|
</IconButton>
|
||||||
|
<Image
|
||||||
|
src="/favicon-32x32.png"
|
||||||
|
alt="FreeChess logo"
|
||||||
|
width={32}
|
||||||
|
height={32}
|
||||||
|
/>
|
||||||
<NavLink href="/">
|
<NavLink href="/">
|
||||||
<Typography variant="h6" component="div" sx={{ flexGrow: 1 }}>
|
<Typography
|
||||||
|
variant="h6"
|
||||||
|
component="div"
|
||||||
|
sx={{ flexGrow: 1, ml: 1 }}
|
||||||
|
>
|
||||||
Free Chess
|
Free Chess
|
||||||
</Typography>
|
</Typography>
|
||||||
</NavLink>
|
</NavLink>
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ export default function NavMenu({ open, onClose }: Props) {
|
|||||||
return (
|
return (
|
||||||
<Drawer anchor="left" open={open} onClose={onClose}>
|
<Drawer anchor="left" open={open} onClose={onClose}>
|
||||||
<Toolbar />
|
<Toolbar />
|
||||||
<Box sx={{ width: 250 }}>
|
<Box sx={{ width: 250, overflow: "hidden" }}>
|
||||||
<List>
|
<List>
|
||||||
{MenuOptions.map(({ text, icon, href }) => (
|
{MenuOptions.map(({ text, icon, href }) => (
|
||||||
<ListItem key={text} disablePadding sx={{ margin: 0.7 }}>
|
<ListItem key={text} disablePadding sx={{ margin: 0.7 }}>
|
||||||
|
|||||||