arco 0.1.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 860a024f04415c6e0d8650dbcd4cdb11413b5fdd0ae5097a1fd843d81c4bf92d
4
- data.tar.gz: 245a865ff73a7b353aabd0cdb176a4d3191f82320f5d3843578dcfa8d3efbddd
3
+ metadata.gz: 99f7f5507af4c5dfc8556e03a348ef13e6ade77c4a2bd3d1809511b4a60f54b0
4
+ data.tar.gz: 152d1a32a4df721048c32502c28c0898d104dee448fce9ce8ab5a1b366d219a5
5
5
  SHA512:
6
- metadata.gz: 984f567c79b653a1de26f90d8e81d32d68a7bd53361d899169bee115c45d992c39f2ad1b6fd9bd5d83b766e34fee25624628f2f9e96e51fbe3693420f6015e32
7
- data.tar.gz: 3351f049130df6f552c283a1b3cc8e45342641ca54ebb39346a1207c7e139bf90eba472839c71d831e8e9fe5c490cd5ed7fb024ba21ede2f2f2ce7d32246516e
6
+ metadata.gz: 8e3718a5bbf4c1f231218ddfb82e53bc4ffadc8773aabbb69b209c8893a23b09d53763faebca9d39159653ad179c63a4565654fa2eed1efc9e0191eda8c71e64
7
+ data.tar.gz: 27fe3ae0303cc409c4e0a133be2c00d4b50a7ca6fdb61b4449e7a9d12d8ff0fd8adbfd01652292bf1d79d1f3fe41a4ad03dc70a11928face236aae36c20777c4
@@ -0,0 +1,100 @@
1
+ # arco
2
+
3
+ Arco is a responsive fixed-sidebar layout with a two column masonry grid which also features a landing page, a 404 page, smooth page transitions and a simple permalink structure.
4
+
5
+ This theme also utilises [jekyll-seo-tag](https://github.com/jekyll/jekyll-seo-tag) and [jekyll-sitemap](https://github.com/jekyll/jekyll-sitemap) to ensure your work will be seen.
6
+
7
+ See this theme in use at [meebuhs.github.io](https://meebuhs.github.io) and check the [https://github.com/meebuhs/meebuhs.github.io](source code) to get yourself started.
8
+
9
+ ## Installation
10
+
11
+ Add this line to your Jekyll site's `Gemfile`:
12
+
13
+ ```ruby
14
+ gem "arco"
15
+ ```
16
+
17
+ And add this line to your Jekyll site's `_config.yml`:
18
+
19
+ ```yaml
20
+ theme: arco
21
+ ```
22
+
23
+ And then execute:
24
+
25
+ $ bundle
26
+
27
+ Or install it yourself as:
28
+
29
+ $ gem install arco
30
+
31
+ ## Github Pages
32
+
33
+ In your `_config.yml` delete the `theme: ` line and add:
34
+
35
+ ```yaml
36
+ remote_theme: meebuhs/arco
37
+ ```
38
+
39
+ You also need to make the following changes in your `Gemfile`:
40
+
41
+ ```Gemfile
42
+ # Comment the jekyll gem
43
+ # gem "jekyll", "~> 4.1.0"
44
+ # Uncomment github-pages
45
+ gem "github-pages", group: :jekyll_plugins
46
+ ```
47
+
48
+ ## Usage
49
+
50
+ ### Setup
51
+
52
+ To get started you need to copy the `pages` folder from this repository to your site.
53
+
54
+ By default it features a landing page, if you would like to bypass the landing page, delete `index.html` and then rename `projects.html` to `index.html`.
55
+
56
+ ### Site configuration
57
+
58
+ The following settings can be configured in your site's `_config.yml`
59
+
60
+ ```yaml
61
+ title: site-title
62
+ tagline: site-tagline
63
+ description: site-description
64
+ image: /assets/images/image.png
65
+ url: https://github.com/meebuhs/arco
66
+ github_url: https://github.com/meebuhs
67
+ resume: true | false
68
+ author: Alex Sharpe
69
+ lang: en-AU
70
+ ```
71
+
72
+ There are additional parameters which can be set for use with `jekyll-seo-tag`. [See here for a complete list](https://github.com/jekyll/jekyll-seo-tag/blob/master/docs/usage.md)
73
+
74
+ ### Expected post frontmatter
75
+
76
+ ```
77
+ ---
78
+ layout: post
79
+ title: Post title
80
+ description: Post description
81
+ category: completed | ongoing
82
+ permalink: /projects/post-title
83
+ cover-image: /assets/image-for-front-page.png
84
+ image: /assets/image-for-top-of-post.png
85
+ mathjax: true | false
86
+ ---
87
+ ```
88
+
89
+ ### Markdown features
90
+
91
+ [Check here](https://meebuhs.github.io/projects/arco) for examples of the supported markdown features.
92
+
93
+ ### Resume support
94
+
95
+ To add a resume to the site, set `resume: true` in your `_config.yml`.
96
+ Then create a folder called `_includes` at the root of your site and add your `resume.html` to it.
97
+
98
+ ## License
99
+
100
+ The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
@@ -1,2 +1,16 @@
1
+ # Site settings
2
+ title: site-title
3
+ tagline: site-tagline
4
+ description: site-description
5
+ image: /assets/images/image.png
6
+ url: https://github.com/meebuhs/arco
7
+ github_url: https://github.com/meebuhs
8
+ resume: true
9
+ author: Alex Sharpe
10
+ lang: en-AU
11
+
12
+ # Build settings
1
13
  theme: arco
2
- highlighter: rouge
14
+ plugins:
15
+ - jekyll-seo-tag
16
+ - jekyll-sitemap
@@ -1,9 +1,10 @@
1
1
  <section id="cover" class="cover">
2
2
  <div class="cover-text">
3
- <h1><a href="{{ "/" | absolute_url }}">{{ site.title | default: site.github.repository_name }}</a></h1>
4
- <h6>{{ site.description | default: site.github.project_tagline }}</h6>
3
+ {% if site.image %}<img class="site-image" src="{{ site.image }}" />{% endif %}
4
+ <h1>{{ site.title }}</a></h1>
5
+ <h6>{{ site.description }}</h6>
5
6
  </div>
6
- <div id="open-button-container" class="open-button-container">
7
- <a href="/projects/" class="open-button">See my projects →</a>
7
+ <div class="open-button-container">
8
+ <a href="/projects/" id="open-button" class="button-dark">See my projects</a>
8
9
  </div>
9
10
  </section>
@@ -1,8 +1,9 @@
1
1
  <section id="sidebar" class="sidebar">
2
2
  <svg id="sidebar-fader"></svg>
3
3
  <div class="sidebar-text">
4
- <h1><a href="{{ "/projects/" | absolute_url }}" class="fade-onclick">{{ site.title | default: site.github.repository_name }}</a></h1>
5
- <h6>{{ site.description | default: site.github.project_tagline }}</h6>
4
+ {% if site.image %}<img class="site-image" src="{{ site.image }}" />{% endif %}
5
+ <h1><a href="{{ "/projects/" }}" class="fade-onclick">{{ site.title }}</a></h1>
6
+ <h6>{{ site.description }}</h6>
6
7
  </div>
7
8
  <div class="sidebar-links">
8
9
  {% assign identifier = page.url | split: "/" | last %}
@@ -17,7 +18,6 @@
17
18
  {% else %}
18
19
  <a href="{{ "/projects/ongoing" }}" class="fade-onclick">ongoing</a>
19
20
  {% endif %}
20
- /
21
- {% if site.github %}<a href="{{ site.github }}">github</a> {% endif %}{% if site.resume %} / <a href="{{ "/resume" }}" class="fade-onclick">resume</a> {% endif %}
21
+ {% if site.github_url %} / <a href="{{ site.github_url }}">github</a> {% endif %}{% if site.resume %} / <a href="{{ "/resume" }}" class="fade-onclick">resume</a> {% endif %}
22
22
  </div>
23
23
  </section>
@@ -0,0 +1,10 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en-AU">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <link rel="stylesheet" href="/assets/css/main.css">
6
+ </head>
7
+ <body>
8
+ {{ content }}
9
+ </body>
10
+ </html>
@@ -5,6 +5,7 @@
5
5
  <link rel="stylesheet" href="/assets/css/main.css">
6
6
  <link rel="stylesheet" href="/assets/flexmasonry/flexmasonry.css">
7
7
  <script src="/assets/flexmasonry/flexmasonry.js"></script>
8
+ {% seo %}
8
9
  </head>
9
10
  <body>
10
11
  {% include sidebar.html %}
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <link rel="stylesheet" href="/assets/css/main.css">
6
+ {% seo %}
6
7
  </head>
7
8
  <body>
8
9
  {% include cover.html %}
9
10
  </body>
10
- <script src="/assets/js/cover-transitions.js"></script>
11
11
  </html>
@@ -2,18 +2,21 @@
2
2
  layout: default
3
3
  ---
4
4
 
5
- {% include mathjax.html %}
5
+ {% if page.mathjax %}
6
+ {% include mathjax.html %}
7
+ {% endif %}
6
8
 
7
9
  <section class="content">
8
10
  <svg id="content-fader"></svg>
9
11
  <div class="post">
10
12
  <div class="post-title"><h1>{{ page.title }}</h1></div>
13
+ <div class="post-description">{{ page.description }}</div>
11
14
  <div class="post-header">
12
15
  <span class="post-date">{{ page.date | date_to_string}}</span>
13
16
  &middot;
14
17
  <a href="{{ "/projects/" }}{{ page.category }}" class="fade-onclick"><span class="post-category">{{ page.category }}</span></a>
15
18
  </div>
16
- <img class="post-image" src="{{ page.top-image }}" />
19
+ <img class="post-image" src="{{ page.image }}" />
17
20
 
18
21
  <div class="post-content">
19
22
  {{ content }}
@@ -0,0 +1,29 @@
1
+ @import "constants";
2
+ @import "fonts";
3
+
4
+ .notfound-text {
5
+ h1 {
6
+ color: $primary-highlight;
7
+ margin: 0;
8
+ }
9
+ h6 {
10
+ text-transform: uppercase;
11
+ font-size: .9rem;
12
+ color: $text-colour-light;
13
+ }
14
+ }
15
+
16
+ .notfound {
17
+ height: 100%;
18
+ width: 100%;
19
+ display: flex;
20
+ flex-direction: column;
21
+ text-align: center;
22
+ justify-content: center;
23
+ top: 0;
24
+ position: fixed;
25
+ z-index: 9999;
26
+ background: $sidebar-colour;
27
+ color: $text-colour-light;
28
+ transition: all .25s ease;
29
+ }
@@ -84,12 +84,9 @@ blockquote {
84
84
  padding: 0.5em 1em;
85
85
  }
86
86
 
87
- table, th, td {
88
- border: none;
89
- }
90
-
91
87
  .table {
92
88
  display: table;
89
+ border-collapse: collapse;
93
90
  }
94
91
 
95
92
  .table-cell {
@@ -114,14 +111,6 @@ table {
114
111
  > tr:nth-child(odd) {
115
112
  background-color: $table-background-colour;
116
113
  }
117
- > tr > td {
118
- border-radius: 0;
119
- }
120
- }
121
- &.centered {
122
- thead tr th, tbody tr td, tfoot tr td {
123
- text-align: center;
124
- }
125
114
  }
126
115
  }
127
116
 
@@ -130,14 +119,17 @@ td, th {
130
119
  display: table-cell;
131
120
  text-align: left;
132
121
  vertical-align: middle;
133
- border-radius: 2px;
134
122
  }
135
123
 
136
-
137
124
  li, ul {
138
125
  line-height: 1.5em;
139
126
  }
140
127
 
128
+ .site-image {
129
+ width: 200px;
130
+ border-radius: 50%;
131
+ }
132
+
141
133
  .content {
142
134
  width: auto;
143
135
  height: auto;
@@ -0,0 +1,47 @@
1
+ @mixin button($background, $highlight) {
2
+ display: inline-block;
3
+ padding: 10px 25px;
4
+ border-radius: 5px;
5
+ transition: all .25s ease;
6
+ justify-content: center;
7
+ text-align: center;
8
+ border: 2px solid $background;
9
+ background-color: $background;
10
+ color: $highlight;
11
+ &:hover, &:focus {
12
+ background-color: $highlight;
13
+ color: $background;
14
+ }
15
+ }
16
+
17
+ .button-dark {
18
+ @include button(white, $sidebar-colour)
19
+ }
20
+
21
+ .button-dark-primary {
22
+ @include button($primary-highlight, $sidebar-colour)
23
+ }
24
+
25
+ .button-dark-secondary {
26
+ @include button($secondary-highlight, $sidebar-colour)
27
+ }
28
+
29
+ .button-dark-tertiary {
30
+ @include button($tertiary-highlight, $sidebar-colour)
31
+ }
32
+
33
+ .button-light {
34
+ @include button($sidebar-colour, white)
35
+ }
36
+
37
+ .button-light-primary {
38
+ @include button($primary-highlight, white)
39
+ }
40
+
41
+ .button-light-secondary {
42
+ @include button($secondary-highlight, white)
43
+ }
44
+
45
+ .button-light-tertiary {
46
+ @include button($tertiary-highlight, white)
47
+ }
@@ -3,10 +3,8 @@
3
3
 
4
4
  .cover-text {
5
5
  h1 {
6
+ color: $primary-highlight;
6
7
  margin: 0;
7
- :hover {
8
- color: lighten($primary-highlight, 14%);
9
- }
10
8
  }
11
9
  h6 {
12
10
  text-transform: uppercase;
@@ -21,22 +19,11 @@
21
19
  }
22
20
  }
23
21
 
24
- .open-button {
25
- height: 50px;
26
- width: 200px;
27
- border: 2px solid white;
28
- border-radius: 5px;
29
- transition: all .25s ease;
22
+ #open-button {
30
23
  display: flex;
31
24
  flex-direction: column;
32
25
  justify-content: center;
33
26
  text-align: center;
34
- background-color: $sidebar-colour;
35
- color: white;
36
- &:hover, &:focus {
37
- background-color: white;
38
- color: $sidebar-colour
39
- }
40
27
  }
41
28
 
42
29
  .open-button-container {
@@ -71,11 +58,6 @@
71
58
  display: flex;
72
59
  flex-direction: column;
73
60
  }
74
-
75
- .slide {
76
- height: $sidebar-height;
77
- animation-name: slide-up;
78
- }
79
61
  }
80
62
 
81
63
  /* horizontal layout */
@@ -85,29 +67,4 @@
85
67
  text-align: center;
86
68
  justify-content: center;
87
69
  }
88
-
89
- .slide {
90
- width: $sidebar-width;
91
- animation-name: slide-left;
92
- }
93
- }
94
-
95
- @keyframes slide-left {
96
- from {
97
- width: 100%;
98
- }
99
-
100
- to {
101
- width: $sidebar-width;
102
- }
103
- }
104
-
105
- @keyframes slide-up {
106
- from {
107
- height: 100%;
108
- }
109
-
110
- to {
111
- height: $sidebar-height;
112
- }
113
- }
70
+ }
@@ -3,10 +3,14 @@
3
3
  width: 100%;
4
4
  }
