set up hugo / gulp

This commit is contained in:
Joshua Seigler 2017-02-11 05:39:27 -05:00
parent 428032c326
commit 0e7128d088
29 changed files with 3151 additions and 3 deletions

27
.editorconfig Normal file
View file

@ -0,0 +1,27 @@
# EditorConfig is awesome: http://EditorConfig.org
root = true
[*]
end_of_line = lf
charset = utf-8
indent_style = space
indent_size = 2
trim_trailing_whitespace = true
insert_final_newline = true
[*.md]
trim_trailing_whitespace = false
insert_final_newline = false
[*.svg]
insert_final_newline = false
# Ignore paths
[node_modules/**]
charset = none
end_of_line = none
insert_final_newline = none
trim_trailing_whitespace = none
indent_style = none
indent_size = none

4
.gitignore vendored
View file

@ -1,5 +1,5 @@
# https://git-scm.com/docs/gitignore # https://git-scm.com/docs/gitignore
# https://help.github.com/articles/ignoring-files # https://help.github.com/articles/ignoring-files
# Example .gitignore files: https://github.com/github/gitignore # Example .gitignore files: https://github.com/github/gitignore
/bower_components/ /node_modules/
/node_modules/ /dist/

View file

Before

Width:  |  Height:  |  Size: 4.9 MiB

After

Width:  |  Height:  |  Size: 4.9 MiB

Before After
Before After

Binary file not shown.

146
gulpfile.js Normal file
View file

@ -0,0 +1,146 @@
/*jslint node: true */
'use strict';
/**
# Gulp File
* Install `yarn` if you haven't already https://yarnpkg.com/en/docs/install
* Run `yarn` on the command line to install `gulp` and other prerequisites
* Run `gulp` on the command line to compile LESS files and watch them for changes
* Or run `gulp build-less` to build LESS files to CSS once and then exit
*/
// Include Gulp plugins
var gulp = require('gulp'),
gutil = require('gulp-util'), // useful Gulp tools, used here for color text on console
rename = require('gulp-rename'), // rename files
less = require('gulp-less'), // compile LESS into CSS
watch = require('gulp-watch'), // monitors files for changes
notify = require('gulp-notify'), // pops up OS notifications
autoprefix = require('gulp-autoprefixer'), // applies browser prefixes based on data from caniuse.com
plumber = require('gulp-plumber'), // allows gulp to continue despite an error
sourcemaps = require('gulp-sourcemaps'), // helps browsers show the original source location of code
svgstore = require('gulp-svgstore'), // combines SVGs into a sprite sheet
svgmin = require('gulp-svgmin'), // minifies SVGs to save filesize
clean = require('gulp-clean'), // for deleting files and directories
path = require('path'),
spawn = require('child_process').spawn,
// Define source and destination paths
paths = {
src_less: 'src/themes/eos/styles/',
dest_css: 'src/themes/eos/static/css/',
src_icons: 'src/themes/eos/icons/',
dest_icons: 'src/themes/eos/layouts/partials/generated/'
};
// Error handler, prints the error on the console and pops up a notification bubble
var onError = function (error, task) {
var fileName = (error.fileName) ? error.fileName + ' -- ' : '',
lineNumber = (error.lineNumber) ? 'line ' + error.lineNumber + ' -- ' : '',
pluginName = (error.plugin) ? ': [' + error.plugin + ']' : '[' + task + ']',
report = '',
chalk = gutil.colors.white.bgRed;
notify({
title: 'Task Failed ' + pluginName,
message: fileName + lineNumber + 'See console.'
}).write(error);
gutil.beep();
report += chalk('TASK:') + pluginName + '\n';
report += chalk('ERROR:') + ' ' + error.message + '\n';
if (error.lineNumber) { report += chalk('LINE:') + ' ' + error.lineNumber + '\n'; }
if (error.fileName) { report += chalk('FILE:') + ' ' + error.fileName + '\n'; }
console.error(report);
};
gulp.task('clean:less', function () {
return gulp.src([
paths.dest_css + 'bundle.css',
paths.dest_css + 'bundle.css.map'
], {read: false})
.pipe(clean());
});
// Compile LESS to CSS
gulp.task('build:less', function () {
return gulp.src(paths.src_less + 'bundle.less')
.pipe(sourcemaps.init())
.pipe(plumber({
errorHandler: function (error) { onError(error, 'LESS'); }
}))
.pipe(less({
paths: [paths.src_less]
}))
.pipe(autoprefix({
browsers: ['last 2 versions'],
cascade: false
}))
.pipe(rename('bundle.css'))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest(paths.dest_css)); // path to css directory
});
// Watch for changes in source folders and run their build tasks
gulp.task('watch', ['build:less', 'build:icons'], function () {
gulp.watch(paths.src_less + '**/*', ['build:less']);
gulp.watch(paths.src_icons + '**/*', ['build:icons']);
});
gulp.task('clean:icons', function () {
return gulp.src(paths.dest_icons + 'icons.svg', {read: false})
.pipe(clean());
});
// Combine SVG icons into a sprite-sheet to be embedded in the page
gulp.task('build:icons', function () {
return gulp.src(paths.src_icons + '**/*.svg')
.pipe(svgmin(function (file) {
var prefix = path.basename(file.relative, path.extname(file.relative));
return {
plugins: [{
cleanupIDs: {
prefix: prefix + '-',
minify: true
}
}]
};
}))
.pipe(svgstore({ inlineSvg: true }))
.pipe(rename('icons.svg'))
.pipe(gulp.dest(paths.dest_icons));
});
gulp.task('clean:site', function () {
return gulp.src('./build', {read: false})
.pipe(clean());
});
// Run `hugo` build command in a child process
gulp.task('build:site', ['clean:site', 'build:less', 'build:icons'], function () {
var child = spawn("hugo", ["-s", "./src", "-d", "./build"], {cwd: process.cwd()}),
stdout = '',
stderr = '';
child.stdout.setEncoding('utf8');
child.stdout.on('data', function (data) {
stdout += data;
console.log(data);
});
child.stderr.setEncoding('utf8');
child.stderr.on('data', function (data) {
stderr += data;
console.error(gutil.colors.red(data));
gutil.beep();
});
child.on('close', function (code) {
gutil.log("Done with exit code", code);
});
});
// Default will run the 'entry' task
gulp.task('default', ['watch']);

22
package.json Normal file
View file

@ -0,0 +1,22 @@
{
"name": "joshua.seigler.net",
"version": "1.0.0",
"description": "Personal homepage",
"main": "index.js",
"author": "Joshua Seigler <github@joshua.seigler.net>",
"license": "MIT",
"dependencies": {
"gulp": "^3.9.1",
"gulp-autoprefixer": "^3.1.1",
"gulp-clean": "^0.3.2",
"gulp-less": "^3.3.0",
"gulp-notify": "^3.0.0",
"gulp-plumber": "^1.1.0",
"gulp-rename": "^1.2.2",
"gulp-sourcemaps": "^2.4.1",
"gulp-svgmin": "^1.2.3",
"gulp-svgstore": "^6.1.0",
"gulp-util": "^3.0.8",
"gulp-watch": "^4.3.11"
}
}

View file

@ -33,7 +33,6 @@ body {
width: 100vw; width: 100vw;
margin: 0 auto; margin: 0 auto;
overflow: auto; overflow: auto;
mix-blend-mode: screen;
} }
@media (min-width: 100vh) { @media (min-width: 100vh) {
body { body {

Binary file not shown.

6
src/config.toml Normal file
View file

@ -0,0 +1,6 @@
languageCode = "en-us"
title = "My New Hugo Site"
baseurl = "http://example.org/"
source = "src/"
publishDir = "../dest"
theme = "eos"

20
src/themes/eos/LICENSE.md Normal file
View file

@ -0,0 +1,20 @@
The MIT License (MIT)
Copyright (c) 2017 YOUR_NAME_HERE
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View file

@ -0,0 +1,2 @@
+++
+++

View file

View file

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{ block "title" }}
{{ .Site.Title }}
{{ end }}</title>
<link rel="stylesheet" href="bundle.css">
</head>
<body>
<div class="wrapper">
{{ partial "header" . }}
<main>
{{ block "main" . }}
{{ end }}
</main>
{{ partial "footer" . }}
</div>
</body>
</html>

View file

@ -0,0 +1,62 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{ .Site.Title }}</title>
<link rel="stylesheet" href="css/bundle.css">
</head>
<body>
<div class="wrapper">
{{ partial "header" . }}
<main>
<pre style="font-size: 1.7vmin">
,g▄██▓▓▓▓▓▓▓▓████▄g
,≈g▄▄██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█
▄█▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╥
▄▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█
█▓▓▓▓▓▓▓▓▓█▀▀▀▐┼¡!!┤▐▀▀███▓▓▓▓▓▓▓█g
▓▓▓▓▓█├¡¡!!!!!!!!!!!!!!!!!|▀▓▓▓▓▓▓▓█▄
▓▓▓▓▓|!!!!!!!!!!!!!!!!!!!!!!▀▓▓▓▓▓▓▓▓█▄
▐▓▓▓▓▌!!!!!!!!!!!!!!!!!!!!!!!¡▓▓▓▓▓▓▓▓▓▓█
▓▓▓▓▓▌!!!!!!!!!!!!!!!!!!!!!!!!▓▓▓▓▓▓▓▓▓▓▓g
▐▓▓▓▓▓@!!!!!!!!!!!!!!!!!!!!!!!!█▓▓▓▓▓▓▓▓▓▓▌
╘▓▓▓▓▓|!!!!!!!!!!!!!!⌠g▄▄▄▄┼!!!█▓▓▓▓▓▓▓▓▓▓▌
╘█▓▓▓█▓▓███▄!!!!▄██▓▓▓▓████▌¡!▀▓▓▓▓▓▓▓▓▓▓─
╓█▓▓▀▐▒▌▀▀██|ƒ┼▄▐▐▄╧╧╩▌≡âg!¡å▀▄▓▓▓▓▓▓▓▓▓▌
█▓▓▓█▀ █╓▄┼¡├█!▀≈p╓╓▄╓,g▌!!▀┤▐▓▓▓▓▓▓▓█
▌▀▓▓█åååà┤g╪!!!▐▄|!!!!!!!!!|g╪!!|▀▀▌├⌠█
²▀█ææææ¥▀┼!!!!!¡å╪╪╪╪╪╪╪╪Ñ┼!!!!!g▀▄¡!▀
▌!!!!!▌|!!!!!!!!!!!!!!!!!!!!!!!▐!¡╕!▀
▌!!!!!╘g!!!!!!!!⌡!!!!!!!!!!!!!!!!~┤gÑ
▀!!;ƒg▄█g|;|ƒg▄▀██▌▌▄▄ƒ¡!!!!!!!!!¡▌
▄▌██████████████████████▌▄g!!!!!!!▀
g█████████▀▀▀┤▐▀▀▀▀▀▒▀▀▀▀▀██▒▌!!!!!!¡▌
╘╧≡▒▄≡▄▄▄▄▄▄gææ¥╪╪╪╪╪╪Ñåå┤j███!!!!!!!▀
▌!▐███|╪≡gggg4æ!!!!!███Ñ!!!!!!!¡▌
▌!!███¡!!!!!!!!!!!!g███~!!!!!!!!▀
▌!!▀██H!!!!!!!!!!;▄████æ!!!!!!!!▐
¬@!!▐███g!!!!!!|g▄██████╪!!!!!!!!J▌#╖
▄¡!!!███▒███████████████¡!!!!!!!g≡╧ ╘ƒ
▀▐ƒ!!!|▀███████████████▀|!!!!!╖≡╩ ▌
╓▄█─ ²≡¿!!!¡▐▀▀██████▀▀▀à¡!!!!ƒ≡Ñ '█p
▄█▓▓▓▌ ┴╧≡ƒ!!!!!!!!!!!!!!!⌠â#╩ Æ█▓▓█▄╓
=0▐▓▓▓▓▓▓▓ ²#g¡!!!!!!|g¥╧╩ ╖#▐█▓▓▓▓▓▓█▄
Æ╧─ █▓▓▓▓▓▓▓█ ▄▌╥▀ƒ!!g╧╩▄g =╧ g▓▓▓▓▓▓▓▓▓▓▓▄
¿≡` █▓▓▓▓▓▓▓▓▓▌ ╓▀▀██▀█▌▌█▀▀█▒█▌ g╩ ,█▓▓▓▓▓▓▓█▀▀²``²╩═=,
²# ▐▓▓▓▓▓▓▓▓▓▓▓▄ ╥╧ ╚█▒▒▒▒▒▒█╧ ▀⌐ ╥▀ ▄▓▓▓▓▓▓▓▀─ ╧≡
g` ▓▓▓▓▓▓▓▓▓▓▓▓▓▄╛ ²█▒▒▒▒▒▌ ╘╧≈# ▄▓▓▓▓▓▓▓█ ²g
▀ a╓ ▐▓▓▓▓▓▓▓▓▓▓▓▓▓▓w ▐█▒▒▒█ ▄▓▓▓▓▓▓▓▓▀ ▀µ
╓Ñ ─╧▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓µ ,█▒▒▒▒█ ▄▓▓▓▓▓▓▓▓▓█ ²g
╥╩ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓g █▒▒▒▒▒▒▌ ▄▓▓▓▓▓▓▓▓▓▓▓─ ╘g
╓╩ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▄]▒▒▒▒▒▒▒█ ▄▓▓▓▓▓▓▓▓▓▓▓▓▓ ╘g
▌ ▐▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▒▒▒▒▒▒▒▒▌▄▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ ²Q
▌ ▐▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█▒▒▒▒██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▌ ▐⌐
▐ ▐▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓██▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ ▀</pre>
</main>
{{ partial "footer" . }}
</div>
</body>
</html>

View file

@ -0,0 +1,3 @@
<footer>
footer
</footer>

View file

@ -0,0 +1,6 @@
<header>
<nav>
<a href="/">Home</a>
<a href="/blog">Blog</a>
</nav>
</header>

View file

@ -0,0 +1,72 @@
/* micro styles reset */
*,
:before,
:after {
box-sizing: inherit;
margin: 0;
padding: 0;
transform-style: preserve-3d;
font-family: inherit;
}
html {
box-sizing: border-box;
height: 100%;
overflow: hidden;
color: #DA0;
}
a {
color: inherit;
}
a:hover {
background-color: #DA0;
color: #20282a;
}
/*layout*/
html {
font-size: calc(2em);
height: 100%;
}
body {
background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);
background-size: 100% auto, auto 133.3vh;
background-position: 100% 0%;
background-repeat: no-repeat, repeat-x;
height: 100%;
font-family: monospace;
perspective: 68vw;
perspective-origin: 69vw 45vw;
}
.wrapper {
position: relative;
transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vw, 5.3vw, -27.4vw);
transform-origin: top right;
padding: 1vw;
height: 75vw;
width: 100vw;
margin: 0 0 0 auto;
overflow: auto;
}
@media (min-width: 100vh) {
html {
font-size: calc(2em);
}
body {
background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);
background-size: auto 133.3vh, auto 133vh;
background-position: 100% 0%;
background-repeat: no-repeat, repeat-x;
font-family: monospace;
perspective: 68vh;
perspective-origin: calc(100vw - 31vh) 45vh;
}
.wrapper {
transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vh, 5.3vh, -27.4vh);
transform-origin: top right;
color: #DA0;
padding: 1vh;
width: 100vh;
height: 75vh;
}
}
/*# sourceMappingURL=bundle.css.map */

View file

@ -0,0 +1 @@
{"version":3,"sources":["bundle.css","basics.less","layout.less"],"names":[],"mappings":"AAAA,wBAAwB;ACCxB;;;EACE,oBAAA;EACA,UAAA;EACA,WAAA;EACA,6BAAA;EACA,qBAAA;CDGD;ACDD;EACE,uBAAA;EACA,aAAA;EACA,iBAAA;EACA,YAAA;CDGD;ACDD;EACE,eAAA;CDGD;ACFC;EACE,uBAAA;EACA,eAAA;CDIH;AACD,UAAU;AEtBV;EACE,qBAAA;EACA,aAAA;CFwBD;AErBD;EACE,wEAAA;EACA,yCAAA;EACA,6BAAA;EACA,uCAAA;EACA,aAAA;EACA,uBAAA;EACA,kBAAA;EACA,8BAAA;CFuBD;AErBD;EACE,mBAAA;EACA,kGAAA;EACA,4BAAA;EACA,aAAA;EACA,aAAA;EACA,aAAA;EACA,mBAAA;EACA,eAAA;CFuBD;AErBD;EACE;IACE,qBAAA;GFuBD;EErBD;IACE,wEAAA;IACA,0CAAA;IACA,6BAAA;IACA,uCAAA;IACA,uBAAA;IACA,kBAAA;IACA,4CAAA;GFuBD;EErBD;IACE,kGAAA;IACA,4BAAA;IACA,YAAA;IACA,aAAA;IACA,aAAA;IACA,aAAA;GFuBD;CACF","file":"bundle.css","sourcesContent":["/* micro styles reset */\n*,\n:before,\n:after {\n box-sizing: inherit;\n margin: 0;\n padding: 0;\n transform-style: preserve-3d;\n font-family: inherit;\n}\nhtml {\n box-sizing: border-box;\n height: 100%;\n overflow: hidden;\n color: #DA0;\n}\na {\n color: inherit;\n}\na:hover {\n background-color: #DA0;\n color: #20282a;\n}\n/*layout*/\nhtml {\n font-size: calc(2em);\n height: 100%;\n}\nbody {\n background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);\n background-size: 100% auto, auto 133.3vh;\n background-position: 100% 0%;\n background-repeat: no-repeat, repeat-x;\n height: 100%;\n font-family: monospace;\n perspective: 68vw;\n perspective-origin: 69vw 45vw;\n}\n.wrapper {\n position: relative;\n transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vw, 5.3vw, -27.4vw);\n transform-origin: top right;\n padding: 1vw;\n height: 75vw;\n width: 100vw;\n margin: 0 0 0 auto;\n overflow: auto;\n}\n@media (min-width: 100vh) {\n html {\n font-size: calc(2em);\n }\n body {\n background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);\n background-size: auto 133.3vh, auto 133vh;\n background-position: 100% 0%;\n background-repeat: no-repeat, repeat-x;\n font-family: monospace;\n perspective: 68vh;\n perspective-origin: calc(100vw - 31vh) 45vh;\n }\n .wrapper {\n transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vh, 5.3vh, -27.4vh);\n transform-origin: top right;\n color: #DA0;\n padding: 1vh;\n width: 100vh;\n height: 75vh;\n }\n}\n","/* micro styles reset */\n*, :before, :after {\n box-sizing: inherit;\n margin: 0;\n padding: 0;\n transform-style: preserve-3d;\n font-family: inherit;\n}\nhtml {\n box-sizing: border-box;\n height: 100%;\n overflow: hidden;\n color: #DA0;\n}\na {\n color: inherit;\n &:hover {\n background-color: #DA0;\n color: #20282a;\n }\n}\n","/*layout*/\nhtml {\n font-size: calc(0.7em + 1.3vw);\n height: 100%;\n}\n\nbody {\n background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);\n background-size: 100% auto, auto 133.3vh;\n background-position: 100% 0%;\n background-repeat: no-repeat, repeat-x;\n height: 100%;\n font-family: monospace;\n perspective: 68vw;\n perspective-origin: 69vw 45vw;\n}\n.wrapper {\n position: relative;\n transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vw, 5.3vw, -27.4vw);\n transform-origin: top right;\n padding: 1vw;\n height: 75vw;\n width: 100vw;\n margin: 0 0 0 auto;\n overflow: auto;\n}\n@media (min-width: 100vh) {\n html {\n font-size: calc(0.7em + 1.3vh);\n }\n body {\n background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);\n background-size: auto 133.3vh, auto 133vh;\n background-position: 100% 0%;\n background-repeat: no-repeat, repeat-x;\n font-family: monospace;\n perspective: 68vh;\n perspective-origin: ~'calc(100vw - 31vh) 45vh';\n }\n .wrapper {\n transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vh, 5.3vh, -27.4vh);\n transform-origin: top right;\n color: #DA0;\n padding: 1vh;\n width: 100vh;\n height: 75vh;\n }\n}\n"]}

Binary file not shown.

After

Width:  |  Height:  |  Size: 981 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

View file

@ -0,0 +1,21 @@
/* micro styles reset */
*, :before, :after {
box-sizing: inherit;
margin: 0;
padding: 0;
transform-style: preserve-3d;
font-family: inherit;
}
html {
box-sizing: border-box;
height: 100%;
overflow: hidden;
color: #DA0;
}
a {
color: inherit;
&:hover {
background-color: #DA0;
color: #20282a;
}
}

View file

@ -0,0 +1,2 @@
@import 'basics';
@import 'layout';

View file

@ -0,0 +1,48 @@
/*layout*/
html {
font-size: calc(0.7em + 1.3vw);
height: 100%;
}
body {
background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);
background-size: 100% auto, auto 133.3vh;
background-position: 100% 0%;
background-repeat: no-repeat, repeat-x;
height: 100%;
font-family: monospace;
perspective: 68vw;
perspective-origin: 69vw 45vw;
}
.wrapper {
position: relative;
transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vw, 5.3vw, -27.4vw);
transform-origin: top right;
padding: 1vw;
height: 75vw;
width: 100vw;
margin: 0 0 0 auto;
overflow: auto;
}
@media (min-width: 100vh) {
html {
font-size: calc(0.7em + 1.3vh);
}
body {
background-image: url(../img/workstation.jpg), url(../img/gradient.jpg);
background-size: auto 133.3vh, auto 133vh;
background-position: 100% 0%;
background-repeat: no-repeat, repeat-x;
font-family: monospace;
perspective: 68vh;
perspective-origin: ~'calc(100vw - 31vh) 45vh';
}
.wrapper {
transform: rotateZ(1.3deg) rotateX(-8.8deg) rotateY(-9.3deg) translate3d(-14.9vh, 5.3vh, -27.4vh);
transform-origin: top right;
color: #DA0;
padding: 1vh;
width: 100vh;
height: 75vh;
}
}

21
src/themes/eos/theme.toml Normal file
View file

@ -0,0 +1,21 @@
# theme.toml template for a Hugo theme
# See https://github.com/spf13/hugoThemes#themetoml for an example
name = "Eos"
license = "MIT"
licenselink = "https://github.com/yourname/yourtheme/blob/master/LICENSE.md"
description = ""
homepage = "http://siteforthistheme.com/"
tags = ["", ""]
features = ["", ""]
min_version = 0.18
[author]
name = ""
homepage = ""
# If porting an existing theme
[original]
name = ""
homepage = ""
repo = ""

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 KiB

2667
yarn.lock Normal file

File diff suppressed because it is too large Load diff