Theme changes

This commit is contained in:
Patrick Neff 2024-02-22 18:36:58 +01:00
parent bf932ee5d9
commit 7578dee4d6
6 changed files with 12113 additions and 1022 deletions

View File

@ -31,7 +31,7 @@ site:
$(HUGO) $(HUGO_ARGS) --destination $(REMOTE_DIR)
local:
$(HUGO) $(HUGO_ARGS) --baseURL http://$(IP) --destination $(LOCAL_DIR)
$(HUGO) $(HUGO_ARGS) --baseURL http://0.0.0.0:3000 --destination $(LOCAL_DIR)
staging:
$(HUGO) --buildDrafts --buildExpired --buildFuture --gc

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 MiB

File diff suppressed because it is too large Load Diff

View File

@ -27,10 +27,10 @@
"font-loader": "^0.1.2",
"image-webpack-loader": "^4.6.0",
"mini-css-extract-plugin": "^0.5.0",
"node-sass": "^4.11.0",
"optimize-css-assets-webpack-plugin": "^5.0.1",
"postcss-loader": "^3.0.0",
"postcss-preset-env": "^6.5.0",
"sass": "^1.49.8",
"sass-loader": "^7.1.0",
"style-loader": "^0.23.1",
"uglifyjs-webpack-plugin": "^2.1.1",

View File

@ -1,78 +1,78 @@
#content {
#index-hero {
.hero-container {
text-align: center;
#index-hero {
.hero-container {
text-align: center;
img.hero {
margin: 0.5rem auto 0;
max-width: 150px;
height: auto;
}
img.hero {
margin: 0.5rem auto 0;
max-width: 150px;
height: auto;
}
header,
div.content {
text-align: left;
}
}
header,
div.content {
text-align: left;
}
}
}
#index-title {
display: none;
}
#index-short-contact {
font-size: 1.1rem;
align-items: flex-start;
background-color: rgba(255, 255, 255, 0.9);
height: 90px;
border-radius: $border-radius;
padding: $gutter-width;
margin: calc(100vh - 310px) 0-$gutter-width 0 0-$gutter-width;
overflow: hidden;
min-width: 100%;
@media only screen and (min-width: $media-query) {
margin-top: calc(100vh - 285px);
margin-bottom: -$gutter-width;
margin-left: calc(#{$gutter-width} + calc(2 * calc(#{$max-width} / 3)));
margin-right: -$gutter-width;
padding-right: $gutter-width;
max-width: calc(#{$max-width} / 3);
min-width: calc(#{$max-width} / 3);
}
#index-title {
display: none;
ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: row;
justify-content: center;
li {
margin: 0.5rem $gutter-width;
font-size: 2rem;
}
}
#index-short-contact {
font-size: 1.1rem;
align-items: flex-start;
background-color: rgba(255, 255, 255, 0.9);
height: 90px;
border-radius: $border-radius;
padding: $gutter-width;
margin: calc(100vh - 310px) -$gutter-width 0 -$gutter-width;
overflow: hidden;
min-width: 100%;
@media only screen and (min-width: $media-query) {
margin-top: calc(100vh - 285px);
margin-bottom: -$gutter-width;
margin-left: calc(#{$gutter-width} + calc(2 * calc(#{$max-width} / 3)));
margin-right: -$gutter-width;
padding-right: $gutter-width;
max-width: calc(#{$max-width} / 3);
min-width: calc(#{$max-width} / 3);
}
ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: row;
justify-content: center;
li {
margin: 0.5rem $gutter-width;
font-size: 2rem;
}
}
& > * {
flex: 1 0 0;
}
& > * {
flex: 1 0 0;
}
}
#index-contact {
.padding {
flex: 1 0 0;
}
#index-contact {
.padding {
flex: 1 0 0;
}
}
#index-gallery {
figure {
text-align: center;
#index-gallery {
figure {
text-align: center;
figcaption {
text-align: left;
}
}
figcaption {
text-align: left;
}
}
}
}

View File

