From 3f9ddddab6f49eb2d2df35d47de78c0dddea3088 Mon Sep 17 00:00:00 2001 From: Rahul Nair Date: Fri, 4 Aug 2017 07:47:36 +0530 Subject: [PATCH] Add Graymill theme --- graymill/LICENSE | 21 + graymill/README.md | 85 +++ graymill/sample_pelicanconf.py | 55 ++ graymill/static/css/custom.css | 272 ++++++++++ graymill/static/css/milligram.css | 600 ++++++++++++++++++++++ graymill/static/images/icons/facebook.png | Bin 0 -> 8065 bytes graymill/static/images/icons/github.png | Bin 0 -> 17085 bytes graymill/static/images/icons/gplus.png | Bin 0 -> 20669 bytes graymill/static/images/icons/linkedin.png | Bin 0 -> 8590 bytes graymill/static/images/icons/mail.png | Bin 0 -> 17730 bytes graymill/static/images/icons/rss.png | Bin 0 -> 19693 bytes graymill/static/images/icons/twitter.png | Bin 0 -> 17479 bytes graymill/templates/archives.html | 27 + graymill/templates/article.html | 56 ++ graymill/templates/author.html | 18 + graymill/templates/base.html | 138 +++++ graymill/templates/categories.html | 21 + graymill/templates/category.html | 17 + graymill/templates/index.html | 39 ++ graymill/templates/page.html | 8 + graymill/templates/pagination.html | 16 + graymill/templates/tag.html | 18 + graymill/templates/tags.html | 21 + graymill/templates/translations.html | 6 + 24 files changed, 1418 insertions(+) create mode 100644 graymill/LICENSE create mode 100644 graymill/README.md create mode 100644 graymill/sample_pelicanconf.py create mode 100644 graymill/static/css/custom.css create mode 100644 graymill/static/css/milligram.css create mode 100644 graymill/static/images/icons/facebook.png create mode 100644 graymill/static/images/icons/github.png create mode 100644 graymill/static/images/icons/gplus.png create mode 100644 graymill/static/images/icons/linkedin.png create mode 100644 graymill/static/images/icons/mail.png create mode 100644 graymill/static/images/icons/rss.png create mode 100644 graymill/static/images/icons/twitter.png create mode 100644 graymill/templates/archives.html create mode 100644 graymill/templates/article.html create mode 100644 graymill/templates/author.html create mode 100644 graymill/templates/base.html create mode 100644 graymill/templates/categories.html create mode 100644 graymill/templates/category.html create mode 100644 graymill/templates/index.html create mode 100644 graymill/templates/page.html create mode 100644 graymill/templates/pagination.html create mode 100644 graymill/templates/tag.html create mode 100644 graymill/templates/tags.html create mode 100644 graymill/templates/translations.html diff --git a/graymill/LICENSE b/graymill/LICENSE new file mode 100644 index 000000000..a9151f473 --- /dev/null +++ b/graymill/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) [2017] [Rahul Nair] + +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. diff --git a/graymill/README.md b/graymill/README.md new file mode 100644 index 000000000..0385813e7 --- /dev/null +++ b/graymill/README.md @@ -0,0 +1,85 @@ +## Graymill - A minimal Pelican theme. + +Graymill is a minimal, responsive theme for the [Pelican](http://blog.getpelican.com/) static site generator. It is based on the [Milligram CSS framework](http://milligram.io/). + +### Demo + +See the theme in action at [muchBits](https://muchbits.com) + +### Features + +* Syntax highlighting for code blocks +* Easy to install +* Minimal/No Javascript (JS is only used in case Google Analytics is enabled). +* Google Analytics Support +* Responsive (Mobile Friendly Test on [Google](https://search.google.com/test/mobile-friendly?utm_source=mft&utm_medium=redirect&utm_campaign=mft-redirect&id=TT7gCU77TVUWMMbu4pmHsg)) + +## Installation + +* Clone the repository: +```python +git clone https://github.com/rn4ir/graymill.git +``` +* Create a `THEME` variable in your `pelicanconf.py` file and set its value to the location of ***graymill*** theme, like so: +```python +THEME = 'path/to/graymill' +``` + +## Custom Variables + +(*Please refer to the sample pelicanconf.py contained in this repo for examples*) + +The ***Graymill*** theme use the following settings in the `pelicanconf.py`: + +### pelicanconf.py + +#### Social Icons: +```python +SOCIAL = (('linkedin', 'https://www.linkedin.com/in/username'), + ('github', 'https://github.com/username'), + ('twitter', 'https://twitter.com/username'), + ('facebook', 'https://facebook.com/userid'), + ) +``` + +#### Pagination: +```python +DEFAULT_PAGINATION = 8 +``` + +#### Home page parameters: + +```python +SITEDESCRIPTION = 'your-site's-tagline' +DISPLAY_SUMMARY = True +DISPLAY_PAGES_ON_MENU = True +``` + +#### Other Settings +```python +FAVICON = 'images/favicon.png' +STATIC_PATHS = ['images', 'extras'] +EXTRA_PATH_METADATA = { + 'extras/.htaccess': {'path': '.htaccess'}, + 'extras/robots.txt': {'path': 'robots.txt'}, +``` + +#### For local development: +``` +SITEURL = 'http://localhost:8000' +``` + +### publishconf.py + +When you are ready to publish your site add the following settings to `publishconf.py` file + +```python +SITEURL = 'https://domain-name.tld' + +FEED_ALL_ATOM = 'feeds/all.atom.xml' +CATEGORY_FEED_ATOM = 'feeds/%s.atom.xml' + +GOOGLE_ANALYTICS = "" +``` + +For more information on publishing your site, please read the [Pelican publishing docs](http://docs.getpelican.com/en/3.6.3/publish.html) diff --git a/graymill/sample_pelicanconf.py b/graymill/sample_pelicanconf.py new file mode 100644 index 000000000..8a9680e73 --- /dev/null +++ b/graymill/sample_pelicanconf.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- # +from __future__ import unicode_literals + +# Basic information +AUTHOR = u'author' +AUTHOREMAIL = 'myemail [at] mydomain [dot] tld' +SITENAME = u'siteName' +SITEURL = 'http://muchbits.com' + +PATH = 'content' + +TIMEZONE = 'Asia/Kolkata' + +DEFAULT_LANG = u'en' +THEME = 'themes/graymill' + +# Social widgets +SOCIAL = (('twitter', 'https://twitter.com/'), + ('linkedin', 'https://www.linkedin.com/'), + ('github', 'https://github.com/'), + ('facebook', 'https://facebook.com/'), + ) + +DEFAULT_PAGINATION = 8 + +SITEDESCRIPTION = 'my custom tagline/description' + +# For post-summaries +DISPLAY_SUMMARY = True + +# To display static pages like About, Contact etc. +DISPLAY_PAGES_ON_MENU = True + +MENUITEMS = (('Home', SITEURL), + ) + +# Feed generation is usually not desired when developing +FEED_ALL_RSS = False +FEED_ALL_ATOM = False +FEED_ALL_ATOM = None +CATEGORY_FEED_ATOM = None +TRANSLATION_FEED_ATOM = None +AUTHOR_FEED_ATOM = None +AUTHOR_FEED_RSS = None + +# Favicon (path relative to './content/') +FAVICON = 'images/favicon.png' + +# To include custom static files like htaccess, robots, PDF files etc. (path relative to './content/') +STATIC_PATHS = ['images', 'extras'] +EXTRA_PATH_METADATA = { + 'extras/.htaccess': {'path': '.htaccess'}, + 'extras/robots.txt': {'path': 'robots.txt'}, +} diff --git a/graymill/static/css/custom.css b/graymill/static/css/custom.css new file mode 100644 index 000000000..616b944f7 --- /dev/null +++ b/graymill/static/css/custom.css @@ -0,0 +1,272 @@ +body { + background-color: #ffffff; + font-size: 1.5rem; +} + +a { + color: #6C7A89; + text-decoration: none; +} + +.navbar { + margin-bottom: 10px; +} + +.navbar ul { + list-style-type: none; + margin: 0; + padding: 0; + overflow: hidden; +} + +.navbar li { + margin: 1em; + float: left; + line-height: 0.1em; + padding: 1em; +} + +.navbar li a { + display: block; + color: #6C7A89; + text-align: center; + text-decoration: none; +} + +.navbar li h4 { + margin: 5%; +} + +.navbar li h6 { + line-height: 2.5; +} +.navbar li i { + display: block; + text-align: center; + padding: 14px 16px; +} + +.social-img { + background-color: #6C7A89; +} + +sidebar { + font-size: 1.25em; + width: 15%; + height: 100%; + position: fixed; + right: 0; + padding: 2%; + text-align: center; + background-size: cover; +} + +sidebar > ul { + list-style-type: none; + padding: 0px 10px; + margin-top: 0px; +} + +.static-item { + text-transform: uppercase; + font-size: 1.5em; +} + +.cat-border { + border: 2px solid #6C7A89; + text-transform: uppercase; +} + +.cat-border a:focus, +.cat-border a:hover { + color: #F2F1EF; + background-color: #6C7A89; + padding: 1%; +} + +sidebar > ul > li > a:hover, +sidebar > ul > li > a:focus { + color: #F2F1EF; + background-color: #6C7A89; + padding: 1%; +} + +sidebar > h2 { + font-size: 15px; + margin-bottom: 5px; + padding-bottom: 3%; +} + +maincontent { + display: block; + line-height: 1.6em; + width: 85%; +} + +maincontent > ol { + list-style-type: none; +} + +mainarticle ul { + list-style: square inside; +} + +mainarticle ul li p { + padding-left: 3%; + margin-top: -2%; + font-size: 1.5em; +} + +mainarticle a { + background: #f4f5f6; + font-weight: bold; + font-style: italic; +} + +maincontent table { + max-width: 100%; + width: 0; +} + +maincontent table tbody tr td pre { + padding-right: 20px; +} + +maincontent table tbody tr td .highlight { + width: 90rem; +} + +.page-title { + border-bottom: 1.5px solid #eee; + width: 85%; +} + +hr { + border-top: 0.3rem double #6C7A89; +} + +pre { + padding-left: 1.5%; + border-left: 0.3rem solid #6C7A89; +} + +code { + font-size: 100%; + font-style: italic; +} + +ul { + list-style: square inside; +} + +.social-icons-a { + max-width: 3%; +} + +.social-icons-m { + max-width: 20%; +} + +.pagination-dir { + font-size: 2.5rem; + margin-top: 2%; +} + +@media (max-width: 40.0rem) { + + .navbar { + margin-left: 0; + margin-right: 0; + } + + .navbar li { + float: none; + padding: initial; + text-align: center + } + + .navbar li h6 { + line-height: initial; + font-size: 0.75em; + letter-spacing: 0; + } + + sidebar { + right: 0; + max-width: none; + position: fixed; + width: 25%; + padding: 0; + padding-top: 1px; + font-size: 8px; + } + + maincontent { + width: 75%; + font-size: 10px; + } + + maincontent h2 { + font-size: 2rem; + } + + maincontent h5 { + font-size: 1.4rem; + } + + mainarticle ul li p { + padding-left: 5%; + margin-top: -6%; + } + + .social-icons-a { + max-width: 10%; + } +} + +@media (min-width: 41.0rem) and (max-width: 80.0rem){ + .navbar { + margin-left: 0; + margin-right: 0; + } + + .navbar li { + float: none; + padding: initial; + text-align: center + } + + .navbar li h6 { + line-height: initial; + font-size: 0.75em; + letter-spacing: 0; + } + + sidebar { + right: 0; + max-width: none; + position: fixed; + width: 15%; + padding: 0; + padding-top: 1px; + font-size: 8px; + } + + maincontent { + width: 85%; + font-size: 10px; + } + + maincontent h2 { + font-size: 2rem; + } + + maincontent h5 { + font-size: 1.4rem; + } + + mainarticle ul li p { + padding-left: 5%; + margin-top: -2%; + } +} diff --git a/graymill/static/css/milligram.css b/graymill/static/css/milligram.css new file mode 100644 index 000000000..a05548bd1 --- /dev/null +++ b/graymill/static/css/milligram.css @@ -0,0 +1,600 @@ +/*! + * Milligram v1.3.0 + * https://milligram.github.io + * + * Copyright (c) 2017 CJ Patoilo + * Licensed under the MIT license + */ + +*, +*:after, +*:before { + box-sizing: inherit; +} + +html { + box-sizing: border-box; + font-size: 62.5%; +} + +body { + color: #606c76; + font-family: monospace; + font-size: 1.6em; + font-weight: 300; + letter-spacing: .01em; + line-height: 1.6; +} + +blockquote { + border-left: 0.3rem solid #d1d1d1; + margin-left: 0; + margin-right: 0; + padding: 1rem 1.5rem; +} + +blockquote *:last-child { + margin-bottom: 0; +} + +.button, +button, +input[type='button'], +input[type='reset'], +input[type='submit'] { + background-color: #9b4dca; + border: 0.1rem solid #9b4dca; + border-radius: .4rem; + color: #fff; + cursor: pointer; + display: inline-block; + font-size: 1.1rem; + font-weight: 700; + height: 3.8rem; + letter-spacing: .1rem; + line-height: 3.8rem; + padding: 0 3.0rem; + text-align: center; + text-decoration: none; + text-transform: uppercase; + white-space: nowrap; +} + +.button:focus, .button:hover, +button:focus, +button:hover, +input[type='button']:focus, +input[type='button']:hover, +input[type='reset']:focus, +input[type='reset']:hover, +input[type='submit']:focus, +input[type='submit']:hover { + background-color: #606c76; + border-color: #606c76; + color: #fff; + outline: 0; +} + +.button[disabled], +button[disabled], +input[type='button'][disabled], +input[type='reset'][disabled], +input[type='submit'][disabled] { + cursor: default; + opacity: .5; +} + +.button[disabled]:focus, .button[disabled]:hover, +button[disabled]:focus, +button[disabled]:hover, +input[type='button'][disabled]:focus, +input[type='button'][disabled]:hover, +input[type='reset'][disabled]:focus, +input[type='reset'][disabled]:hover, +input[type='submit'][disabled]:focus, +input[type='submit'][disabled]:hover { + background-color: #9b4dca; + border-color: #9b4dca; +} + +.button.button-outline, +button.button-outline, +input[type='button'].button-outline, +input[type='reset'].button-outline, +input[type='submit'].button-outline { + background-color: transparent; + color: #9b4dca; +} + +.button.button-outline:focus, .button.button-outline:hover, +button.button-outline:focus, +button.button-outline:hover, +input[type='button'].button-outline:focus, +input[type='button'].button-outline:hover, +input[type='reset'].button-outline:focus, +input[type='reset'].button-outline:hover, +input[type='submit'].button-outline:focus, +input[type='submit'].button-outline:hover { + background-color: transparent; + border-color: #606c76; + color: #606c76; +} + +.button.button-outline[disabled]:focus, .button.button-outline[disabled]:hover, +button.button-outline[disabled]:focus, +button.button-outline[disabled]:hover, +input[type='button'].button-outline[disabled]:focus, +input[type='button'].button-outline[disabled]:hover, +input[type='reset'].button-outline[disabled]:focus, +input[type='reset'].button-outline[disabled]:hover, +input[type='submit'].button-outline[disabled]:focus, +input[type='submit'].button-outline[disabled]:hover { + border-color: inherit; + color: #9b4dca; +} + +.button.button-clear, +button.button-clear, +input[type='button'].button-clear, +input[type='reset'].button-clear, +input[type='submit'].button-clear { + background-color: transparent; + border-color: transparent; + color: #9b4dca; +} + +.button.button-clear:focus, .button.button-clear:hover, +button.button-clear:focus, +button.button-clear:hover, +input[type='button'].button-clear:focus, +input[type='button'].button-clear:hover, +input[type='reset'].button-clear:focus, +input[type='reset'].button-clear:hover, +input[type='submit'].button-clear:focus, +input[type='submit'].button-clear:hover { + background-color: transparent; + border-color: transparent; + color: #606c76; +} + +.button.button-clear[disabled]:focus, .button.button-clear[disabled]:hover, +button.button-clear[disabled]:focus, +button.button-clear[disabled]:hover, +input[type='button'].button-clear[disabled]:focus, +input[type='button'].button-clear[disabled]:hover, +input[type='reset'].button-clear[disabled]:focus, +input[type='reset'].button-clear[disabled]:hover, +input[type='submit'].button-clear[disabled]:focus, +input[type='submit'].button-clear[disabled]:hover { + color: #9b4dca; +} + +code { + background: #f4f5f6; + border-radius: .4rem; + font-size: 86%; + margin: 0 .2rem; + padding: .2rem .5rem; + white-space: nowrap; +} + +pre { + background: #f4f5f6; + border-left: 0.3rem solid #9b4dca; + overflow-y: hidden; +} + +pre > code { + border-radius: 0; + display: block; + padding: 1rem 1.5rem; + white-space: pre; +} + +hr { + border: 0; + border-top: 0.1rem solid #f4f5f6; + margin: 3.0rem 0; +} + +input[type='email'], +input[type='number'], +input[type='password'], +input[type='search'], +input[type='tel'], +input[type='text'], +input[type='url'], +textarea, +select { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + background-color: transparent; + border: 0.1rem solid #d1d1d1; + border-radius: .4rem; + box-shadow: none; + box-sizing: inherit; + height: 3.8rem; + padding: .6rem 1.0rem; + width: 100%; +} + +input[type='email']:focus, +input[type='number']:focus, +input[type='password']:focus, +input[type='search']:focus, +input[type='tel']:focus, +input[type='text']:focus, +input[type='url']:focus, +textarea:focus, +select:focus { + border-color: #9b4dca; + outline: 0; +} + +select { + background: url('data:image/svg+xml;utf8,') center right no-repeat; + padding-right: 3.0rem; +} + +select:focus { + background-image: url('data:image/svg+xml;utf8,'); +} + +textarea { + min-height: 6.5rem; +} + +label, +legend { + display: block; + font-size: 1.6rem; + font-weight: 700; + margin-bottom: .5rem; +} + +fieldset { + border-width: 0; + padding: 0; +} + +input[type='checkbox'], +input[type='radio'] { + display: inline; +} + +.label-inline { + display: inline-block; + font-weight: normal; + margin-left: .5rem; +} + +.container { + margin: 0 auto; + max-width: 112.0rem; + padding: 0 2.0rem; + position: relative; + width: 100%; +} + +.row { + display: flex; + flex-direction: column; + padding: 0; + width: 100%; +} + +.row.row-no-padding { + padding: 0; +} + +.row.row-no-padding > .column { + padding: 0; +} + +.row.row-wrap { + flex-wrap: wrap; +} + +.row.row-top { + align-items: flex-start; +} + +.row.row-bottom { + align-items: flex-end; +} + +.row.row-center { + align-items: center; +} + +.row.row-stretch { + align-items: stretch; +} + +.row.row-baseline { + align-items: baseline; +} + +.row .column { + display: block; + flex: 1 1 auto; + margin-left: 0; + max-width: 100%; + width: 100%; +} + +.row .column.column-offset-10 { + margin-left: 10%; +} + +.row .column.column-offset-20 { + margin-left: 20%; +} + +.row .column.column-offset-25 { + margin-left: 25%; +} + +.row .column.column-offset-33, .row .column.column-offset-34 { + margin-left: 33.3333%; +} + +.row .column.column-offset-50 { + margin-left: 50%; +} + +.row .column.column-offset-66, .row .column.column-offset-67 { + margin-left: 66.6666%; +} + +.row .column.column-offset-75 { + margin-left: 75%; +} + +.row .column.column-offset-80 { + margin-left: 80%; +} + +.row .column.column-offset-90 { + margin-left: 90%; +} + +.row .column.column-10 { + flex: 0 0 10%; + max-width: 10%; +} + +.row .column.column-20 { + flex: 0 0 20%; + max-width: 20%; +} + +.row .column.column-25 { + flex: 0 0 25%; + max-width: 25%; +} + +.row .column.column-33, .row .column.column-34 { + flex: 0 0 33.3333%; + max-width: 33.3333%; +} + +.row .column.column-40 { + flex: 0 0 40%; + max-width: 40%; +} + +.row .column.column-50 { + flex: 0 0 50%; + max-width: 50%; +} + +.row .column.column-60 { + flex: 0 0 60%; + max-width: 60%; +} + +.row .column.column-66, .row .column.column-67 { + flex: 0 0 66.6666%; + max-width: 66.6666%; +} + +.row .column.column-75 { + flex: 0 0 75%; + max-width: 75%; +} + +.row .column.column-80 { + flex: 0 0 80%; + max-width: 80%; +} + +.row .column.column-90 { + flex: 0 0 90%; + max-width: 90%; +} + +.row .column .column-top { + align-self: flex-start; +} + +.row .column .column-bottom { + align-self: flex-end; +} + +.row .column .column-center { + -ms-grid-row-align: center; + align-self: center; +} + +@media (min-width: 40rem) { + .row { + flex-direction: row; + margin-left: -1.0rem; + width: calc(100% + 2.0rem); + } + .row .column { + margin-bottom: inherit; + padding: 0 1.0rem; + } +} + +a { + color: #9b4dca; + text-decoration: none; +} + +a:focus, a:hover { + color: #606c76; +} + +dl, +ol, +ul { + list-style: none; + margin-top: 0; + padding-left: 0; +} + +dl dl, +dl ol, +dl ul, +ol dl, +ol ol, +ol ul, +ul dl, +ul ol, +ul ul { + font-size: 90%; + margin: 1.5rem 0 1.5rem 3.0rem; +} + +ol { + list-style: decimal inside; +} + +ul { + list-style: circle inside; +} + +.button, +button, +dd, +dt, +li { + margin-bottom: 1.0rem; +} + +fieldset, +input, +select, +textarea { + margin-bottom: 1.5rem; +} + +blockquote, +dl, +figure, +form, +ol, +p, +pre, +table, +ul { + margin-bottom: 2.5rem; +} + +table { + border-spacing: 0; + width: 100%; +} + +td, +th { + border-bottom: 0.1rem solid #e1e1e1; + padding: 1.2rem 1.5rem; + text-align: left; +} + +td:first-child, +th:first-child { + padding-left: 0; +} + +td:last-child, +th:last-child { + padding-right: 0; +} + +b, +strong { + font-weight: bold; +} + +p { + margin-top: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: 300; + letter-spacing: -.1rem; + margin-bottom: 2.0rem; + margin-top: 0; +} + +h1 { + font-size: 4.6rem; + line-height: 1.2; +} + +h2 { + font-size: 3.6rem; + line-height: 1.25; +} + +h3 { + font-size: 2.8rem; + line-height: 1.3; +} + +h4 { + font-size: 2.2rem; + letter-spacing: -.08rem; + line-height: 1.35; +} + +h5 { + font-size: 1.8rem; + letter-spacing: -.05rem; + line-height: 1.5; +} + +h6 { + font-size: 1.6rem; + letter-spacing: 0; + line-height: 1.4; +} + +img { + max-width: 100%; +} + +.clearfix:after { + clear: both; + content: ' '; + display: table; +} + +.float-left { + float: left; +} + +.float-right { + float: right; +} diff --git a/graymill/static/images/icons/facebook.png b/graymill/static/images/icons/facebook.png new file mode 100644 index 0000000000000000000000000000000000000000..f9c12e1c9ce20f4db0f1dc573e91b1eaaa72c0db GIT binary patch literal 8065 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 H&T;<>pV=&O literal 0 HcmV?d00001 diff --git a/graymill/static/images/icons/github.png b/graymill/static/images/icons/github.png new file mode 100644 index 0000000000000000000000000000000000000000..4d83b8f8af3ab7a1111cba89211edddaf30ae843 GIT binary patch literal 17085 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 literal 0 HcmV?d00001 diff --git a/graymill/static/images/icons/gplus.png b/graymill/static/images/icons/gplus.png new file mode 100644 index 0000000000000000000000000000000000000000..eb1a77fb6264c90a25bbdb89549724c5641dec12 GIT binary patch literal 20669 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 Nx{40;gOXL){{Tz3MNa?# literal 0 HcmV?d00001 diff --git a/graymill/static/images/icons/mail.png b/graymill/static/images/icons/mail.png new file mode 100644 index 0000000000000000000000000000000000000000..7eede0284724a0b33f509993b789d57fa368a812 GIT binary patch literal 17730 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 literal 0 HcmV?d00001 diff --git a/graymill/static/images/icons/rss.png b/graymill/static/images/icons/rss.png new file mode 100644 index 0000000000000000000000000000000000000000..b12dc1c0d8fbc3a4e05d74815142418da13e45af GIT binary patch literal 19693 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 Uv)|cB0TnTLy85}Sb4q9e02lTpZvX%Q literal 0 HcmV?d00001 diff --git a/graymill/static/images/icons/twitter.png b/graymill/static/images/icons/twitter.png new file mode 100644 index 0000000000000000000000000000000000000000..4ecf4c749695efe518eb401746d3f6f27d3b32d9 GIT binary patch literal 17479 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 Mpe^ZvneWB_2dDLW2mk;8 literal 0 HcmV?d00001 diff --git a/graymill/templates/archives.html b/graymill/templates/archives.html new file mode 100644 index 000000000..9ebba9ca5 --- /dev/null +++ b/graymill/templates/archives.html @@ -0,0 +1,27 @@ +{% extends "base.html" %} +{% block head %} +{{ super() }} + + + + + + + + + +{% endblock head %} +{% block content %} +

Archives

+ {% for article in dates %} +
+ {% endfor %} +{% endblock %} diff --git a/graymill/templates/article.html b/graymill/templates/article.html new file mode 100644 index 000000000..58b49d98b --- /dev/null +++ b/graymill/templates/article.html @@ -0,0 +1,56 @@ +{% extends "base.html" %} +{% block head %} +{{ super() }} + + + + + + + + + +{% endblock head %} +{% block title %}{{ article.title }}{% endblock %} +{% block content %} +

+ {{ article.title }} +

+ +
+ By: {{ article.author }} On: {{ article.locale_date }}
+ In: {{ article.category }}
+ Tags: + {% if article.tags %} + {% for tag in article.tags %} + #{{ tag }} + {% endfor %} + {% endif %} + +
+
+ +
+ + {{ article.content }} + +
+
+ +
+ If you found the article helpful, please share or cite the article, and spread the word: +

+ + + + +

+
+
+{% if AUTHOREMAIL %} +

For any feedback or corrections, please write in to: {{ AUTHOREMAIL }}

+{% else %} +

For any feedback or corrections, please write in to: {{ AUTHOR }}

+{% endif %} + +{% endblock %} diff --git a/graymill/templates/author.html b/graymill/templates/author.html new file mode 100644 index 000000000..3606441a5 --- /dev/null +++ b/graymill/templates/author.html @@ -0,0 +1,18 @@ +{% extends "index.html" %} +{% block head %} + {{ super() }} + + + + + + + + + +{% endblock head %} +{% block title %}{{ SITENAME }} - {{ author }}{% endblock %} +{% block heading %} +

Author: {{ author }}

+{% endblock %} + diff --git a/graymill/templates/base.html b/graymill/templates/base.html new file mode 100644 index 000000000..55fc05110 --- /dev/null +++ b/graymill/templates/base.html @@ -0,0 +1,138 @@ + + + + {% block head %} + + + {% block title %} {{ SITENAME }} {% endblock %} + + + + + + + + + + + + + + + + + {% if FEED_ALL_ATOM %} + + {% endif %} + {% if FEED_ALL_RSS %} + + {% endif %} + + + + + + {% endblock %} + + + +
+ + + + + + +
    + {% for title, link in MENUITEMS %} +
  • {{ title }}
  • + {% endfor %} + + {% if DISPLAY_PAGES_ON_MENU and PAGES %} + {% for p in pages %} +
  • {{ p.title }}
  • + {% endfor %} + {% endif %} +
+ +
    + {% if DISPLAY_CATEGORIES_ON_MENU and categories %} +
    +
  • Categories
  • + {% for cat, null in categories %} + {{ cat }} + {% endfor %} +
    + {% endif %} +
+ + {% if LINKS %} +


BLOGROLLS

+
    + {% for name, link in LINKS %} +
  • {{ name }}
  • + {% endfor %} +
+ {% endif %} + +

+ {% if SOCIAL %} + {% for name, link in SOCIAL %} + + + + + + {% endfor %} + {% endif %} +

+

+ {% if FEED_ALL_ATOM %} + + + {% endif %} +

+

+ {% if FEED_ALL_RSS %} + + + {% endif %} +

+
+ + + {% block content %} + {% endblock %} + + + + {% if GOOGLE_ANALYTICS %} + + {% endif %} + +
+ + + diff --git a/graymill/templates/categories.html b/graymill/templates/categories.html new file mode 100644 index 000000000..676f7171a --- /dev/null +++ b/graymill/templates/categories.html @@ -0,0 +1,21 @@ +{% extends "base.html" %} +{% block head %} +{{ super() }} + + + + + + + + + +{% endblock head %} +{% block content %} +

Categories

+
    +{% for category, articles in categories %} +
  1. {{ category }}
  2. +{% endfor %} +
+{% endblock %} diff --git a/graymill/templates/category.html b/graymill/templates/category.html new file mode 100644 index 000000000..b4ffe6934 --- /dev/null +++ b/graymill/templates/category.html @@ -0,0 +1,17 @@ +{% extends "index.html" %} +{% block head %} + {{ super() }} + + + + + + + + + +{% endblock head %} +{% block title %}{{ SITENAME }} - {{ category }}{% endblock %} +{% block heading %} +

Category: {{ category }}

+{% endblock %} diff --git a/graymill/templates/index.html b/graymill/templates/index.html new file mode 100644 index 000000000..b63d91f2e --- /dev/null +++ b/graymill/templates/index.html @@ -0,0 +1,39 @@ +{% extends "base.html" %} +{% block head %} +{{ super() }} + + + + + + + + + +{% endblock head %} +{% block content_title %}{% endblock %} +{% block content %} + +{% if articles %} +
    + {% block heading %} +

    Recent entries

    + {% endblock %} + {% for article in (articles_page.object_list if articles_page else articles) %} +
    +
  1. +
    {{ article.title }}
    + {% if DISPLAY_SUMMARY and article.summary|length > 0 %} + {{ article.summary }} + {% endif %} + By:{{ article.author }}
    On:{{ article.locale_date }}
    In:{{ article.category }} +
  2. + {% endfor %} +
+{% endif %} + +{% if articles_page and articles_paginator.num_pages > 1 %} + {% include 'pagination.html' %} +{% endif %} + +{% endblock content %} diff --git a/graymill/templates/page.html b/graymill/templates/page.html new file mode 100644 index 000000000..dc6cfff95 --- /dev/null +++ b/graymill/templates/page.html @@ -0,0 +1,8 @@ +{% extends "base.html" %} +{% block title %}{{ page.title }}{% endblock %} +{% block content %} +{% if PDF_PROCESSOR %} + Download the PDF file +{% endif %} +{{ page.content }} +{% endblock %} diff --git a/graymill/templates/pagination.html b/graymill/templates/pagination.html new file mode 100644 index 000000000..0c5ed4d4e --- /dev/null +++ b/graymill/templates/pagination.html @@ -0,0 +1,16 @@ +{% if DEFAULT_PAGINATION %} +

+ {% if articles_page.has_previous() %} + {% if articles_page.previous_page_number() == 1 %} + + {% else %} + + {% endif %} + {% endif %} + {{ articles_page.number }} of {{ articles_paginator.num_pages }} + {% if articles_page.has_next() %} + + {% endif %} +

+{% endif %} + diff --git a/graymill/templates/tag.html b/graymill/templates/tag.html new file mode 100644 index 000000000..8186a7ac3 --- /dev/null +++ b/graymill/templates/tag.html @@ -0,0 +1,18 @@ +{% extends "index.html" %} +{% block head %} + {{ super() }} + + + + + + + + + +{% endblock head %} +{% block title %}{{ SITENAME }} - {{ tag }}{% endblock %} +{% block heading %} +

Tag: {{ tag }}

+{% endblock %} + diff --git a/graymill/templates/tags.html b/graymill/templates/tags.html new file mode 100644 index 000000000..b9a80cbf7 --- /dev/null +++ b/graymill/templates/tags.html @@ -0,0 +1,21 @@ +{% extends "base.html" %} +{% block head %} +{{ super() }} + + + + + + + + + +{% endblock head %} +{% block content %} +

Tags

+
    +{% for tag, articles in tags %} +
  1. {{ tag }}
  2. +{% endfor %} +
+{% endblock %} diff --git a/graymill/templates/translations.html b/graymill/templates/translations.html new file mode 100644 index 000000000..30429a45f --- /dev/null +++ b/graymill/templates/translations.html @@ -0,0 +1,6 @@ +{% if article.translations %} + Languages: + {% for translation in article.translations %} + {{ translation.lang }} + {% endfor %} +{% endif %}