diff --git a/404.md b/404.md new file mode 100644 index 0000000..46ed1c8 --- /dev/null +++ b/404.md @@ -0,0 +1,6 @@ +--- +layout: default +title: 404 +--- + +This page does not exist. [Go back]({{ "/" | prepend: site.baseurl | replace: '//', '/' }}). \ No newline at end of file diff --git a/README.md b/README.md index 19a5b87..6bbc389 100644 --- a/README.md +++ b/README.md @@ -1 +1,114 @@ -# pallavsen \ No newline at end of file +# The Hacker-Blog theme + +*Hacker-Blog is a minimalistic, responsive jekyll theme built for hackers. It is based on the [hacker theme](https://github.com/pages-themes/hacker) for project pages.* + +Demo: [https://ashishchaudhary.in/hacker-blog](https://ashishchaudhary.in/hacker-blog) + +### Included + +1. Pagination +2. SEO tags +3. Archive Page +4. About Page +5. RSS (`https://base-url/atom`) +6. Sitemap (`https://base-url/sitemap`) +7. Google Analytics (optional) + +## Usage + +1. Fork and Clone this repository +2. Customize your blog +3. Add a new post in `_posts/` directory with proper name format (as shown in placeholder posts) +4. Commit and push to master on a repository named ``. +5. Visit `.github.io` + +## Local Build + +If you want to see the changes before pushing the blog to Github, do a local build. + +1. [`gem install jekyll`](https://jekyllrb.com/docs/installation/#install-with-rubygems) +2. `gem install jekyll-seo-tag` +3. `gem install jekyll-paginate` +4. `gem install jekyll-sitemap` +5. (`cd` to the blog directory, then:) `jekyll serve --watch --port 8000` +6. Go to `http://0.0.0.0:8000/` in your web browser. + +*Note: In case you have set a `baseurl` different than `/` in `_config.yml`, go to `http://0.0.0.0:8000/BASEURL/` instead.* + +### Local build using docker + +```bash +docker run --rm -p 8000:8000 \ + --volume="LOCATION_OF_YOUR_JEKYLL_BLOG:/srv/jekyll" \ + -it tocttou/jekyll:3.5 \ + jekyll serve --watch --port 8000 +``` + +Replace `LOCATION_OF_YOUR_JEKYLL_BLOG` with the full path of your blog repository. Visit `http://localhost:8000/` to access the blog. + +*Note: In case you have set a `baseurl` different than `/` in `_config.yml`, go to `http://0.0.0.0:8000/BASEURL/` instead.* + +## Customizing + +### Configuration variables + +Edit the `_config.yml` file and set the following variables: + +```yml +title: [The title of your blog] +description: [A short description of your blog's purpose] +author: + name: [Your name] + email: [Your email address] + url: [URL of your website] + +baseurl: [The base url for this blog.] + +paginate: [Number of posts in one paginated section (default: 3)] +owner: [Your name] +year: [Current Year] +``` + +*Note: All links in the site are prepended with `baseurl`. Default `baseurl` is `/`. Any other baseurl can be setup like `baseurl: /hacker-blog`, which makes the site available at `http://domain.name/hacker-blog`.* + +Additionally, you may choose to set the following optional variables: + +```yml +google_analytics: [Your Google Analytics tracking ID] +``` + +### About Page + +Edit `about.md` + +### Layout + +If you would like to modify the site style: + +**HTML** + +Footer: Edit `_includes/footer.html` + +Header: Edit `_includes/header.html` + +Links in the header: Edit `_includes/links.html` + +Meta tags, blog title display, and additional CSS: Edit `_includes/head.html` + +Index page layout: Edit `_layouts/default.html` + +Post layout: Edit `_layouts/post.html` + +**CSS** + +Site wide CSS: Edit `_sass/base.scss` + +Custom CSS: Make `_sass/custom.scss` and use it. Then add `@import "custom";` to `css/main.scss` + +**404 page** + +Edit `404.md` + +## License + +CC0 1.0 Universal diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..cd68486 --- /dev/null +++ b/_config.yml @@ -0,0 +1,32 @@ +title: Hacker-Blog +description: "A Jekyll Blog Theme For Hackers" +author: + name: "SomeHacker" + email: "someone@somewebsite.somedomain" + url: "https://ashishchaudhary.in/hacker-blog" + +baseurl: / + +source: . +destination: ./_site +permalink: /:title +paginate: 3 +paginate_path: /page/:num/ + +defaults: + - + scope: + path: "" + type: "posts" + values: + layout: "post" + +future: true +plugins: + - jekyll-seo-tag + - jekyll-paginate + - jekyll-sitemap + +# Custom variables +owner : "SomeHacker" +year : "2020" diff --git a/_includes/analytics.html b/_includes/analytics.html new file mode 100644 index 0000000..708b6f4 --- /dev/null +++ b/_includes/analytics.html @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/_includes/footer.html b/_includes/footer.html new file mode 100644 index 0000000..c4638a5 --- /dev/null +++ b/_includes/footer.html @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/_includes/head.html b/_includes/head.html new file mode 100644 index 0000000..656506d --- /dev/null +++ b/_includes/head.html @@ -0,0 +1,11 @@ + + + + + + {%if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %} + + + + {% seo %} + \ No newline at end of file diff --git a/_includes/header.html b/_includes/header.html new file mode 100644 index 0000000..399bc6b --- /dev/null +++ b/_includes/header.html @@ -0,0 +1,11 @@ +
+
+ + {% assign owner_first_name = site.owner | split: " " %} +

