Skip to content

Commit

Permalink
Initial commit - stable basic blog theme
Browse files Browse the repository at this point in the history
  • Loading branch information
dyutibarma committed Feb 20, 2017
1 parent eda1fea commit 023e9fe
Show file tree
Hide file tree
Showing 71 changed files with 5,292 additions and 1 deletion.
7 changes: 7 additions & 0 deletions 404.md
@@ -0,0 +1,7 @@
---
layout: default
title: 404 - Page not found
---
404 - Page not found
====================
Sorry, we couldn’t find the requested URL. You can try again by going [back to the homepage]({{ site.baseurl }}).
122 changes: 121 additions & 1 deletion README.md
@@ -1 +1,121 @@
# monochrome
## About
Monochrome is a minimal, responsive, ready to use Jekyll theme for blogging.
(Built on top of Emerald Jekyll theme)

## Features

- Completely responsive and mobile first
- Clean SEO friendly URLs, auto-generated from post title (no messy dates in the url)
- SEO title/description integration
- Sitemap ready
- Easy customization for header, footer, navigation links, colors, favicon etc
- Default Monochrome Color Palette - black, white, greys

## Install/Setup Jekyll

(Skip if you already have Jekyll 2.2)

1. Make sure Ruby 2.2 is installed
```
sudo apt-get install ruby2.2
sudo apt-get install ruby2.2-dev
```
2. Install bundle: `sudo gem install bundler`
3. Install jekyll: `sudo gem install jekyll`

### Resources