@ -1,164 +1,170 @@
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const CleanWebpackPlugin = require('clean-webpack-plugin');
const CleanWebpackPlugin = require("clean-webpack-plugin");
const UglifyJsPlugin = require("uglifyjs-webpack-plugin");
const OptimizeCSSAssetsPlugin = require("optimize-css-assets-webpack-plugin");
const path = require('path');
const path = require("path");
module.exports = {
entry: {
bundle: ['./src/js/main.js'],
images: ['./src/js/images.js'],
style: ['./src/scss/main.scss'],
},
mode: 'production',
devtool: 'source-map',
context: __dirname,
output: {
filename: 'js/[name].js',
path: __dirname + '/assets',
},
module: {
rules: [
{
test: /\.m?js$/,
exclude: /node_modules/,
use: [
{
loader: 'babel-loader'
}
]
entry: {
bundle: ["./src/js/main.js"],
images: ["./src/js/images.js"],
style: ["./src/scss/main.scss"],
},
mode: "production",
devtool: "source-map",
context: __dirname,
output: {
filename: "js/[name].js",
path: __dirname + "/assets",
},
module: {
rules: [
{
test: /\.m?js$/,
exclude: /node_modules/,
use: [
{
loader: "babel-loader",
},
],
},
{
test: /\.(sa|sc|c)ss$/,
use: [
{
loader: MiniCssExtractPlugin.loader,
options: {
publicPath: "../",
sourceMap: true,
},
{
test: /\.(sa|sc|c)ss$/,
use: [
{
loader: MiniCssExtractPlugin.loader,
options: {
publicPath: '../',
sourceMap: true
}
},
{
loader: "css-loader",
options: {
sourceMap: true
}
},
{
loader: "postcss-loader",
options: {
sourceMap: true
}
},
{
loader: "sass-loader",
options: {
sourceMap: true
}
},
]
},
{
loader: "css-loader",
options: {
sourceMap: true,
},
{
test: /\.woff2?(\?v=\d+\.\d+\.\d+)?$/,
loader: "url-loader",
options: {
limit: 1000,
mimetype: 'application/font-woff',
name: '[name].[ext]',
outputPath: '../static/fonts',
publicPath: '../fonts'
}
},
{
loader: "postcss-loader",
options: {
sourceMap: true,
},
{
test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
loader: "url-loader",
options: {
limit: 1000,
mimetype: 'application/octet-stream',
name: '[name].[ext]',
outputPath: '../static/fonts',
publicPath: '../fonts'
}
},
{
loader: "sass-loader",
options: {
sourceMap: true,
implementation: require("sass"),
},
{
test: /\.eot(\?v=\d+\.\d+\.\d+)?$/,
loader: "file-loader",
options: {
name: '[name].[ext]',
outputPath: '../static/fonts',
publicPath: '../fonts'
}
},
],
},
{
test: /\.woff2?(\?v=\d+\.\d+\.\d+)?$/,
loader: "url-loader",
options: {
limit: 1000,
mimetype: "application/font-woff",
name: "[name].[ext]",
outputPath: "../static/fonts",
publicPath: "../fonts",
},
},
{
test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
loader: "url-loader",
options: {
limit: 1000,
mimetype: "application/octet-stream",
name: "[name].[ext]",
outputPath: "../static/fonts",
publicPath: "../fonts",
},
},
{
test: /\.eot(\?v=\d+\.\d+\.\d+)?$/,
loader: "file-loader",
options: {
name: "[name].[ext]",
outputPath: "../static/fonts",
publicPath: "../fonts",
},
},
{
test: /\.svg(\?v=\d+\.\d+\.\d+)?$/,
loader: "url-loader",
options: {
limit: 1000,
mimetype: "image/svg+xml",
name: "[name].[ext]",
outputPath: "../static/fonts",
publicPath: "../fonts",
},
},
{
test: /\/src\/img\/.*\.(ico|svg|ico|gif|jpe?g|png)$/,
use: [
{
loader: "file-loader",
options: {
name: "../static/img/[2].[ext]",
regExp: /(src\/img)+\/(.*).(gif|svg|ico|gif|jpe?g|png)$/,
},
{
test: /\.svg(\?v=\d+\.\d+\.\d+)?$/,
loader: "url-loader",
options: {
limit: 1000,
mimetype: 'image/svg+xml',
name: '[name].[ext]',
outputPath: '../static/fonts',
publicPath: '../fonts'
}
},
{
loader: "image-webpack-loader",
options: {
mozjpeg: {
progressive: true,
quality: 75,
},
// optipng.enabled: false will disable optipng
optipng: {
enabled: false,
},
pngquant: {
quality: "65-90",
speed: 4,
},
gifsicle: {
interlaced: false,
},
},
{
test: /\/src\/img\/.*\.(ico|svg|ico|gif|jpe?g|png)$/,
use: [
{
loader: 'file-loader',
options: {
name: '../static/img/[2].[ext]',
regExp: /(src\/img)+\/(.*).(gif|svg|ico|gif|jpe?g|png)$/,
}
},
{
loader: 'image-webpack-loader',
options: {
mozjpeg: {
progressive: true,
quality: 75
},
// optipng.enabled: false will disable optipng
optipng: {
enabled: false,
},
pngquant: {
quality: '65-90',
speed: 4
},
gifsicle: {
interlaced: false,
},
}
}
]
},
]
},
plugins: [
new CleanWebpackPlugin(['assets/css/*', 'assets/js/*', 'static/fonts/*', 'static/img/*']),
new MiniCssExtractPlugin({
// Options similar to the same options in webpackOptions.output
// both options are optional
filename: "css/[name].css",
chunkFilename: "css/[id].css",
})
},
],
},
],
optimization: {
usedExports: true,
minimizer: [
new UglifyJsPlugin({
cache: true,
parallel: true,
sourceMap: true // set to true if you want JS source maps
}),
new OptimizeCSSAssetsPlugin({
cssProcessorOptions: {
map: {
inline: false,
annotation: true
}
}
})
]
}
},
plugins: [
new CleanWebpackPlugin([
"assets/css/*",
"assets/js/*",
"static/fonts/*",
"static/img/*",
]),
new MiniCssExtractPlugin({
// Options similar to the same options in webpackOptions.output
// both options are optional
filename: "css/[name].css",
chunkFilename: "css/[id].css",
}),
],
optimization: {
usedExports: true,
minimizer: [
new UglifyJsPlugin({
cache: true,
parallel: true,
sourceMap: true, // set to true if you want JS source maps
}),
new OptimizeCSSAssetsPlugin({
cssProcessorOptions: {
map: {
inline: false,
annotation: true,
},
},
}),
],
},
};