make website lighter
This commit is contained in:
parent
3ca40238fb
commit
ddda5eef23
24 changed files with 503 additions and 157 deletions
|
@ -16,6 +16,7 @@
|
||||||
title: ./full.hacker
|
title: ./full.hacker
|
||||||
author: Ayo
|
author: Ayo
|
||||||
attribution: "2018 © by Full Hacker"
|
attribution: "2018 © by Full Hacker"
|
||||||
|
bugreport_url: "https://github.com/fullhacker/fullhacker.github.io/issues/new"
|
||||||
website: fullhacker.github.io
|
website: fullhacker.github.io
|
||||||
email: fullhackerblog@gmail.com
|
email: fullhackerblog@gmail.com
|
||||||
description: >- # this means to ignore newlines until "baseurl:"
|
description: >- # this means to ignore newlines until "baseurl:"
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
---
|
|
||||||
title: "You feel like a fraud, I know"
|
|
||||||
---
|
|
||||||
|
|
||||||
Let me gues...
|
|
||||||
|
|
||||||
You feel like you've fooled everyone at least once.
|
|
18
_drafts/hello-world.md
Normal file
18
_drafts/hello-world.md
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
---
|
||||||
|
title: "(draft) Hello, World! A New Site for Dev Life Hacks!"
|
||||||
|
permalink: '/hello-world-draft'
|
||||||
|
notes: 'the goal of this post is to define the target audience of the whole blog, which are Mid-Level Web Developers'
|
||||||
|
---
|
||||||
|
|
||||||
|
It's kind of getting old, I know.
|
||||||
|
|
||||||
|
A new blog... *again?* What's this all about?
|
||||||
|
|
||||||
|
Well, to put it simply, **Full Hacker** is like [Life Hacker](https://lifehacker.com), but for developers (and other IT professionals). This will be a place to share "Life Hacks" that we want to share to one another... like automation, new tech, tools, setups, and all sorts of time-saving tips and tricks.
|
||||||
|
|
||||||
|
Who are these developers I'm talking about, you ask? Let's get into that in another post. ;)
|
||||||
|
|
||||||
|
Though, let me clear this one thing upfront: This is not a place to ask coding questions. We got [Stack Overflow](https://stackoverflow.com) for that already. Instead, here, we just share secrets that make our work and life easier as developers.
|
||||||
|
|
||||||
|
Contributing is simple. Just hit us up with an email here: [FullHackerBlog@gmail.com](mailto:fullhackerblog@gmail.com) or head over to our place at [Github](https://github.com/fullhacker/fullhacker.github.io) and check the [Issues Page](https://github.com/fullhacker/fullhacker.github.io/issues). There are still lots of work to do in building this site and everyone is welcome to join. :)
|
||||||
|
|
8
_drafts/you-feel-like-a-fraud.md
Normal file
8
_drafts/you-feel-like-a-fraud.md
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
---
|
||||||
|
title: "(draft) You feel like a fraud, I know"
|
||||||
|
permalink: "/fraud"
|
||||||
|
---
|
||||||
|
|
||||||
|
Let me guess...
|
||||||
|
|
||||||
|
You feel like you've fooled everyone at least once.
|
|
@ -38,7 +38,7 @@
|
||||||
<div class="footer-col footer-col-3">
|
<div class="footer-col footer-col-3">
|
||||||
<ul class="desc-list">
|
<ul class="desc-list">
|
||||||
<li>{{ site.description | escape }}</li>
|
<li>{{ site.description | escape }}</li>
|
||||||
<li class="rss-subscribe">Subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a> or <a href="https://github.com/fullhacker/fullhacker.github.io/issues/new">report a bug</a></li>
|
<li class="rss-subscribe">Subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a> or <a href="{{ site.bugreport_url }}">report a bug</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -6,14 +6,15 @@ layout: default
|
||||||
<header class="post-header">
|
<header class="post-header">
|
||||||
<p class="post-meta">
|
<p class="post-meta">
|
||||||
<time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
|
<time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
|
||||||
|
{% if page.author %}
|
||||||
|
<span itemprop="author" itemscope itemtype="http://schema.org/Person"><span class="p-author h-card" itemprop="name">{{ page.author }}</span></span> •
|
||||||
|
{% endif %}
|
||||||
{% assign date_format = site.minima.date_format | default: "%b %-d, %Y" %}
|
{% assign date_format = site.minima.date_format | default: "%b %-d, %Y" %}
|
||||||
{{ page.date | date: date_format }}
|
{{ page.date | date: date_format }}
|
||||||
</time>
|
</time>
|
||||||
{% if page.author %}
|
</p>
|
||||||
• <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span class="p-author h-card" itemprop="name">{{ page.author }}</span></span>
|
|
||||||
{% endif %}</p>
|
|
||||||
|
|
||||||
<h1 class="post-title p-name" itemprop="name headline">{{ page.title | escape }}</h1>
|
<h3 class="post-title p-name" itemprop="name headline">{{ page.title | escape }}</h3>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<div class="post-content e-content" itemprop="articleBody">
|
<div class="post-content e-content" itemprop="articleBody">
|
||||||
|
|
194
assets/main.scss
194
assets/main.scss
|
@ -3,171 +3,79 @@
|
||||||
---
|
---
|
||||||
|
|
||||||
@import "minima";
|
@import "minima";
|
||||||
@import url(type-js.css);
|
|
||||||
@import url(vim.css);
|
|
||||||
|
|
||||||
html,
|
html,
|
||||||
body {
|
body {
|
||||||
font: 300 21px Lato, 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
|
||||||
color: #ddd;
|
|
||||||
background-color: #333;
|
|
||||||
-webkit-box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
-webkit-box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
||||||
-moz-box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
-moz-box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
||||||
box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
||||||
text-shadow: 0 1px 3px rgba(0,0,0,0.5);
|
/* text-shadow: 0 1px 1px rgba(0,0,0,0.3); */
|
||||||
-webkit-font-feature-settings: "kern" 1;
|
-webkit-font-feature-settings: "kern" 1;
|
||||||
-moz-font-feature-settings: "kern" 1;
|
-moz-font-feature-settings: "kern" 1;
|
||||||
-o-font-feature-settings: "kern" 1;
|
-o-font-feature-settings: "kern" 1;
|
||||||
font-feature-settings: "kern" 1;
|
font-feature-settings: "kern" 1;
|
||||||
font-kerning: normal;
|
font-kerning: normal;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
color: rgba(0,0,0,.84);
|
||||||
|
font-size: 20px;
|
||||||
|
line-height: 1.4;
|
||||||
|
font-family: medium-content-sans-serif-font,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;
|
||||||
|
letter-spacing: 0;
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
text-rendering: optimizeLegibility;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
}
|
}
|
||||||
|
|
||||||
.site-title {
|
header.site-header {
|
||||||
font-size: 50px;
|
position: fixed !important;
|
||||||
color: white !important;
|
top: 0;
|
||||||
text-shadow: 0px 4px 3px rgba(0,0,0,0.4),
|
width: 100%;
|
||||||
0px 8px 13px rgba(0,0,0,0.1),
|
|
||||||
0px 18px 23px rgba(0,0,0,0.1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-content {
|
header.site-header,
|
||||||
background-color: white;
|
footer.site-footer {
|
||||||
width: 60%;
|
background: rgba(255,255,255,.97)!important;
|
||||||
margin: 30px auto !important;
|
}
|
||||||
background-color: #444 !important;
|
|
||||||
-webkit-border-radius: 10px;
|
div.site-body {
|
||||||
-moz-border-radius: 10px;
|
padding-top: 60px;
|
||||||
border-radius: 10px;
|
}
|
||||||
padding: 30px;
|
|
||||||
-webkit-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
|
article .post-content p {
|
||||||
-moz-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
|
--x-height-multiplier: 0.375;
|
||||||
box-shadow: 0 3px 10px rgba(0,0,0,0.1);
|
--baseline-multiplier: 0.17;
|
||||||
|
font-family: medium-content-serif-font,Georgia,Cambria,"Times New Roman",Times,serif;
|
||||||
|
letter-spacing: .01rem;
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 21px;
|
||||||
|
line-height: 1.58;
|
||||||
|
letter-spacing: -.003em;
|
||||||
|
margin-top: 29px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-content .wrapper {
|
.page-content .wrapper {
|
||||||
padding: 0px;
|
padding: 0 20px;
|
||||||
margin: 0px auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-content p {
|
.post-title {
|
||||||
font-size: 16.96px;
|
--x-height-multiplier: 0.342;
|
||||||
line-height: 26px;
|
--baseline-multiplier: 0.22;
|
||||||
|
font-family: "Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Arial,sans-serif;
|
||||||
|
letter-spacing: -.02em;
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
letter-spacing: 0;
|
||||||
|
font-size: 34px;
|
||||||
|
margin-left: -2.63px;
|
||||||
|
line-height: 1.04;
|
||||||
|
letter-spacing: -.015em;
|
||||||
|
padding-top: 5px!important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.site-nav .page-link.current {
|
.desc-list {
|
||||||
background-color: #fc0;
|
|
||||||
color: #222;
|
|
||||||
-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 1px 5px rgba(0,0,0,0.5);
|
|
||||||
-moz-box-shadow: inset 0 1px 0 rgba(255,255,255,0.5),0 1px 5px rgba(0,0,0,0.5);
|
|
||||||
box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 1px 5px rgba(0,0,0,0.5);
|
|
||||||
text-shadow: 0 1px 0 rgba(255,255,255,0.3);
|
|
||||||
}
|
|
||||||
|
|
||||||
a, a:visited, .site-nav .page-link {
|
|
||||||
color: #fc0;
|
|
||||||
text-decoration: none;
|
|
||||||
-webkit-transition: all 0.25s;
|
|
||||||
-moz-transition: all 0.25s;
|
|
||||||
-o-transition: all 0.25s;
|
|
||||||
transition: all 0.25s;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 600px) {
|
|
||||||
.site-nav {
|
|
||||||
background-color: transparent !important;
|
|
||||||
border: 0px !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.site-nav .page-link:hover {
|
|
||||||
color: #fc0;
|
|
||||||
background-color: #252525;
|
|
||||||
-webkit-box-shadow: inset 0 1px 3px rgba(0,0,0,0.5), 0 1px 0 rgba(255,255,255,0.1);
|
|
||||||
-moz-box-shadow: inset 0 1px 3px rgba(0,0,0,0.5),0 1px 0 rgba(255,255,255,0.1);
|
|
||||||
box-shadow: inset 0 1px 3px rgba(0,0,0,0.5), 0 1px 0 rgba(255,255,255,0.1);
|
|
||||||
text-shadow: 0 1px 3px rgba(0,0,0,0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
.site-nav .page-link {
|
|
||||||
-webkit-border-radius: 5px;
|
|
||||||
-moz-border-radius: 5px;
|
|
||||||
border-radius: 5px;
|
|
||||||
font-weight: 900;
|
|
||||||
font-size: 0.75em;
|
|
||||||
padding: 0.5em 1em;
|
|
||||||
text-shadow: none;
|
|
||||||
text-transform: uppercase;
|
|
||||||
-webkit-transition: all 0.25s;
|
|
||||||
-moz-transition: all 0.25s;
|
|
||||||
-o-transition: all 0.25s;
|
|
||||||
transition: all 0.25s;
|
|
||||||
}
|
|
||||||
|
|
||||||
a.post-link:hover {
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
a.post-link, h1.post-title {
|
|
||||||
color: #ddd;
|
|
||||||
font-weight: bold;
|
|
||||||
display: block;
|
|
||||||
font-size: 2em;
|
|
||||||
-webkit-margin-after: 0.67em;
|
|
||||||
-webkit-margin-start: 0px;
|
|
||||||
-webkit-margin-end: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1.post-title {
|
|
||||||
color: #fff;
|
|
||||||
font-size: 32px;
|
|
||||||
}
|
|
||||||
|
|
||||||
a:hover {
|
|
||||||
color: #f90;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.desc-list, .contact-list, .social-media-list {
|
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin-left: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-content {
|
|
||||||
}
|
|
||||||
|
|
||||||
.footer-col-wrapper {
|
|
||||||
color: #ddd
|
|
||||||
}
|
|
||||||
|
|
||||||
.site-header, .site-footer {
|
|
||||||
background: #2b2b2b;
|
|
||||||
border: 0px;
|
|
||||||
padding: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.site-desc {
|
|
||||||
top: 0px;
|
|
||||||
color: #efefef;
|
|
||||||
text-shadow: 0px 4px 3px rgba(0,0,0,0.4),
|
|
||||||
0px 8px 13px rgba(0,0,0,0.1),
|
|
||||||
0px 18px 23px rgba(0,0,0,0.1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.site-desc-wrapper {
|
|
||||||
float:left;
|
|
||||||
position: relative;
|
|
||||||
top: 0;
|
|
||||||
left: 90px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.site-title-wrapper {
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
.site-title-desc-wrapper {
|
|
||||||
float: left;
|
|
||||||
width: 200px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**/
|
|
||||||
|
|
||||||
|
|
20
hacker/_includes.hacker/disqus_comments.html
Normal file
20
hacker/_includes.hacker/disqus_comments.html
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
{% if page.comments != false and jekyll.environment == "production" %}
|
||||||
|
|
||||||
|
<div id="disqus_thread"></div>
|
||||||
|
<script>
|
||||||
|
var disqus_config = function () {
|
||||||
|
this.page.url = '{{ page.url | absolute_url }}';
|
||||||
|
this.page.identifier = '{{ page.url | absolute_url }}';
|
||||||
|
};
|
||||||
|
|
||||||
|
(function() {
|
||||||
|
var d = document, s = d.createElement('script');
|
||||||
|
|
||||||
|
s.src = 'https://{{ site.disqus.shortname }}.disqus.com/embed.js';
|
||||||
|
|
||||||
|
s.setAttribute('data-timestamp', +new Date());
|
||||||
|
(d.head || d.body).appendChild(s);
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
|
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript>
|
||||||
|
{% endif %}
|
48
hacker/_includes.hacker/footer.html
Normal file
48
hacker/_includes.hacker/footer.html
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
<footer class="site-footer h-card">
|
||||||
|
<data class="u-url" href="{{ "/" | relative_url }}"></data>
|
||||||
|
|
||||||
|
<div class="wrapper">
|
||||||
|
|
||||||
|
<div class="footer-col-wrapper">
|
||||||
|
<div class="footer-col footer-col-1">
|
||||||
|
<ul class="contact-list">
|
||||||
|
<li class="p-name">
|
||||||
|
{% if site.attribution %}
|
||||||
|
{{ site.attribution }}
|
||||||
|
{% else %}
|
||||||
|
{{ site.title | escape }}
|
||||||
|
{% endif %}
|
||||||
|
</li>
|
||||||
|
{% if site.email %}
|
||||||
|
<li><a class="u-email" href="mailto:{{ site.email }}">{{ site.email }}</a></li>
|
||||||
|
{% endif %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="footer-col footer-col-2">
|
||||||
|
<ul class="social-media-list">
|
||||||
|
{% if site.github_username %}
|
||||||
|
<li>
|
||||||
|
{% include icon-github.html username=site.github_username %}
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if site.twitter_username %}
|
||||||
|
<li>
|
||||||
|
{% include icon-twitter.html username=site.twitter_username %}
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="footer-col footer-col-3">
|
||||||
|
<ul class="desc-list">
|
||||||
|
<li>{{ site.description | escape }}</li>
|
||||||
|
<li class="rss-subscribe">Subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a> or <a href="https://github.com/fullhacker/fullhacker.github.io/issues/new">report a bug</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</footer>
|
11
hacker/_includes.hacker/google-analytics.html
Normal file
11
hacker/_includes.hacker/google-analytics.html
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<script>
|
||||||
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||||
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||||
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||||
|
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
||||||
|
|
||||||
|
ga('create', '{{ site.google_analytics }}', 'auto');
|
||||||
|
ga('send', 'pageview');
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
16
hacker/_includes.hacker/head.html
Normal file
16
hacker/_includes.hacker/head.html
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<link rel="stylesheet" href="{{ "/assets/main.css" | relative_url }}">
|
||||||
|
<link rel="alternate" type="application/rss+xml" title="{{ site.title | escape }}" href="{{ "/feed.xml" | relative_url }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="//fonts.googleapis.com/css?family=Lato" />
|
||||||
|
{% if jekyll.environment == 'production' and site.google_analytics %}
|
||||||
|
{% include google-analytics.html %}
|
||||||
|
{% endif %}
|
||||||
|
<script
|
||||||
|
src="https://code.jquery.com/jquery-3.2.1.min.js"
|
||||||
|
integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4="
|
||||||
|
crossorigin="anonymous"></script>
|
||||||
|
<script src="{{ "/assets/type-js.js" | relative_url }}"></script>
|
||||||
|
</head>
|
49
hacker/_includes.hacker/header.html
Normal file
49
hacker/_includes.hacker/header.html
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
<header class="site-header" role="banner">
|
||||||
|
|
||||||
|
<div class="wrapper">
|
||||||
|
{% assign default_paths = site.pages | map: "path" %}
|
||||||
|
{% assign page_paths = site.header_pages | default: default_paths %}
|
||||||
|
<div class="type-js site-title-wrapper">
|
||||||
|
<a href="{{ '/' | relative_url }}" class="text-js site-title">{{ site.title }}</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% if page_paths %}
|
||||||
|
<nav class="site-nav">
|
||||||
|
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
|
||||||
|
<label for="nav-trigger">
|
||||||
|
<span class="menu-icon">
|
||||||
|
<svg viewBox="0 0 18 15" width="18px" height="15px">
|
||||||
|
<path fill="#424242" d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.031C17.335,0,18,0.665,18,1.484L18,1.484z"/>
|
||||||
|
<path fill="#424242" d="M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0c0-0.82,0.665-1.484,1.484-1.484 h15.031C17.335,6.031,18,6.696,18,7.516L18,7.516z"/>
|
||||||
|
<path fill="#424242" d="M18,13.516C18,14.335,17.335,15,16.516,15H1.484C0.665,15,0,14.335,0,13.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.031C17.335,12.031,18,12.696,18,13.516L18,13.516z"/>
|
||||||
|
</svg>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
|
||||||
|
<!--div class="trigger">
|
||||||
|
{% for path in page_paths %}
|
||||||
|
{% assign my_page = site.pages | where: "path", path | first %}
|
||||||
|
{% if my_page.title %}
|
||||||
|
{% if my_page.url == page.url %}
|
||||||
|
{% assign current = 'current' %}
|
||||||
|
{% endif %}
|
||||||
|
<a class="page-link {{ current }}" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
</div-->
|
||||||
|
<div class="trigger">
|
||||||
|
{% for link in site.navigation %}
|
||||||
|
{% assign current = nil %}
|
||||||
|
{% if page.url == link.url%}
|
||||||
|
{% assign current = 'current' %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<a class="page-link {{ current }}" href="{{ link.url | relative_url }}">{{ link.text }}</a>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
|
1
hacker/_includes.hacker/icon-github.html
Normal file
1
hacker/_includes.hacker/icon-github.html
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<a class="u-url" rel="me" href="https://github.com/{{ include.username }}"><span class="icon icon--github">{% include icon-github.svg %}</span><span class="username">{{ include.username }}</span></a>
|
1
hacker/_includes.hacker/icon-github.svg
Normal file
1
hacker/_includes.hacker/icon-github.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg viewBox="0 0 16 16" width="16px" height="16px"><path fill="#828282" d="M7.999,0.431c-4.285,0-7.76,3.474-7.76,7.761 c0,3.428,2.223,6.337,5.307,7.363c0.388,0.071,0.53-0.168,0.53-0.374c0-0.184-0.007-0.672-0.01-1.32 c-2.159,0.469-2.614-1.04-2.614-1.04c-0.353-0.896-0.862-1.135-0.862-1.135c-0.705-0.481,0.053-0.472,0.053-0.472 c0.779,0.055,1.189,0.8,1.189,0.8c0.692,1.186,1.816,0.843,2.258,0.645c0.071-0.502,0.271-0.843,0.493-1.037 C4.86,11.425,3.049,10.76,3.049,7.786c0-0.847,0.302-1.54,0.799-2.082C3.768,5.507,3.501,4.718,3.924,3.65 c0,0,0.652-0.209,2.134,0.796C6.677,4.273,7.34,4.187,8,4.184c0.659,0.003,1.323,0.089,1.943,0.261 c1.482-1.004,2.132-0.796,2.132-0.796c0.423,1.068,0.157,1.857,0.077,2.054c0.497,0.542,0.798,1.235,0.798,2.082 c0,2.981-1.814,3.637-3.543,3.829c0.279,0.24,0.527,0.713,0.527,1.437c0,1.037-0.01,1.874-0.01,2.129 c0,0.208,0.14,0.449,0.534,0.373c3.081-1.028,5.302-3.935,5.302-7.362C15.76,3.906,12.285,0.431,7.999,0.431z"/></svg>
|
After Width: | Height: | Size: 953 B |
1
hacker/_includes.hacker/icon-twitter.html
Normal file
1
hacker/_includes.hacker/icon-twitter.html
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<a class="u-url" rel="me" href="https://twitter.com/{{ include.username }}"><span class="icon icon--twitter">{% include icon-twitter.svg %}</span><span class="username">{{ include.username }}</span></a>
|
1
hacker/_includes.hacker/icon-twitter.svg
Normal file
1
hacker/_includes.hacker/icon-twitter.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg viewBox="0 0 16 16" width="16px" height="16px"><path fill="#828282" d="M15.969,3.058c-0.586,0.26-1.217,0.436-1.878,0.515c0.675-0.405,1.194-1.045,1.438-1.809c-0.632,0.375-1.332,0.647-2.076,0.793c-0.596-0.636-1.446-1.033-2.387-1.033c-1.806,0-3.27,1.464-3.27,3.27 c0,0.256,0.029,0.506,0.085,0.745C5.163,5.404,2.753,4.102,1.14,2.124C0.859,2.607,0.698,3.168,0.698,3.767 c0,1.134,0.577,2.135,1.455,2.722C1.616,6.472,1.112,6.325,0.671,6.08c0,0.014,0,0.027,0,0.041c0,1.584,1.127,2.906,2.623,3.206 C3.02,9.402,2.731,9.442,2.433,9.442c-0.211,0-0.416-0.021-0.615-0.059c0.416,1.299,1.624,2.245,3.055,2.271 c-1.119,0.877-2.529,1.4-4.061,1.4c-0.264,0-0.524-0.015-0.78-0.046c1.447,0.928,3.166,1.469,5.013,1.469 c6.015,0,9.304-4.983,9.304-9.304c0-0.142-0.003-0.283-0.009-0.423C14.976,4.29,15.531,3.714,15.969,3.058z"/></svg>
|
After Width: | Height: | Size: 814 B |
26
hacker/_layouts.hacker/default.html
Normal file
26
hacker/_layouts.hacker/default.html
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="{{ page.lang | default: site.lang | default: "en" }}">
|
||||||
|
|
||||||
|
{% include head.html %}
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div class="site-container">
|
||||||
|
|
||||||
|
{% include header.html %}
|
||||||
|
|
||||||
|
<div class="site-body">
|
||||||
|
<main class="page-content" aria-label="Content">
|
||||||
|
<div class="wrapper">
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% include footer.html %}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
28
hacker/_layouts.hacker/home.html
Normal file
28
hacker/_layouts.hacker/home.html
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
---
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
|
||||||
|
<div class="home">
|
||||||
|
{% if page.title %}
|
||||||
|
<h1 class="page-heading">{{ page.title }}</h1>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{{ content }}
|
||||||
|
|
||||||
|
{% if site.posts.size > 0 %}
|
||||||
|
<h2 class="post-list-heading">{{ page.list_title }}</h2>
|
||||||
|
<ul class="post-list">
|
||||||
|
{% for post in site.posts %}
|
||||||
|
<li>
|
||||||
|
{% assign date_format = site.minima.date_format | default: "%b %-d, %Y" %}
|
||||||
|
<span class="post-meta">{{ post.date | date: date_format }}</span>
|
||||||
|
<h3>
|
||||||
|
<a class="post-link" href="{{ post.url | relative_url }}">{{ post.title | escape }}</a>
|
||||||
|
</h3>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
</div>
|
14
hacker/_layouts.hacker/page.html
Normal file
14
hacker/_layouts.hacker/page.html
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
---
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
<article class="post">
|
||||||
|
|
||||||
|
<header class="post-header">
|
||||||
|
<h1 class="post-title">{{ page.title | escape }}</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<div class="post-content">
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</article>
|
28
hacker/_layouts.hacker/post.html
Normal file
28
hacker/_layouts.hacker/post.html
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
---
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
<article class="post h-entry" itemscope itemtype="http://schema.org/BlogPosting">
|
||||||
|
|
||||||
|
<header class="post-header">
|
||||||
|
<p class="post-meta">
|
||||||
|
<time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
|
||||||
|
{% assign date_format = site.minima.date_format | default: "%b %-d, %Y" %}
|
||||||
|
{{ page.date | date: date_format }}
|
||||||
|
</time>
|
||||||
|
{% if page.author %}
|
||||||
|
• <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span class="p-author h-card" itemprop="name">{{ page.author }}</span></span>
|
||||||
|
{% endif %}</p>
|
||||||
|
|
||||||
|
<h1 class="post-title p-name" itemprop="name headline">{{ page.title | escape }}</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<div class="post-content e-content" itemprop="articleBody">
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% if site.disqus.shortname %}
|
||||||
|
{% include disqus_comments.html %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<a class="u-url" href="{{ page.url | relative_url }}" hidden></a>
|
||||||
|
</article>
|
173
hacker/assets.hacker/main.scss
Normal file
173
hacker/assets.hacker/main.scss
Normal file
|
@ -0,0 +1,173 @@
|
||||||
|
---
|
||||||
|
# Only the main Sass file needs front matter (the dashes are enough)
|
||||||
|
---
|
||||||
|
|
||||||
|
@import "minima";
|
||||||
|
@import url(type-js.css);
|
||||||
|
@import url(vim.css);
|
||||||
|
|
||||||
|
html,
|
||||||
|
body {
|
||||||
|
font: 300 21px Lato, 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||||
|
color: #ddd;
|
||||||
|
background-color: #333;
|
||||||
|
-webkit-box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
||||||
|
-moz-box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
||||||
|
box-shadow: inset 0 3px 30px rgba(0,0,0,0.3);
|
||||||
|
text-shadow: 0 1px 3px rgba(0,0,0,0.5);
|
||||||
|
-webkit-font-feature-settings: "kern" 1;
|
||||||
|
-moz-font-feature-settings: "kern" 1;
|
||||||
|
-o-font-feature-settings: "kern" 1;
|
||||||
|
font-feature-settings: "kern" 1;
|
||||||
|
font-kerning: normal;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-title {
|
||||||
|
font-size: 50px;
|
||||||
|
color: white !important;
|
||||||
|
text-shadow: 0px 4px 3px rgba(0,0,0,0.4),
|
||||||
|
0px 8px 13px rgba(0,0,0,0.1),
|
||||||
|
0px 18px 23px rgba(0,0,0,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-content {
|
||||||
|
background-color: white;
|
||||||
|
width: 60%;
|
||||||
|
margin: 30px auto !important;
|
||||||
|
background-color: #444 !important;
|
||||||
|
-webkit-border-radius: 10px;
|
||||||
|
-moz-border-radius: 10px;
|
||||||
|
border-radius: 10px;
|
||||||
|
padding: 30px;
|
||||||
|
-webkit-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
|
||||||
|
-moz-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
|
||||||
|
box-shadow: 0 3px 10px rgba(0,0,0,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-content .wrapper {
|
||||||
|
padding: 0px;
|
||||||
|
margin: 0px auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-content p {
|
||||||
|
font-size: 16.96px;
|
||||||
|
line-height: 26px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-nav .page-link.current {
|
||||||
|
background-color: #fc0;
|
||||||
|
color: #222;
|
||||||
|
-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 1px 5px rgba(0,0,0,0.5);
|
||||||
|
-moz-box-shadow: inset 0 1px 0 rgba(255,255,255,0.5),0 1px 5px rgba(0,0,0,0.5);
|
||||||
|
box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 1px 5px rgba(0,0,0,0.5);
|
||||||
|
text-shadow: 0 1px 0 rgba(255,255,255,0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
a, a:visited, .site-nav .page-link {
|
||||||
|
color: #fc0;
|
||||||
|
text-decoration: none;
|
||||||
|
-webkit-transition: all 0.25s;
|
||||||
|
-moz-transition: all 0.25s;
|
||||||
|
-o-transition: all 0.25s;
|
||||||
|
transition: all 0.25s;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
|
.site-nav {
|
||||||
|
background-color: transparent !important;
|
||||||
|
border: 0px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-nav .page-link:hover {
|
||||||
|
color: #fc0;
|
||||||
|
background-color: #252525;
|
||||||
|
-webkit-box-shadow: inset 0 1px 3px rgba(0,0,0,0.5), 0 1px 0 rgba(255,255,255,0.1);
|
||||||
|
-moz-box-shadow: inset 0 1px 3px rgba(0,0,0,0.5),0 1px 0 rgba(255,255,255,0.1);
|
||||||
|
box-shadow: inset 0 1px 3px rgba(0,0,0,0.5), 0 1px 0 rgba(255,255,255,0.1);
|
||||||
|
text-shadow: 0 1px 3px rgba(0,0,0,0.5);
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-nav .page-link {
|
||||||
|
-webkit-border-radius: 5px;
|
||||||
|
-moz-border-radius: 5px;
|
||||||
|
border-radius: 5px;
|
||||||
|
font-weight: 900;
|
||||||
|
font-size: 0.75em;
|
||||||
|
padding: 0.5em 1em;
|
||||||
|
text-shadow: none;
|
||||||
|
text-transform: uppercase;
|
||||||
|
-webkit-transition: all 0.25s;
|
||||||
|
-moz-transition: all 0.25s;
|
||||||
|
-o-transition: all 0.25s;
|
||||||
|
transition: all 0.25s;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.post-link:hover {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
a.post-link, h1.post-title {
|
||||||
|
color: #ddd;
|
||||||
|
font-weight: bold;
|
||||||
|
display: block;
|
||||||
|
font-size: 2em;
|
||||||
|
-webkit-margin-after: 0.67em;
|
||||||
|
-webkit-margin-start: 0px;
|
||||||
|
-webkit-margin-end: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1.post-title {
|
||||||
|
color: #fff;
|
||||||
|
font-size: 32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
color: #f90;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.desc-list, .contact-list, .social-media-list {
|
||||||
|
list-style: none;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-content {
|
||||||
|
}
|
||||||
|
|
||||||
|
.footer-col-wrapper {
|
||||||
|
color: #ddd
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-header, .site-footer {
|
||||||
|
background: #2b2b2b;
|
||||||
|
border: 0px;
|
||||||
|
padding: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-desc {
|
||||||
|
top: 0px;
|
||||||
|
color: #efefef;
|
||||||
|
text-shadow: 0px 4px 3px rgba(0,0,0,0.4),
|
||||||
|
0px 8px 13px rgba(0,0,0,0.1),
|
||||||
|
0px 18px 23px rgba(0,0,0,0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-desc-wrapper {
|
||||||
|
float:left;
|
||||||
|
position: relative;
|
||||||
|
top: 0;
|
||||||
|
left: 90px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-title-wrapper {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.site-title-desc-wrapper {
|
||||||
|
float: left;
|
||||||
|
width: 200px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**/
|
||||||
|
|
Loading…
Reference in a new issue