- We found the jekyll tutorials on youtube very quick and useful to get started
- [Jekyll documentation](http://jekyllrb.com)


## Install Monochrome dependencies

```
sudo gem install jekyll-paginate
sudo gem install jekyll-sitemap
```

## Get Started with Monochrome

### Option 1

- Fork this repository
- (Optional) Change the 'baseurl' value in the 'config.yml' file, from '/blog' to your preferred directory/project name (example '/xyz' or '/' to install in root)
- Clone the forked repository to your local machine to make changes
- Run 'jekyll serve' and open browser to 'localhost:4000/blog/' to see your changes
- (Optional) Host with github pages

Note: If you fork the repository, your version of the repository will not be searchable. If you want searchability, we suggest you use the next option.


### Option 2

- Simply download the .zip folder from the repository github page
- Extract the contents from the .zip folder into your local folder
- cd into monochrome/
- Run 'jekyll serve' and open browser to 'localhost:4000/blog/' to see your changes
- Create a repository in github and push the files
- (Optional) Host with github pages

## Write a Post

- cd into ``_posts/``
- create new file with format yyyy-mm-dd-title-of-post.md
- add title/description (refer any of the test posts)
- add markdown and save


## Customization Options

You can customize this layout using instructions below.

### Header/Footer/Navigation

Set a custom header tag by setting the related option in the ``_config.yml`` file to "true". Then insert your custom code into the ``header-custom.html`` file.
In the same way, you can customize the footer of the navigation menu, by setting to "true" the related option and put your code into the ``nav-footer-custom.html`` file.
Moreover select a reverse option that allows to move the navigation menu to the left side, by setting it to "true".

### Colors

The basic colors are set into the ``base.scss`` file:
- $background-color: used for background and links in the navigation menu
- $text-color: used for text and title in posts and pages
- $text-light-color: used for text lighter than text-color
- $text-dark-color: used for text darker than text-color

To customize the colors, just set the values in HEX, RGB (or RGBa) or any other format accepted by CSS.

### Navigation menu

The links inside the navigation menu are autogenerated from pages having the layout set to ``page``.
You can set custom links, by putting in the ``<a>`` tag into the ``link.html`` file.

### Branch
There are two branches:
- ``master``: is for development.
- ``gh-pages``: is only for demo site.

### Baseurl

You can change the 'baseurl' value in the 'config.yml' file, from '/monochrome' to your preferred directory/project name (example '/xyz' or '/' to install in root)

### Typography

To maintain the vertical rhythm, it has been applied a **Typographic scale** as a modular scale, with a baseline set to 24px. To maintain this rhythm you need to insert elements like image, video or other contents with a 24px (or multiple) height as refer.

## Resources

- We found the jekyll tutorials on youtube very quick and useful to get started
- [Jekyll documentation](http://jekyllrb.com)


## Author

### TheReviewIndex

- Web site: [Review Aggregation and Summary Site for India - TheReviewIndex](https://thereviewindex.com)

## License
Released under [MIT License](license.md).
39 changes: 39 additions & 0 deletions _config.yml
@@ -0,0 +1,39 @@
# Site settings
title: Monochrome | A minimal, responsive Jekyll blog theme
description: "A minimal, responsive, ready to use blog template, built with Jekyll."
url: "http://www.thereviewindex.github.io/monochrome"
author:
name: "The Review Index"
email: "root@thereviewindex.com"
url: "https://thereviewindex.com"

# Build settings
baseurl: /monochrome # Change this to your relative path (ex: /blog/), or leave just a /
markdown: kramdown
source: .
destination: ./_site
permalink: /:title
paginate: 8
paginate_path: /page:num/

# Default values
defaults:
-
scope:
path: ""
type: "posts"
values:
layout: "post"

# Plugins
gems:
- jekyll-paginate
- jekyll-sitemap

# Custom variables
version: "1.0.0"

# Options
custom_header: false
custom_nav_footer: false
reverse: false
1 change: 1 addition & 0 deletions _includes/footer.html
@@ -0,0 +1 @@
<footer><span>@2017 - Monochrome</span></footer>
19 changes: 19 additions & 0 deletions _includes/head.html
@@ -0,0 +1,19 @@
<head>
<!-- Meta -->
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<meta name="generator" content="Jekyll">

<title>{%if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}</title>
<meta name="description" content="{%if page.description %}{{ page.description }}{% else %}{{ site.description }}{% endif %}">

<!-- CSS & fonts -->
<link rel="stylesheet" href="{{ "/css/main.css" | prepend: site.baseurl | replace: '//', '/' }}">

<!-- RSS -->
<link href="/atom.xml" type="application/atom+xml" rel="alternate" title="ATOM Feed" />

<!-- Favicon -->
<link rel="shortcut icon" type="image/png" href="img/favicon.png">

</head>
5 changes: 5 additions & 0 deletions _includes/header-custom.html
@@ -0,0 +1,5 @@
<header id="header">

<!-- Your custom header here -->

</header>
26 changes: 26 additions & 0 deletions _includes/header.html
@@ -0,0 +1,26 @@
<header id="header" class="parent justify-spaceBetween">
<div class="inner w100 relative">
<span class="left">
<a href="{{ site.baseurl }}/">
<h1>
<span>mono</span>chrome
</h1>
</a>
</span>
<span id="nav-links" class="absolute right bottom">
<!-- Nav pages -->
{% for page in site.pages %}
{% if page.layout == "page" %}
<a href="{% if site.baseurl == "/" %}{{ page.url }}{% else %}{{ page.url | prepend: site.baseurl }}{% endif %}" title="{{ page.title }}">{{ page.title }}</a>
{% endif %}
{% endfor %}

<!-- Nav links -->
{% include link.html %}

</span>
</div>
</header>



2 changes: 2 additions & 0 deletions _includes/link.html
@@ -0,0 +1,2 @@
<a href="https://github.com/thereviewindex/monochrome/archive/master.zip">Download</a>
<a href="https://github.com/thereviewindex/monochrome">Project on Github</a>
24 changes: 24 additions & 0 deletions _includes/menu.html
@@ -0,0 +1,24 @@
<nav {% if site.reverse == true %}id="nav-left"{% else %}id="nav"{% endif %}>
<div id="nav-list">
<a href="{{ site.baseurl }}/">Home</a>

<!-- Nav pages -->
{% for page in site.pages %}
{% if page.layout == "page" %}
<a href="{% if site.baseurl == "/" %}{{ page.url }}{% else %}{{ page.url | prepend: site.baseurl }}{% endif %}" title="{{ page.title }}">{{ page.title }}</a>
{% endif %}
{% endfor %}

<!-- Nav links -->
{% include link.html %}

</div>

<!-- Nav footer -->
{% if site.custom_nav_footer == true %}
{% include nav-footer-custom.html %}
{% else %}
{% include nav-footer.html %}
{% endif %}

</nav>
5 changes: 5 additions & 0 deletions _includes/nav-footer-custom.html
@@ -0,0 +1,5 @@
<footer>

<!-- Your custom nav footer here -->

</footer>
5 changes: 5 additions & 0 deletions _includes/nav-footer.html
@@ -0,0 +1,5 @@
<footer>

<span>version {{ site.version }}</span>

</footer>
1 change: 1 addition & 0 deletions _includes/script.html
@@ -0,0 +1 @@
<script src="{{ "/js/main.js" | prepend: site.baseurl | replace: '//', '/' }}"></script>
72 changes: 72 additions & 0 deletions _layouts/default.html
@@ -0,0 +1,72 @@
<!DOCTYPE html>
<html>

{% include head.html %}

<body>
<div id="wrap">

<!-- Navigation -->
{% include menu.html %}

<!-- Icon menu -->
<a {% if site.reverse == true %}id="nav-menu-left"{% else %}id="nav-menu"{% endif %}>
<div id="menu"></div>
</a>

<!-- Header -->
{% if site.custom_header == true %}
{% include header-custom.html %}
{% else %}
{% include header.html %}
{% endif %}

<!-- Main content -->
<div id="container">

<main>

{{ content }}

</main>

<!-- Pagination links -->
{% if paginator.total_pages > 1 %}
<div class="pagination">
{% if paginator.previous_page == 1 %}
<a href="{{ '/' | prepend: site.baseurl | replace: '//', '/' }}" class="page-item">&laquo;</a>
{% elsif paginator.previous_page%}
<a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}" class="page-item">&laquo;</a>
{% else %}
<span class="page-item">&laquo;</span>
{% endif %}

{% for page in (1..paginator.total_pages) %}
{% if page == paginator.page %}
<span class="page-item">{{ page }}</span>
{% elsif page == 1 %}
<a href="{{ '/' | prepend: site.baseurl | replace: '//', '/' }}" class="page-item">{{ page }}</a>
{% else %}
<a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', page }}" class="page-item">{{ page }}</a>
{% endif %}
{% endfor %}

{% if paginator.next_page %}
<a href="{{ paginator.next_page_path | prepend: site.baseurl | replace: '//', '/' }}" class="page-item">&raquo;</a>
{% else %}
<span class="page-item">&raquo;</span>
{% endif %}
</div>
{% endif %}

</div>

<!-- Footer -->
{% include footer.html %}

<!-- Script -->
{% include script.html %}

</div>
</body>
</html>
8 changes: 8 additions & 0 deletions _layouts/page.html
@@ -0,0 +1,8 @@
---
layout: default
---
<article id="page">

{{ content }}

</article>
13 changes: 13 additions & 0 deletions _layouts/post.html
@@ -0,0 +1,13 @@
---
layout: default
---
<article id="post-page">
<h2>{{ page.title }}</h2>
<time datetime="{{ page.date | date_to_xmlschema }}" class="by-line">{{ page.date | date_to_string }}</time>
<div class="content">

{{ content }}

</div>
</article>

5 changes: 5 additions & 0 deletions _posts/2017-02-10-hello-world.md
@@ -0,0 +1,5 @@
---
title: Hello World
description: This is our first post. Hello World!
---
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Totam quasi maxime quas repudiandae nam id temporibus, at et non officiis consectetur voluptate deserunt officia minima placeat tempore illum asperiores quo assumenda praesentium? Facilis libero error ratione doloribus debitis delectus asperiores minima ab velit quam. Natus ea, vero totam recusandae autem, corporis minima, animi eos perferendis omnis ut asperiores magni tempore. Repellendus aliquam saepe perspiciatis laborum, excepturi sit libero dignissimos debitis eaque itaque quos, accusantium sed amet tempora temporibus perferendis possimus, quisquam minus fuga! Laudantium, tenetur, consectetur! Quas itaque hic consequatur accusamus consectetur, quia odio eos amet quasi pariatur! Ratione, similique.
7 changes: 7 additions & 0 deletions _posts/2017-02-11-test-post-1.md
@@ -0,0 +1,7 @@
---
title: Test Post 1
description: This is the first test post.
---
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Cupiditate est optio ut impedit architecto iusto tempore rem, voluptates sed magni nisi corrupti praesentium voluptatum harum expedita temporibus ipsam, odit ad distinctio! Labore cupiditate distinctio facere earum, iste! Reiciendis possimus voluptatum explicabo corporis ab. Ex adipisci laudantium mollitia vel optio deserunt blanditiis cum dolore beatae facilis molestias ut a doloribus recusandae delectus, repudiandae, rerum quo eaque quaerat enim dolores perspiciatis voluptatum odio accusamus! Doloribus fuga provident, magni eaque consequatur quia incidunt similique. Nostrum animi facere mollitia, corrupti vitae, itaque maiores consequatur, explicabo, sapiente molestiae consequuntur! Aliquam hic dolorum atque dolorem repudiandae nostrum optio praesentium quisquam vero. Nostrum illum modi aut, ratione qui! Quas laudantium, soluta asperiores minima molestiae similique consequatur ut.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda ad tenetur, numquam aliquid excepturi fuga. Pariatur numquam rem possimus, optio voluptate aspernatur ex, ipsum tenetur earum molestiae nulla suscipit sequi labore fugit repudiandae natus? Nam vel rem, rerum maxime harum. Molestias suscipit quaerat molestiae dolores fuga earum modi, distinctio repellat, laborum commodi quibusdam ex dolore, eius maiores architecto necessitatibus. Repellendus a vitae, est nesciunt. Aspernatur fugiat labore cumque, optio, magni, aperiam ut totam error eligendi iure culpa illum dolorum quam?
7 changes: 7 additions & 0 deletions _posts/2017-02-11-test-post-2.md
@@ -0,0 +1,7 @@
---
title: Test Post 2
description: This is the second test post.
---
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Cupiditate est optio ut impedit architecto iusto tempore rem, voluptates sed magni nisi corrupti praesentium voluptatum harum expedita temporibus ipsam, odit ad distinctio! Labore cupiditate distinctio facere earum, iste! Reiciendis possimus voluptatum explicabo corporis ab. Ex adipisci laudantium mollitia vel optio deserunt blanditiis cum dolore beatae facilis molestias ut a doloribus recusandae delectus, repudiandae, rerum quo eaque quaerat enim dolores perspiciatis voluptatum odio accusamus! Doloribus fuga provident, magni eaque consequatur quia incidunt similique. Nostrum animi facere mollitia, corrupti vitae, itaque maiores consequatur, explicabo, sapiente molestiae consequuntur! Aliquam hic dolorum atque dolorem repudiandae nostrum optio praesentium quisquam vero. Nostrum illum modi aut, ratione qui! Quas laudantium, soluta asperiores minima molestiae similique consequatur ut.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda ad tenetur, numquam aliquid excepturi fuga. Pariatur numquam rem possimus, optio voluptate aspernatur ex, ipsum tenetur earum molestiae nulla suscipit sequi labore fugit repudiandae natus? Nam vel rem, rerum maxime harum. Molestias suscipit quaerat molestiae dolores fuga earum modi, distinctio repellat, laborum commodi quibusdam ex dolore, eius maiores architecto necessitatibus. Repellendus a vitae, est nesciunt. Aspernatur fugiat labore cumque, optio, magni, aperiam ut totam error eligendi iure culpa illum dolorum quam?
7 changes: 7 additions & 0 deletions _posts/2017-02-11-test-post-3.md
@@ -0,0 +1,7 @@
---
title: Test Post 3
description: This is the third test post.
---
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Cupiditate est optio ut impedit architecto iusto tempore rem, voluptates sed magni nisi corrupti praesentium voluptatum harum expedita temporibus ipsam, odit ad distinctio! Labore cupiditate distinctio facere earum, iste! Reiciendis possimus voluptatum explicabo corporis ab. Ex adipisci laudantium mollitia vel optio deserunt blanditiis cum dolore beatae facilis molestias ut a doloribus recusandae delectus, repudiandae, rerum quo eaque quaerat enim dolores perspiciatis voluptatum odio accusamus! Doloribus fuga provident, magni eaque consequatur quia incidunt similique. Nostrum animi facere mollitia, corrupti vitae, itaque maiores consequatur, explicabo, sapiente molestiae consequuntur! Aliquam hic dolorum atque dolorem repudiandae nostrum optio praesentium quisquam vero. Nostrum illum modi aut, ratione qui! Quas laudantium, soluta asperiores minima molestiae similique consequatur ut.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda ad tenetur, numquam aliquid excepturi fuga. Pariatur numquam rem possimus, optio voluptate aspernatur ex, ipsum tenetur earum molestiae nulla suscipit sequi labore fugit repudiandae natus? Nam vel rem, rerum maxime harum. Molestias suscipit quaerat molestiae dolores fuga earum modi, distinctio repellat, laborum commodi quibusdam ex dolore, eius maiores architecto necessitatibus. Repellendus a vitae, est nesciunt. Aspernatur fugiat labore cumque, optio, magni, aperiam ut totam error eligendi iure culpa illum dolorum quam?

0 comments on commit 023e9fe

Please sign in to comment.