feat: ✨ add vue.config.js with aliases, html head meta and image processing
This commit is contained in:
parent
d7e8f55b41
commit
240507dc91
2 changed files with 92 additions and 15 deletions
|
@ -4,25 +4,15 @@
|
|||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||
<title>Sebin Nyshkim - Reference Page</title>
|
||||
<link rel="favicon" href="/img/sebin-smug-icon.png" type="image/png">
|
||||
<link rel="icon" href="/img/sebin-smug-icon.png" type="image/png">
|
||||
|
||||
<meta name="twitter:card" content="summary">
|
||||
<meta name="twitter:creator" content="@SebinNyshkim">
|
||||
<meta name="twitter:description" content="Learn everything about your favorite neighborhood derg, down to the minute details!">
|
||||
<meta name="twitter:text:title" content="Sebin Nyshkim - Reference Page">
|
||||
<meta name="twitter:image" content="https://ref.sebin-nyshkim.net/img/sebin-smug-icon.png">
|
||||
<meta name="og:title" content="Sebin Nyshkim - Reference Page">
|
||||
<meta name="og:type" content="website">
|
||||
<meta name="og:url" content="https://ref.sebin-nyshkim.net">
|
||||
<meta name="og:image" content="https://ref.sebin-nyshkim.net/img/sebin-smug-icon.png">
|
||||
<meta name="og:description" content="Learn everything about your favorite neighborhood derg, down to the minute details!">
|
||||
<link rel="<%= htmlWebpackPlugin.options.links.favicon.rel %>" href="<%= htmlWebpackPlugin.options.links.favicon.href %>" type="<%= htmlWebpackPlugin.options.links.favicon.type %>">
|
||||
<link rel="<%= htmlWebpackPlugin.options.links.icon.rel %>" href="<%= htmlWebpackPlugin.options.links.icon.href %>" type="<%= htmlWebpackPlugin.options.links.icon.type %>">
|
||||
<title><%= htmlWebpackPlugin.options.title %></title>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>
|
||||
<strong>We're sorry but sebin-reference doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
|
||||
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
|
||||
</noscript>
|
||||
<div class="bubbles"></div>
|
||||
<div id="app"></div>
|
||||
<!-- built files will be auto injected -->
|
||||
</body>
|
||||
|
|
87
vue.config.js
Normal file
87
vue.config.js
Normal file
|
@ -0,0 +1,87 @@
|
|||
const path = require("path");
|
||||
|
||||
module.exports = {
|
||||
publicPath: "",
|
||||
css: {
|
||||
sourceMap: process.env.NODE_ENV !== "production"
|
||||
},
|
||||
configureWebpack: {
|
||||
resolve: {
|
||||
alias: {
|
||||
"@fonts": path.resolve(__dirname, "src/assets/fonts/"),
|
||||
"@img": path.resolve(__dirname, "src/assets/img/"),
|
||||
"@scss": path.resolve(__dirname, "src/scss/"),
|
||||
"@data": path.resolve(__dirname, "src/data/"),
|
||||
"@mixins": path.resolve(__dirname, "src/mixins/"),
|
||||
"@components": path.resolve(__dirname, "src/components/")
|
||||
}
|
||||
}
|
||||
},
|
||||
chainWebpack: config => {
|
||||
config.plugin("html").tap(args => {
|
||||
const meta = {
|
||||
title: "Sebin Nyshkim - Reference Page",
|
||||
desc: "The official reference Page for Sebin Nyshkim",
|
||||
type: "website",
|
||||
url: "https://ref.sebin-nyshkim.net",
|
||||
image: "favicon.png",
|
||||
twitter: {
|
||||
card: "summary",
|
||||
creator: "@SebinNyshkim"
|
||||
}
|
||||
};
|
||||
|
||||
const links = {
|
||||
icon: {
|
||||
rel: "icon",
|
||||
href: meta.image,
|
||||
type: "image/png"
|
||||
},
|
||||
favicon: {
|
||||
rel: "favicon",
|
||||
href: meta.image,
|
||||
type: "image/png"
|
||||
}
|
||||
};
|
||||
|
||||
args[0].title = meta.title;
|
||||
args[0].links = links;
|
||||
args[0].meta = {
|
||||
"twitter:card": meta.twitter.card,
|
||||
"twitter:creator": meta.twitter.creator,
|
||||
"twitter:description": meta.desc,
|
||||
"twitter:text:title": meta.title,
|
||||
"twitter:image": meta.image,
|
||||
"og:title": meta.title,
|
||||
"og:type": meta.type,
|
||||
"og:url": meta.url,
|
||||
"og:image": meta.image,
|
||||
"og:description": meta.desc
|
||||
};
|
||||
|
||||
return args;
|
||||
});
|
||||
|
||||
config.module
|
||||
.rule("images")
|
||||
.test(/\.(png|jpe?g|gif|webp|svg)(\?.*)?$/i)
|
||||
.use("image-webpack-loader")
|
||||
.loader("image-webpack-loader")
|
||||
.tap(options => {
|
||||
const newOpts = {
|
||||
mozjpeg: {
|
||||
progressive: true,
|
||||
quality: 75
|
||||
},
|
||||
pngquant: {
|
||||
quality: [0.65, 0.9],
|
||||
speed: 4
|
||||
},
|
||||
gifsicle: {
|
||||
interlaced: false
|
||||
}
|
||||
};
|
||||
return { ...options, ...newOpts };
|
||||
});
|
||||
}
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue