minima-bootstrap 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: dfc1f8eb091ecf5dd3c1bcff5bbeae8d809f3b6ad65b1773ee2f585fc842997b
4
+ data.tar.gz: 972d0ecea23dfad1f1587238c862ea8efd1fce15b13274d853ccd654a4b21098
5
+ SHA512:
6
+ metadata.gz: cb277d77c4055fbd0a34aa5e4da7d5b4170c761ba817d0bdaeeca179a9b0f49adaac4c95c0580a7692c80beb2028570483e6c6470863d611625b12cda8dbd73a
7
+ data.tar.gz: 58710361bdbbad4acbaf50fce17a28908fc012710822bb9de990381e0c4f120368bcecc2b708120972b91f2fa8df877763c45fae236278b2d9d13451e402d79c
data/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2016-present Parker Moore and the minima contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,121 @@
1
+ # minima-bootstrap
2
+
3
+ A bootstrap based theme for Jekyll. Forked from the [default minima theme](https://github.com/Jekyll/minima)
4
+
5
+ [Theme preview](TO BE UPLOAD SOON)
6
+
7
+ ## Screenshots
8
+
9
+ ![Desktop screenshot](screenshot.png)
10
+ ![Mobile screenshot](screenshot-mobile.png)
11
+
12
+ ## Installation
13
+
14
+ First, install Jekyll and create a new site following the instructions on the [official webpage](https://jekyllrb.com/):
15
+
16
+ gem install bundler jekyll
17
+ jekyll new my-awesome-site
18
+ cd my-awesome-site
19
+
20
+ *Then:*
21
+
22
+ Add this line to your Jekyll site's Gemfile:
23
+
24
+ ```ruby
25
+ gem "minima-bootstrap"
26
+ ```
27
+
28
+ And add this line to your Jekyll site:
29
+
30
+ ```yaml
31
+ theme: minima-bootstrap
32
+ ```
33
+
34
+ And then execute:
35
+
36
+ $ bundle
37
+
38
+ to install and enable the theme.
39
+
40
+ ## Build and run
41
+
42
+ To build:
43
+
44
+ $ bundle exec jekyll build
45
+
46
+ To run:
47
+
48
+ $ bundle exec jekyll serve
49
+
50
+ ## Features
51
+
52
+ * Cover photo
53
+
54
+ * Profile picture
55
+
56
+ * Twitter feed
57
+
58
+ * Bio Card
59
+
60
+ ## Usage
61
+
62
+ General usage is much as the same as the `minima` theme from which this theme is forked.
63
+ Please see the [minima theme usage guide](https://github.com/jekyll/minima/blob/master/README.md#usage)
64
+
65
+ Please also see the [example blog](https://github.com/Sohair63/sohair-ahmad-blog) for practical usage examples.
66
+
67
+
68
+ ### Posts
69
+
70
+ Added extra optional key `short_description` key in FrontMatter for posts.
71
+
72
+ In `_config.yml`:
73
+
74
+ ```yaml
75
+ short_description: 'Short Description Text'
76
+ ```
77
+
78
+ ### Profile photo
79
+
80
+ In `_config.yml`:
81
+
82
+ ```yaml
83
+ profile_picture: link-or-path/to/profile/image.jpg
84
+ ```
85
+
86
+ ### Cover photo
87
+
88
+ In `_config.yml`:
89
+
90
+ ```yaml
91
+ cover_image: link-or-path/to/cover/image.jpg
92
+ ```
93
+
94
+ ### Twitter feed
95
+
96
+ In `_config.yml`:
97
+
98
+ ```yaml
99
+ twitter_username: yourtwitterhandle
100
+ show_twitter_feed: true
101
+ show_twitter_feed: true
102
+ twitter_feed_setting: 'noheader, noscrollbar, nofooter, noborders'
103
+ tweets_limit: 3 # Any limit default is 3
104
+ twitter_ref_src: yourtwitterhandle?ref_src=TWITTERSOURCE
105
+ ```
106
+ <!--
107
+ ### Fork me
108
+
109
+ Shows a GitHub 'fork me' link in the top corner of the page, as
110
+ well as a link in the footer.
111
+
112
+ In `_config.yml`:
113
+
114
+ ```yaml
115
+ fork_me_url: https://example.com
116
+ show_fork_me: true
117
+ ``` -->
118
+
119
+ ## License
120
+
121
+ The theme is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
@@ -0,0 +1,18 @@
1
+ <div class="left col-lg-4">
2
+ <div class="photo-left">
3
+ <img class="photo" src="{{ site.profile_picture }}"/>
4
+ </div>
5
+
6
+ <h4 class="name">{{ site.title | escape }}</h4>
7
+ {%- if site.designation -%}
8
+ <p class="info">{{ site.title | escape }}</p>
9
+ {%- endif -%}
10
+
11
+ {%- if site.email -%}
12
+ <a class="info u-email" href="mailto:{{ site.email }}">{{ site.email }}</a>
13
+ {%- endif -%}
14
+
15
+ <p class="desc">{{- site.description | escape -}}</p>
16
+
17
+ {%- include social.html -%}
18
+ </div>
@@ -0,0 +1,20 @@
1
+ {%- if page.comments != false and jekyll.environment == "production" -%}
2
+
3
+ <div id="disqus_thread"></div>
4
+ <script>
5
+ var disqus_config = function () {
6
+ this.page.url = '{{ page.url | absolute_url }}';
7
+ this.page.identifier = '{{ page.url | absolute_url }}';
8
+ };
9
+
10
+ (function() {
11
+ var d = document, s = d.createElement('script');
12
+
13
+ s.src = 'https://{{ site.disqus.shortname }}.disqus.com/embed.js';
14
+
15
+ s.setAttribute('data-timestamp', +new Date());
16
+ (d.head || d.body).appendChild(s);
17
+ })();
18
+ </script>
19
+ <noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript>
20
+ {%- endif -%}
@@ -0,0 +1,9 @@
1
+ <script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
2
+ <script>
3
+ window['ga-disable-{{ site.google_analytics }}'] = window.doNotTrack === "1" || navigator.doNotTrack === "1" || navigator.doNotTrack === "yes" || navigator.msDoNotTrack === "1";
4
+ window.dataLayer = window.dataLayer || [];
5
+ function gtag(){dataLayer.push(arguments);}
6
+ gtag('js', new Date());
7
+
8
+ gtag('config', '{{ site.google_analytics }}');
9
+ </script>
@@ -0,0 +1,12 @@
1
+ <head>
2
+ <meta charset="utf-8">
3
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
4
+ <meta name="viewport" content="width=device-width, initial-scale=1">
5
+ {%- seo -%}
6
+ <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
7
+ <link rel="stylesheet" href="{{ "/assets/css/style.css" | relative_url }}">
8
+ {%- feed_meta -%}
9
+ {%- if jekyll.environment == 'production' and site.google_analytics -%}
10
+ {%- include google-analytics.html -%}
11
+ {%- endif -%}
12
+ </head>
@@ -0,0 +1,2 @@
1
+ <header class="site-header">
2
+ </header>
@@ -0,0 +1,28 @@
1
+ <div class="wrap-nav">
2
+ {%- assign default_paths = site.pages | map: "path" -%}
3
+ {%- assign page_paths = site.header_pages | default: default_paths -%}
4
+ {%- assign titles_size = site.pages | map: 'title' | join: '' | size -%}
5
+ <a class="site-title" rel="author" href="{{ "/" | relative_url }}">{{ site.title | escape }}</a>
6
+
7
+ {%- if titles_size > 0 -%}
8
+ <nav class="site-nav">
9
+ <input type="checkbox" id="nav-trigger" class="nav-trigger" />
10
+ <label for="nav-trigger">
11
+ <span class="menu-icon">
12
+ <svg viewBox="0 0 18 15" width="18px" height="15px">
13
+ <path 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.032C17.335,0,18,0.665,18,1.484L18,1.484z M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.032C17.335,6.031,18,6.696,18,7.516L18,7.516z M18,13.516C18,14.335,17.335,15,16.516,15H1.484 C0.665,15,0,14.335,0,13.516l0,0c0-0.82,0.665-1.483,1.484-1.483h15.032C17.335,12.031,18,12.695,18,13.516L18,13.516z"/>
14
+ </svg>
15
+ </span>
16
+ </label>
17
+
18
+ <div class="trigger">
19
+ {%- for path in page_paths -%}
20
+ {%- assign my_page = site.pages | where: "path", path | first -%}
21
+ {%- if my_page.title -%}
22
+ <a class="page-link" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a>
23
+ {%- endif -%}
24
+ {%- endfor -%}
25
+ </div>
26
+ </nav>
27
+ {%- endif -%}
28
+ </div>
@@ -0,0 +1,19 @@
1
+ <div class="social">
2
+ <ul class="social-media-list">
3
+ {%- if site.dribbble_username -%}<li><a href="https://dribbble.com/{{ site.dribbble_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#dribbble' | relative_url }}"></use></svg> <span class="username">{{ site.dribbble_username| escape }}</span></a></li>{%- endif -%}
4
+ {%- if site.facebook_username -%}<li><a href="https://www.facebook.com/{{ site.facebook_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#facebook' | relative_url }}"></use></svg> <span class="username">{{ site.facebook_username| escape }}</span></a></li>{%- endif -%}
5
+ {%- if site.flickr_username -%}<li><a href="https://www.flickr.com/photos/{{ site.flickr_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#flickr' | relative_url }}"></use></svg> <span class="username">{{ site.flickr_username| escape }}</span></a></li>{%- endif -%}
6
+ {%- if site.github_username -%}<li><a href="https://github.com/{{ site.github_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#github' | relative_url }}"></use></svg> <span class="username">{{ site.github_username| escape }}</span></a></li>{%- endif -%}
7
+ {%- if site.instagram_username -%}<li><a href="https://www.instagram.com/{{ site.instagram_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#instagram' | relative_url }}"></use></svg> <span class="username">{{ site.instagram_username| escape }}</span></a></li>{%- endif -%}
8
+ {%- if site.linkedin_username -%}<li><a href="https://www.linkedin.com/in/{{ site.linkedin_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#linkedin' | relative_url }}"></use></svg> <span class="username">{{ site.linkedin_username| escape }}</span></a></li>{%- endif -%}
9
+ {%- if site.pinterest_username -%}<li><a href="https://www.pinterest.com/{{ site.pinterest_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#pinterest' | relative_url }}"></use></svg> <span class="username">{{ site.pinterest_username| escape }}</span></a></li>{%- endif -%}
10
+ {%- for mst in site.mastodon -%}{%- if mst.username and mst.instance -%}<li><a rel="me" href="https://{{ mst.instance| cgi_escape | escape}}/@{{mst.username}}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#mastodon' | relative_url }}"></use></svg> <span class="username">{{ mst.username|escape }}</span></a></li>{%- endif -%}{%- endfor -%}
11
+ {%- if site.twitter_username -%}<li><a href="https://twitter.com/{{ site.twitter_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#twitter' | relative_url }}"></use></svg> <span class="username">{{ site.twitter_username| escape }}</span></a></li>{%- endif -%}
12
+ {%- if site.youtube_username -%}<li><a href="https://www.youtube.com/{{ site.youtube_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#youtube' | relative_url }}"></use></svg> <span class="username">{{ site.youtube_username| escape }}</span></a></li>{%- endif -%}
13
+ {%- if site.youtube_channel -%}<li><a href="https://www.youtube.com/channel/{{ site.youtube_channel| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#youtube' | relative_url }}"></use></svg><span class="username">{%- if site.youtube_channel_name -%}{{ site.youtube_channel_name | escape }}{%- else -%}YouTube{%- endif -%}</span></a></li>{%- endif -%}
14
+ {%- if site.telegram_username -%}<li><a href="https://t.me/{{ site.telegram_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#telegram' | relative_url }}"></use></svg> <span class="username">{{ site.telegram_username| escape }}</span></a></li>{%- endif -%}
15
+ {%- if site.microdotblog_username -%}<li><a href="https://micro.blog/{{ site.microdotblog_username| cgi_escape | escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#microdotblog' | relative_url }}"></use></svg> <span class="username">{{ site.microdotblog_username| escape }}</span></a></li>{%- endif -%}
16
+ {%- if site.googleplus_username -%}<li><a href="https://plus.google.com/{{ site.googleplus_username| escape }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#googleplus' | relative_url }}"></use></svg> <span class="username">{{ site.googleplus_username| escape }}</span></a></li>{%- endif -%}
17
+ {%- if site.rss -%}<li><a href="{{ 'feed.xml' | relative_url }}"><svg class="svg-icon grey"><use xlink:href="{{ '/assets/minima-social-icons.svg#rss' | relative_url }}"></use></svg> <span>{{ site.rss | escape }}</span></a></li>{%- endif -%}
18
+ </ul>
19
+ </div>
@@ -0,0 +1,21 @@
1
+ <!DOCTYPE html>
2
+ <html lang="{{ page.lang | default: site.lang | default: 'en' }}">
3
+ {%- include head.html -%}
4
+
5
+ <body>
6
+
7
+ <div class="container">
8
+ {%- include header.html -%}
9
+
10
+ <main>
11
+ <div class="row">
12
+ {%- include bio_card.html -%}
13
+ <div class="right col-lg-8">
14
+ {%- include nav.html -%}
15
+ {{ content }}
16
+ </div>
17
+ </main>
18
+ </div>
19
+ </body>
20
+
21
+ </html>
@@ -0,0 +1,52 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <div class="home">
6
+ {%- if page.title -%}
7
+ <h1 class="page-heading">{{ page.title }}</h1>
8
+ {%- endif -%}
9
+
10
+ {{ content }}
11
+
12
+ {%- if site.posts.size > 0 -%}
13
+ <h2 class="post-list-heading">{{ page.list_title | default: "Posts" }}</h2>
14
+ <ul class="post-list">
15
+ {%- for post in site.posts -%}
16
+ <li>
17
+ {%- assign date_format = site.minima.date_format | default: "%b %-d, %Y" -%}
18
+ <h3>
19
+ <a class="post-link" href="{{ post.url | relative_url }}">
20
+ {{ post.title | escape }}
21
+ </a>
22
+ <span class="post-meta">
23
+ {{ post.short_description }}
24
+ </span>
25
+ <div class="clearfix"></div>
26
+ <span class="post-date">
27
+ on {{ post.date | date: date_format }}
28
+ </span>
29
+ </h3>
30
+ {%- if site.show_excerpts -%}
31
+ {{ post.excerpt }}
32
+ {%- endif -%}
33
+ </li>
34
+ {%- endfor -%}
35
+ </ul>
36
+ {%- endif -%}
37
+
38
+ {%- if site.twitter_ref_src and site.twitter_username and site.show_twitter_feed -%}
39
+ <h2 class='post-list-heading'>Twitter Feeds</h2>
40
+
41
+ <a data-chrome="{{ site.twitter_feed_setting | default: 'noheader, noscrollbar, nofooter, noborders' }}" data-tweet-limit="{{ site.tweets_limit | default: 3 }}" data-dnt="true" class="twitter-timeline" href="https://twitter.com/{{ site.twitter_ref_src }}">
42
+ </a>
43
+
44
+ <div class="twitter-timeline-load-more">
45
+ <center>
46
+ <a class='twitter-timeline-load-more-prompt twitter-timeline-show-more-button customisable' target="_blank" href="https://twitter.com/{{ site.twitter_username }}">Load more tweets</a>
47
+ </center>
48
+ </div>
49
+
50
+ <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
51
+ {%- endif -%}
52
+ </div>
@@ -0,0 +1,14 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <article class="post">
5
+
6
+ <header class="post-header">
7
+ <h1 class="post-title">{{ page.title | escape }}</h1>
8
+ </header>
9
+
10
+ <div class="post-content">
11
+ {{ content }}
12
+ </div>
13
+
14
+ </article>
@@ -0,0 +1,27 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <article class="post h-entry" itemscope itemtype="http://schema.org/BlogPosting">
5
+
6
+ <header class="post-header">
7
+ <h1 class="post-title p-name" itemprop="name headline">{{ page.title | escape }}</h1>
8
+ <p class="post-meta">
9
+ <time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
10
+ {%- assign date_format = site.minima.date_format | default: "%b %-d, %Y" -%}
11
+ {{ page.date | date: date_format }}
12
+ </time>
13
+ {%- if page.author -%}
14
+ • <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span class="p-author h-card" itemprop="name">{{ page.author | escape }}</span></span>
15
+ {%- endif -%}</p>
16
+ </header>
17
+
18
+ <div class="post-content e-content" itemprop="articleBody">
19
+ {{ content }}
20
+ </div>
21
+
22
+ {%- if site.disqus.shortname -%}
23
+ {%- include disqus_comments.html -%}
24
+ {%- endif -%}
25
+
26
+ <a class="u-url" href="{{ page.url | relative_url }}" hidden></a>
27
+ </article>
data/_sass/minima.scss ADDED
@@ -0,0 +1,58 @@
1
+ @charset "utf-8";
2
+
3
+ // Define defaults for each variable.
4
+
5
+ $base-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !default;
6
+ $base-font-size: 16px !default;
7
+ $base-font-weight: 400 !default;
8
+ $small-font-size: $base-font-size * 0.875 !default;
9
+ $base-line-height: 1.5 !default;
10
+
11
+ $spacing-unit: 30px !default;
12
+
13
+ $text-color: #111 !default;
14
+ $background-color: #fdfdfd !default;
15
+ $brand-color: #2a7ae2 !default;
16
+
17
+ $grey-color: #828282 !default;
18
+ $grey-color-light: lighten($grey-color, 40%) !default;
19
+ $grey-color-dark: darken($grey-color, 25%) !default;
20
+ $orange-color: #f66a0a !default;
21
+ $table-text-align: left !default;
22
+
23
+ // Width of the content area
24
+ $content-width: 800px !default;
25
+
26
+ $on-palm: 600px !default;
27
+ $on-laptop: 800px !default;
28
+
29
+ $on-medium: $on-palm !default;
30
+ $on-large: $on-laptop !default;
31
+
32
+ // Use media queries like this:
33
+ // @include media-query($on-palm) {
34
+ // .wrapper {
35
+ // padding-right: $spacing-unit / 2;
36
+ // padding-left: $spacing-unit / 2;
37
+ // }
38
+ // }
39
+ // Notice the following mixin uses max-width, in a deprecated, desktop-first
40
+ // approach, whereas media queries used elsewhere now use min-width.
41
+ @mixin media-query($device) {
42
+ @media screen and (max-width: $device) {
43
+ @content;
44
+ }
45
+ }
46
+
47
+ @mixin relative-font-size($ratio) {
48
+ font-size: $base-font-size * $ratio;
49
+ }
50
+
51
+ // Import partials.
52
+ @import
53
+ "minima/base",
54
+ "minima/layout",
55
+ "minima/posts",
56
+ "minima/feeds",
57
+ "minima/syntax-highlighting"
58
+ ;