{{ owner_first_name[0] | downcase }}@home:~$

+
+ +
+
\ No newline at end of file diff --git a/_includes/links.html b/_includes/links.html new file mode 100644 index 0000000..6c69464 --- /dev/null +++ b/_includes/links.html @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/_layouts/default.html b/_layouts/default.html new file mode 100644 index 0000000..91bb2c3 --- /dev/null +++ b/_layouts/default.html @@ -0,0 +1,42 @@ + + +{% include head.html %} + + +
+ {% include header.html %} +
+
+ {{ content }} +
+
+
+ + {% if paginator.total_pages > 1 %} + + {% endif %} {% include footer.html %} + + {% if site.google_analytics %} + {% include analytics.html %} + {% endif %} + + + \ No newline at end of file diff --git a/_layouts/page.html b/_layouts/page.html new file mode 100644 index 0000000..e7a439f --- /dev/null +++ b/_layouts/page.html @@ -0,0 +1,7 @@ +--- +layout: default +--- + +
+ {{ content }} +
\ No newline at end of file diff --git a/_layouts/post.html b/_layouts/post.html new file mode 100644 index 0000000..d6eb661 --- /dev/null +++ b/_layouts/post.html @@ -0,0 +1,9 @@ +--- +layout: default +--- + +
+

{{ page.title }}

+ + {{ content }} +
\ No newline at end of file diff --git a/_posts/2017-12-10-Another-Sample-Page.md b/_posts/2017-12-10-Another-Sample-Page.md new file mode 100644 index 0000000..476213c --- /dev/null +++ b/_posts/2017-12-10-Another-Sample-Page.md @@ -0,0 +1,124 @@ +--- +title: Another Sample Page +published: true +--- + +Text can be **bold**, _italic_, ~~strikethrough~~ or `keyword`. + +[Link to another page](another-page). + +There should be whitespace between paragraphs. + +There should be whitespace between paragraphs. We recommend including a README, or a file with information about your project. + +# [](#header-1)Header 1 + +This is a normal paragraph following a header. GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere. + +## [](#header-2)Header 2 + +> This is a blockquote following a header. +> +> When something is important enough, you do it even if the odds are not in your favor. + +### [](#header-3)Header 3 + +```js +// Javascript code with syntax highlighting. +var fun = function lang(l) { + dateformat.i18n = require('./lang/' + l) + return true; +} +``` + +```ruby +# Ruby code with syntax highlighting +GitHubPages::Dependencies.gems.each do |gem, version| + s.add_dependency(gem, "= #{version}") +end +``` + +#### [](#header-4)Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### [](#header-5)Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### [](#header-6)Header 6 + +| head1 | head two | three | +|:-------------|:------------------|:------| +| ok | good swedish fish | nice | +| out of stock | good and plenty | nice | +| ok | good `oreos` | hmm | +| ok | good `zoute` drop | yumm | + +### There's a horizontal rule below this. + +* * * + +### Here is an unordered list: + +* Item foo +* Item bar +* Item baz +* Item zip + +### And an ordered list: + +1. Item one +1. Item two +1. Item three +1. Item four + +### And a nested list: + +- level 1 item + - level 2 item + - level 2 item + - level 3 item + - level 3 item +- level 1 item + - level 2 item + - level 2 item + - level 2 item +- level 1 item + - level 2 item + - level 2 item +- level 1 item + +### Small image + +![](https://assets-cdn.github.com/images/icons/emoji/octocat.png) + +### Large image + +![](https://guides.github.com/activities/hello-world/branching.png) + + +### Definition lists can be used with HTML syntax. + +
+
Name
+
Godzilla
+
Born
+
1952
+
Birthplace
+
Japan
+
Color
+
Green
+
+ +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +``` +The final element. +``` diff --git a/_posts/2017-12-11-One-More-Sample-Page.md b/_posts/2017-12-11-One-More-Sample-Page.md new file mode 100644 index 0000000..e24836a --- /dev/null +++ b/_posts/2017-12-11-One-More-Sample-Page.md @@ -0,0 +1,124 @@ +--- +title: One More Sample Page +published: true +--- + +Text can be **bold**, _italic_, ~~strikethrough~~ or `keyword`. + +[Link to another page](another-page). + +There should be whitespace between paragraphs. + +There should be whitespace between paragraphs. We recommend including a README, or a file with information about your project. + +# [](#header-1)Header 1 + +This is a normal paragraph following a header. GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere. + +## [](#header-2)Header 2 + +> This is a blockquote following a header. +> +> When something is important enough, you do it even if the odds are not in your favor. + +### [](#header-3)Header 3 + +```js +// Javascript code with syntax highlighting. +var fun = function lang(l) { + dateformat.i18n = require('./lang/' + l) + return true; +} +``` + +```ruby +# Ruby code with syntax highlighting +GitHubPages::Dependencies.gems.each do |gem, version| + s.add_dependency(gem, "= #{version}") +end +``` + +#### [](#header-4)Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### [](#header-5)Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### [](#header-6)Header 6 + +| head1 | head two | three | +|:-------------|:------------------|:------| +| ok | good swedish fish | nice | +| out of stock | good and plenty | nice | +| ok | good `oreos` | hmm | +| ok | good `zoute` drop | yumm | + +### There's a horizontal rule below this. + +* * * + +### Here is an unordered list: + +* Item foo +* Item bar +* Item baz +* Item zip + +### And an ordered list: + +1. Item one +1. Item two +1. Item three +1. Item four + +### And a nested list: + +- level 1 item + - level 2 item + - level 2 item + - level 3 item + - level 3 item +- level 1 item + - level 2 item + - level 2 item + - level 2 item +- level 1 item + - level 2 item + - level 2 item +- level 1 item + +### Small image + +![](https://assets-cdn.github.com/images/icons/emoji/octocat.png) + +### Large image + +![](https://guides.github.com/activities/hello-world/branching.png) + + +### Definition lists can be used with HTML syntax. + +
+
Name
+
Godzilla
+
Born
+
1952
+
Birthplace
+
Japan
+
Color
+
Green
+
+ +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +``` +The final element. +``` diff --git a/_posts/2017-12-12-Sample-Page.md b/_posts/2017-12-12-Sample-Page.md new file mode 100644 index 0000000..7f020c8 --- /dev/null +++ b/_posts/2017-12-12-Sample-Page.md @@ -0,0 +1,124 @@ +--- +title: Sample Page +published: true +--- + +Text can be **bold**, _italic_, ~~strikethrough~~ or `keyword`. + +[Link to another page](another-page). + +There should be whitespace between paragraphs. + +There should be whitespace between paragraphs. We recommend including a README, or a file with information about your project. + +# [](#header-1)Header 1 + +This is a normal paragraph following a header. GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere. + +## [](#header-2)Header 2 + +> This is a blockquote following a header. +> +> When something is important enough, you do it even if the odds are not in your favor. + +### [](#header-3)Header 3 + +```js +// Javascript code with syntax highlighting. +var fun = function lang(l) { + dateformat.i18n = require('./lang/' + l) + return true; +} +``` + +```ruby +# Ruby code with syntax highlighting +GitHubPages::Dependencies.gems.each do |gem, version| + s.add_dependency(gem, "= #{version}") +end +``` + +#### [](#header-4)Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### [](#header-5)Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### [](#header-6)Header 6 + +| head1 | head two | three | +|:-------------|:------------------|:------| +| ok | good swedish fish | nice | +| out of stock | good and plenty | nice | +| ok | good `oreos` | hmm | +| ok | good `zoute` drop | yumm | + +### There's a horizontal rule below this. + +* * * + +### Here is an unordered list: + +* Item foo +* Item bar +* Item baz +* Item zip + +### And an ordered list: + +1. Item one +1. Item two +1. Item three +1. Item four + +### And a nested list: + +- level 1 item + - level 2 item + - level 2 item + - level 3 item + - level 3 item +- level 1 item + - level 2 item + - level 2 item + - level 2 item +- level 1 item + - level 2 item + - level 2 item +- level 1 item + +### Small image + +![](https://assets-cdn.github.com/images/icons/emoji/octocat.png) + +### Large image + +![](https://guides.github.com/activities/hello-world/branching.png) + + +### Definition lists can be used with HTML syntax. + +
+
Name
+
Godzilla
+
Born
+
1952
+
Birthplace
+
Japan
+
Color
+
Green
+
+ +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +``` +The final element. +``` diff --git a/_posts/2018-01-06-Yet-Another-Sample-Page.md b/_posts/2018-01-06-Yet-Another-Sample-Page.md new file mode 100644 index 0000000..ac2ac55 --- /dev/null +++ b/_posts/2018-01-06-Yet-Another-Sample-Page.md @@ -0,0 +1,124 @@ +--- +title: Yet Another Sample Page +published: true +--- + +Text can be **bold**, _italic_, ~~strikethrough~~ or `keyword`. + +[Link to another page](another-page). + +There should be whitespace between paragraphs. + +There should be whitespace between paragraphs. We recommend including a README, or a file with information about your project. + +# [](#header-1)Header 1 + +This is a normal paragraph following a header. GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere. + +## [](#header-2)Header 2 + +> This is a blockquote following a header. +> +> When something is important enough, you do it even if the odds are not in your favor. + +### [](#header-3)Header 3 + +```js +// Javascript code with syntax highlighting. +var fun = function lang(l) { + dateformat.i18n = require('./lang/' + l) + return true; +} +``` + +```ruby +# Ruby code with syntax highlighting +GitHubPages::Dependencies.gems.each do |gem, version| + s.add_dependency(gem, "= #{version}") +end +``` + +#### [](#header-4)Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### [](#header-5)Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### [](#header-6)Header 6 + +| head1 | head two | three | +|:-------------|:------------------|:------| +| ok | good swedish fish | nice | +| out of stock | good and plenty | nice | +| ok | good `oreos` | hmm | +| ok | good `zoute` drop | yumm | + +### There's a horizontal rule below this. + +* * * + +### Here is an unordered list: + +* Item foo +* Item bar +* Item baz +* Item zip + +### And an ordered list: + +1. Item one +1. Item two +1. Item three +1. Item four + +### And a nested list: + +- level 1 item + - level 2 item + - level 2 item + - level 3 item + - level 3 item +- level 1 item + - level 2 item + - level 2 item + - level 2 item +- level 1 item + - level 2 item + - level 2 item +- level 1 item + +### Small image + +![](https://assets-cdn.github.com/images/icons/emoji/octocat.png) + +### Large image + +![](https://guides.github.com/activities/hello-world/branching.png) + + +### Definition lists can be used with HTML syntax. + +
+
Name
+
Godzilla
+
Born
+
1952
+
Birthplace
+
Japan
+
Color
+
Green
+
+ +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +``` +The final element. +``` diff --git a/_sass/_default_colors.scss b/_sass/_default_colors.scss new file mode 100644 index 0000000..130127b --- /dev/null +++ b/_sass/_default_colors.scss @@ -0,0 +1,19 @@ +/* + original: https://github.com/pages-themes/hacker +*/ + +$apple-blossom: #ac4142; +$alto: #d0d0d0; +$bouquet: #aa759f; +$chelsea-cucumber: #90a959; +$cod-grey: #151515; +$conifer: #b5e853; +$dove-grey: #666; +$gallery: #eaeaea; +$grey: #888; +$gulf-stream: #75b5aa; +$hippie-blue: #6a9fb5; +$potters-clay: #8f5536; +$rajah: #f4bf75; +$raw-sienna: #d28445; +$silver-chalice: #aaa; diff --git a/_sass/base.scss b/_sass/base.scss new file mode 100644 index 0000000..b3c06a7 --- /dev/null +++ b/_sass/base.scss @@ -0,0 +1,273 @@ +/* + original: https://github.com/pages-themes/hacker +*/ + +@import "rouge-base16-dark"; +@import "default_colors"; + +$body-background: $cod-grey !default; +$body-foreground: $gallery !default; +$header: $conifer !default; +$blockquote-color: $silver-chalice !default; +$blockquote-border: $dove-grey !default; + +body { + margin: 0; + padding: 0; + background: $body-background url("../assets/bkg.png") 0 0; + color: $body-foreground; + font-size: 16px; + line-height: 1.5; + font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace; +} + +/* General & 'Reset' Stuff */ + +.container { + width: 90%; + max-width: 1000px; + margin: 0 auto; +} + + +section { + display: block; + margin: 0 0 20px 0; +} + +h1, h2, h3, h4, h5, h6 { + margin: 0 0 20px; +} + +li { + line-height: 1.4 ; +} + +/* Header,
+ header - container + h1 - project name + h2 - project description +*/ + +header { + background: rgba(0, 0, 0, 0.1); + border-bottom: 1px dashed $conifer; //header; + padding: 20px; + margin: 0 0 40px 0; +} + +.header-links { + text-align: center; +} + +.header-link { + display: inline; +} + +header h1 { + font-size: 24px; + line-height: 1.5; + margin: 0; + text-align: center; + font-weight: bold; + font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace; + color: $conifer;//$header; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1), + 0 0 5px rgba(181, 232, 83, 0.1), + 0 0 10px rgba(181, 232, 83, 0.1); + letter-spacing: -1px; + -webkit-font-smoothing: antialiased; +} + +header h2 { + font-size: 18px; + font-weight: 300; + color: #666; +} + +/* Main Content +*/ + +#main_content { + width: 100%; + -webkit-font-smoothing: antialiased; +} +section img { + max-width: 100% +} + +h1, h2, h3, h4, h5, h6 { + font-weight: normal; + font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace; + color: $header; + letter-spacing: -0.03em; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1), + 0 0 5px rgba(181, 232, 83, 0.1), + 0 0 10px rgba(181, 232, 83, 0.1); +} + +#main_content h1 { + font-size: 30px; +} + +#main_content h2 { + font-size: 24px; +} + +#main_content h3 { + font-size: 18px; +} + +#main_content h4 { + font-size: 14px; +} + +#main_content h5 { + font-size: 12px; + text-transform: uppercase; + margin: 0 0 5px 0; +} + +#main_content h6 { + font-size: 12px; + text-transform: uppercase; + color: #999; + margin: 0 0 5px 0; +} + +dt { + font-style: italic; + font-weight: bold; +} + +ul li { + list-style-image:url('../assets/bullet.png'); +} + +blockquote { + color: $blockquote-color; + padding-left: 10px; + border-left: 1px dotted $blockquote-border; +} + +pre { + background: rgba(0, 0, 0, 0.9); + border: 1px solid rgba(255, 255, 255, 0.15); + padding: 10px; + font-size: 16px; + color: #b5e853; + border-radius: 2px; + text-wrap: normal; + overflow: auto; + overflow-y: hidden; +} + +code.highlighter-rouge { + background: rgba(0,0,0,0.9); + border: 1px solid rgba(255, 255, 255, 0.15); + padding: 0px 3px; + margin: 0px -3px; + color: #aa759f; + border-radius: 2px; +} + +table { + width: 100%; + margin: 0 0 20px 0; +} + +th { + text-align: left; + border-bottom: 1px dashed #b5e853; + padding: 5px 10px; +} + +td { + padding: 5px 10px; +} + +hr { + height: 0; + border: 0; + border-bottom: 1px dashed #b5e853; + color: #b5e853; +} + +/* Buttons +*/ + +.btn { + display: inline-block; + background: -webkit-linear-gradient(top, rgba(40, 40, 40, 0.3), rgba(35, 35, 35, 0.3) 50%, rgba(10, 10, 10, 0.3) 50%, rgba(0, 0, 0, 0.3)); + padding: 8px 18px; + border-radius: 50px; + border: 2px solid rgba(0, 0, 0, 0.7); + border-bottom: 2px solid rgba(0, 0, 0, 0.7); + border-top: 2px solid rgba(0, 0, 0, 1); + color: rgba(255, 255, 255, 0.8); + font-family: Helvetica, Arial, sans-serif; + font-weight: bold; + font-size: 13px; + text-decoration: none; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.75); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05); +} + +.btn:hover { + background: -webkit-linear-gradient(top, rgba(40, 40, 40, 0.6), rgba(35, 35, 35, 0.6) 50%, rgba(10, 10, 10, 0.8) 50%, rgba(0, 0, 0, 0.8)); +} + +.btn .icon { + display: inline-block; + width: 16px; + height: 16px; + margin: 1px 8px 0 0; + float: left; +} + +.btn-github .icon { + opacity: 0.6; + background: url("../images/blacktocat.png") 0 0 no-repeat; +} + +/* Links + a, a:hover, a:visited +*/ + +a { + color: #63c0f5; + text-shadow: 0 0 5px rgba(104, 182, 255, 0.5); +} + +a:active, a:focus { + outline: 0; + border: none; + -moz-outline-style: none +} + +/* Clearfix */ + +.cf:before, .cf:after { + content:""; + display:table; +} + +.cf:after { + clear:both; +} + +.cf { + zoom:1; +} + +/* Make footer stick to bottom */ + +.pagination, footer { + height: 50px; + line-height: 50px; + text-align: center; +} + +#wrapper { + min-height: calc(100vh - 100px); +} \ No newline at end of file diff --git a/_sass/rouge-base16-dark.scss b/_sass/rouge-base16-dark.scss new file mode 100644 index 0000000..7f839e9 --- /dev/null +++ b/_sass/rouge-base16-dark.scss @@ -0,0 +1,87 @@ +/* + generated by rouge http://rouge.jneen.net/ + original base16 by Chris Kempson (https://github.com/chriskempson/base16) +*/ + +@import "default_colors"; + +.highlight { + + $plaintext: $alto !default; + $string: $chelsea-cucumber !default; + $literal: $chelsea-cucumber !default; + $keyword: $bouquet !default; + $error-foreground: $cod-grey !default; + $error-background: $apple-blossom !default; + $comment: $grey !default; + $preprocessor: $rajah !default; + $name-space: $rajah !default; + $name-attribute: $hippie-blue !default; + $operator: $rajah !default; + $keyword-type: $raw-sienna !default; + $regex: $gulf-stream !default; + $string-escape: $potters-clay !default; + $deleted: $apple-blossom !default; + $header: $hippie-blue !default; + + color: $plaintext; + + table td { padding: 5px; } + table pre { margin: 0; } + .w { + color: $plaintext; + } + .err { + color: $error-foreground; + background-color: $error-background; + } + .c, .cd, .cm, .c1, .cs { + color: $comment; + } + .cp { + color: $preprocessor; + } + .o, .ow { + color: $operator; + } + .p, .pi { + color: $plaintext; + } + .gi { + color: $string; + } + .gd { + color: $deleted; + } + .gh { + color: $header; + font-weight: bold; + } + .k, .kn, .kp, .kr, .kv { + color: $keyword; + } + .kc, .kt, .kd { + color: $keyword-type; + } + .s, .sb, .sc, .sd, .s2, .sh, .sx, .s1 { + color: $string; + } + .sr { + color: $regex; + } + .si, .se { + color: $string-escape; + } + .nt, .nn, .nc, .no{ + color: $name-space; + } + .na { + color: $name-attribute; + } + .m, .mf, .mh, .mi, .il, .mo, .mb, .mx { + color: $literal; + } + .ss { + color: $string; + } +} diff --git a/about.md b/about.md new file mode 100644 index 0000000..675b1d8 --- /dev/null +++ b/about.md @@ -0,0 +1,6 @@ +--- +layout: page +title: About +--- + +Something about me. \ No newline at end of file diff --git a/archive.md b/archive.md new file mode 100644 index 0000000..14e0c49 --- /dev/null +++ b/archive.md @@ -0,0 +1,38 @@ +--- +layout: page +title: Archive +--- + +
+ {% if site.posts[0] %} + + {% capture currentyear %}{{ 'now' | date: "%Y" }}{% endcapture %} + {% capture firstpostyear %}{{ site.posts[0].date | date: '%Y' }}{% endcapture %} + {% if currentyear == firstpostyear %} +

This year's posts

+ {% else %} +

{{ firstpostyear }}

+ {% endif %} + + {%for post in site.posts %} + {% unless post.next %} +
    + {% else %} + {% capture year %}{{ post.date | date: '%Y' }}{% endcapture %} + {% capture nyear %}{{ post.next.date | date: '%Y' }}{% endcapture %} + {% if year != nyear %} +
+

{{ post.date | date: '%Y' }}

+
    + {% endif %} + {% endunless %} +
  • + + {{ post.title }} + +
  • + {% endfor %} +
+ + {% endif %} +
\ No newline at end of file diff --git a/assets/bkg.png b/assets/bkg.png new file mode 100644 index 0000000..d10e5ca Binary files /dev/null and b/assets/bkg.png differ diff --git a/assets/bullet.png b/assets/bullet.png new file mode 100644 index 0000000..c8f8de1 Binary files /dev/null and b/assets/bullet.png differ diff --git a/atom.xml b/atom.xml new file mode 100644 index 0000000..25699bf --- /dev/null +++ b/atom.xml @@ -0,0 +1,27 @@ +--- +layout: null +--- + + + + {{ site.title | xml_escape }} + {{ site.description | xml_escape }} + {{ site.url }} + + + {{ site.author.name }} + {{ site.author.email }} + {{ site.author.url }} + + {% for post in site.posts limit:10 %} + + {{ post.title | xml_escape }} + {{ post.content | xml_escape }} + {{ post.date | date: "%a, %d %b %Y %H:%M:%S %z" }} + {{ site.url }}/{{ post.url }} + + {{ site.url }}{{ post.url }} + + {% endfor %} + + diff --git a/css/main.scss b/css/main.scss new file mode 100644 index 0000000..7377fcf --- /dev/null +++ b/css/main.scss @@ -0,0 +1,4 @@ +--- +# +--- +@import "base"; diff --git a/hacker-blog-master/.gitignore b/hacker-blog-master/.gitignore new file mode 100644 index 0000000..badbc02 --- /dev/null +++ b/hacker-blog-master/.gitignore @@ -0,0 +1,2 @@ +_site +.sass-cache diff --git a/index.html b/index.html new file mode 100644 index 0000000..2a091f2 --- /dev/null +++ b/index.html @@ -0,0 +1,13 @@ +--- +layout: default +--- + +
    + {% for post in paginator.posts %} +
  • +

    {{ post.title }}

    + +

    {{ post.content | strip_html | truncatewords:50 }}

    +
  • + {% endfor %} +
diff --git a/license.md b/license.md new file mode 100644 index 0000000..3bbbc1e --- /dev/null +++ b/license.md @@ -0,0 +1,116 @@ +CC0 1.0 Universal + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator and +subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for the +purpose of contributing to a commons of creative, cultural and scientific +works ("Commons") that the public can reliably and without fear of later +claims of infringement build upon, modify, incorporate in other works, reuse +and redistribute as freely as possible in any form whatsoever and for any +purposes, including without limitation commercial purposes. These owners may +contribute to the Commons to promote the ideal of a free culture and the +further production of creative, cultural and scientific works, or to gain +reputation or greater distribution for their Work in part through the use and +efforts of others. + +For these and/or other purposes and motivations, and without any expectation +of additional consideration or compensation, the person associating CC0 with a +Work (the "Affirmer"), to the extent that he or she is an owner of Copyright +and Related Rights in the Work, voluntarily elects to apply CC0 to the Work +and publicly distribute the Work under its terms, with knowledge of his or her +Copyright and Related Rights in the Work and the meaning and intended legal +effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not limited +to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, communicate, + and translate a Work; + + ii. moral rights retained by the original author(s) and/or performer(s); + + iii. publicity and privacy rights pertaining to a person's image or likeness + depicted in a Work; + + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + + v. rights protecting the extraction, dissemination, use and reuse of data in + a Work; + + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation thereof, + including any amended or successor version of such directive); and + + vii. other similar, equivalent or corresponding rights throughout the world + based on applicable law or treaty, and any national implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention of, +applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and +unconditionally waives, abandons, and surrenders all of Affirmer's Copyright +and Related Rights and associated claims and causes of action, whether now +known or unknown (including existing as well as future claims and causes of +action), in the Work (i) in all territories worldwide, (ii) for the maximum +duration provided by applicable law or treaty (including future time +extensions), (iii) in any current or future medium and for any number of +copies, and (iv) for any purpose whatsoever, including without limitation +commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes +the Waiver for the benefit of each member of the public at large and to the +detriment of Affirmer's heirs and successors, fully intending that such Waiver +shall not be subject to revocation, rescission, cancellation, termination, or +any other legal or equitable action to disrupt the quiet enjoyment of the Work +by the public as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason be +judged legally invalid or ineffective under applicable law, then the Waiver +shall be preserved to the maximum extent permitted taking into account +Affirmer's express Statement of Purpose. In addition, to the extent the Waiver +is so judged Affirmer hereby grants to each affected person a royalty-free, +non transferable, non sublicensable, non exclusive, irrevocable and +unconditional license to exercise Affirmer's Copyright and Related Rights in +the Work (i) in all territories worldwide, (ii) for the maximum duration +provided by applicable law or treaty (including future time extensions), (iii) +in any current or future medium and for any number of copies, and (iv) for any +purpose whatsoever, including without limitation commercial, advertising or +promotional purposes (the "License"). The License shall be deemed effective as +of the date CC0 was applied by Affirmer to the Work. Should any part of the +License for any reason be judged legally invalid or ineffective under +applicable law, such partial invalidity or ineffectiveness shall not +invalidate the remainder of the License, and in such case Affirmer hereby +affirms that he or she will not (i) exercise any of his or her remaining +Copyright and Related Rights in the Work or (ii) assert any associated claims +and causes of action with respect to the Work, in either case contrary to +Affirmer's express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + + b. Affirmer offers the Work as-is and makes no representations or warranties + of any kind concerning the Work, express, implied, statutory or otherwise, + including without limitation warranties of title, merchantability, fitness + for a particular purpose, non infringement, or the absence of latent or + other defects, accuracy, or the present or absence of errors, whether or not + discoverable, all to the greatest extent permissible under applicable law. + + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without limitation + any person's Copyright and Related Rights in the Work. Further, Affirmer + disclaims responsibility for obtaining any necessary consents, permissions + or other rights required for any use of the Work. + + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to this + CC0 or use of the Work. + +For more information, please see + \ No newline at end of file diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..b6a5ef0 --- /dev/null +++ b/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: /contact.html