5
5
 
6
- .post-title h1{
6
+ .post-title h1 {
7
7
  margin-bottom: 0;
8
8
  }
9
9
 
10
+ .post-description {
11
+ margin-bottom: 0.5em;
12
+ }
13
+
10
14
  .post-date {
11
15
  color: $secondary-highlight;
12
16
  font-weight: bold;
@@ -34,4 +38,5 @@
34
38
  max-height: 600px;
35
39
  display: block;
36
40
  margin: 0 auto;
41
+ border-radius: 5px;
37
42
  }
@@ -39,8 +39,10 @@ pre code {
39
39
 
40
40
  .highlight {
41
41
  margin: 0;
42
+ border-radius: 5px;
42
43
  pre {
43
44
  position: relative;
45
+ border-radius: 5px;
44
46
  }
45
47
  pre code {
46
48
  color: #cccccc;
@@ -3,9 +3,11 @@
3
3
 
4
4
  @import "arco";
5
5
  @import "cover";
6
+ @import "404";
6
7
  @import "sidebar";
7
8
  @import "footer";
8
9
  @import "post-list";
9
10
  @import "post";
10
11
  @import "normalize";
11
- @import "syntax-highlighting";
12
+ @import "syntax-highlighting";
13
+ @import "buttons";
metadata CHANGED
@@ -1,48 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arco
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - meebuhs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-26 00:00:00.000000000 Z
11
+ date: 2020-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '4.1'
19
+ version: '3.5'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '5.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '3.5'
30
+ - - "<"
25
31
  - !ruby/object:Gem::Version
26
- version: '4.1'
32
+ version: '5.0'
27
33
  description:
28
34
  email:
29
- - alexeksharpe@gmail.com
35
+ - meebuhs@gmail.com
30
36
  executables: []
31
37
  extensions: []
32
38
  extra_rdoc_files: []
33
39
  files:
34
40
  - LICENSE.txt
41
+ - README.md
35
42
  - _config.yml
36
43
  - _includes/cover.html
37
44
  - _includes/footer.html
38
45
  - _includes/mathjax.html
39
46
  - _includes/sidebar.html
47
+ - _layouts/404.html
40
48
  - _layouts/default.html
41
49
  - _layouts/landing.html
42
50
  - _layouts/post-list.html
43
51
  - _layouts/post.html
44
52
  - _layouts/resume.html
53
+ - _sass/404.scss
45
54
  - _sass/arco.scss
55
+ - _sass/buttons.scss
46
56
  - _sass/constants.scss
47
57
  - _sass/cover.scss
48
58
  - _sass/fonts.scss
@@ -65,7 +75,6 @@ files:
65
75
  - assets/fonts/roboto-mono/RobotoMono-BoldItalic.ttf
66
76
  - assets/fonts/roboto-mono/RobotoMono-Italic.ttf
67
77
  - assets/fonts/roboto-mono/RobotoMono-Regular.ttf
68
- - assets/js/cover-transitions.js
69
78
  - assets/js/fade-transitions.js
70
79
  - assets/js/post-grid-init.js
71
80
  - assets/js/sidebar.js
@@ -1,16 +0,0 @@
1
- document.addEventListener("DOMContentLoaded", function() {
2
- let openButton = document.getElementsByClassName("open-button");
3
- openButton[0].addEventListener("click", function(event) {
4
- let cover = document.getElementById("cover"),
5
- anchor = event.currentTarget;
6
-
7
- let listener = function() {
8
- window.location = anchor.href;
9
- cover.removeEventListener("animationend", listener);
10
- };
11
- cover.addEventListener("animationend", listener);
12
-
13
- event.preventDefault();
14
- cover.classList.add("slide");
15
- });
16
- });