Skip to content

Commit 0d77a00

Browse files
PlailectCouleeApps
andcommitted
initial commit
Co-authored-by: Glenn Smith <[email protected]>
0 parents  commit 0d77a00

File tree

132 files changed

+12711
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

132 files changed

+12711
-0
lines changed

.gitignore

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
_site/
2+
.sass-cache/
3+
.jekyll-metadata
4+
vendor/
5+
.idea/
6+
.bundle/
7+
Gemfile.lock

404.html

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
title: Not Found
3+
description: This does not exist
4+
permalink: /404.html
5+
sitemap: false
6+
---

Gemfile

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
source 'https://rubygems.org'
2+
3+
gem 'jekyll', '3.7.4'
4+
5+
group :jekyll_plugins do
6+
gem 'jekyll-archives', '2.1.1'
7+
gem 'jekyll-feed', '0.9.3'
8+
gem 'jekyll-paginate', '1.1.0'
9+
gem 'jekyll-seo-tag', '2.4.0'
10+
gem 'jekyll-sitemap', '1.2.0'
11+
end

LICENSE

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2016 CloudCannon
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 all
13+
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 THE
21+
SOFTWARE.

README.md

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# RPISEC Site / Blog
2+
3+
I'll use Ruby and you can't stop me.
4+
5+
## Howto
6+
7+
### Install dependencies
8+
9+
```
10+
bundle install
11+
```
12+
13+
### Build site locally
14+
15+
This will build the site and bind a web server to `localhost:4000`:
16+
17+
```
18+
bundle exec jekyll serve
19+
```
20+
21+
### Add new blog post
22+
23+
Add new a new markdown file to `_posts/`
24+
25+
### Publish changes
26+
27+
Commit and push to the repo, GitHub Pages will build the site automagically^tm.

_config.yml

+109
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# ----
2+
# Site
3+
4+
title: RPISEC
5+
url: "https://rpis.ec"
6+
markdown: kramdown
7+
highlighter: rouge
8+
baseurl:
9+
google_analytics_key:
10+
google_maps_javascript_api_key:
11+
disqus_shortname:
12+
13+
# Values for the jekyll-seo-tag gem (https://github.com/jekyll/jekyll-seo-tag)
14+
logo: /images/rpisec.svg
15+
description: Computer security club at Rensselaer Polytechnic Institute.
16+
author:
17+
name:
18+
email:
19+
twitter: # twitter username without the @ symbol
20+
social:
21+
name: RPISEC
22+
links:
23+
- https://github.com/RPISEC/website
24+
25+
# -----
26+
# Build
27+
28+
timezone: Etc/UTC
29+
30+
collections:
31+
staff_members:
32+
_hide_content: true
33+
34+
paginate: 10
35+
paginate_path: "/blog/:num/"
36+
permalink: /blog/:title/
37+
38+
defaults:
39+
-
40+
scope:
41+
path: ""
42+
type: "posts"
43+
values:
44+
layout: "post"
45+
_options:
46+
content:
47+
width: 1500
48+
height: 2500
49+
-
50+
scope:
51+
path: ""
52+
values:
53+
layout: "page"
54+
-
55+
scope:
56+
path: "index.html"
57+
values:
58+
layout: "default"
59+
-
60+
scope:
61+
path: "contact.html"
62+
values:
63+
full_width: true
64+
65+
jekyll-archives:
66+
enabled:
67+
- categories
68+
69+
plugins:
70+
- jekyll-archives
71+
- jekyll-sitemap
72+
- jekyll-seo-tag
73+
- jekyll-feed
74+
- jekyll-paginate
75+
76+
exclude:
77+
- vendor
78+
- .idea
79+
- Gemfile
80+
- Gemfile.lock
81+
- README.md
82+
- LICENCE
83+
- vendor
84+
- .asset-cache
85+
- .bundle
86+
- .jekyll-assets-cache
87+
- .sass-cache
88+
89+
# -----------
90+
# CloudCannon
91+
92+
social_icons:
93+
- Instagram
94+
- LinkedIn
95+
- Pinterest
96+
- Tumblr
97+
- Twitter
98+
- YouTube
99+
- RSS
100+
101+
_comments:
102+
map: Update the map location and display settings.
103+
latitude: Coordinates for the center marker on the map.
104+
longitude: Coordinates for the center marker on the map.
105+
zoom: The zoom level for the map.
106+
pricing_table: Update the information in the pricing tables.
107+
highlight: Emphasis the text
108+
color: The background colour used in the plan name and call to action.
109+
new_window: Open link in new window

_data/footer.yml

Whitespace-only changes.

_data/navigation.yml

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
- name: About
2+
link: /about/
3+
new_window: false
4+
highlight: false
5+
- name: Blog
6+
link: /blog/
7+
new_window: false
8+
highlight: false
9+
- name: Contact
10+
link: /contact/
11+
new_window: false
12+
highlight: false

_includes/list-posts.html

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{% for post in include.posts %}
2+
<li class="blog-post">
3+
<h3><a href="{% include relative-src.html src=post.url %}">{{ post.title }}</a></h3>
4+
{% include post-title.html post=post %}
5+
<div class="post-content">
6+
{{ post.excerpt }}
7+
<div><a href="{% include relative-src.html src=post.url %}">Read more...</a></div>
8+
</div>
9+
</li>
10+
{% endfor %}

_includes/navigation.html

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<nav>
2+
{% for link in site.data.navigation %}
3+
{% assign class = "" %}
4+
{% if link.highlight %}
5+
{% assign class = class | append: " highlight" %}
6+
{% endif %}
7+
8+
{% if link.link == page.url %}
9+
{% assign class = class | append: " active" %}
10+
{% endif %}
11+
<a href="{% include relative-src.html src=link.link %}" class="{{ class }}" {% if link.new_window %}target="_blank"{% endif %}>{{ link.name }}</a>
12+
{% endfor %}
13+
</nav>

_includes/post-title.html

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<p class="post-details">
2+
<span class="post-date">{{ include.post.date | date: "%B %d, %Y" }} |</span>
3+
<span class="post-authors">{{ include.post.authors }}</span>
4+
<span class="blog-categories">
5+
{% for category in include.post.categories %}
6+
<span class="blog-filter">
7+
<a href="{{ site.baseurl }}/category/{{ category | slugify }}/">{{ category | capitalize }}</a>
8+
</span>
9+
{% endfor %}
10+
</span>
11+
</p>

_includes/relative-src.html

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{% assign prefix = include.src | slice: 0, 2 %}{% assign protocol = include.src | slice: 0, 4 %}{% unless protocol == 'http' or prefix == "//" %}{{ site.baseurl }}{% endunless %}{{ include.src }}

_includes/social-icon.html

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{% case include.icon %}
2+
{% when "Facebook" %}
3+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M19,4V7H17A1,1 0 0,0 16,8V10H19V13H16V20H13V13H11V10H13V7.5C13,5.56 14.57,4 16.5,4M20,2H4A2,2 0 0,0 2,4V20A2,2 0 0,0 4,22H20A2,2 0 0,0 22,20V4C22,2.89 21.1,2 20,2Z" /></svg>
4+
{% when "Google Plus" %}
5+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M23,11H21V9H19V11H17V13H19V15H21V13H23M8,11V13.4H12C11.8,14.4 10.8,16.4 8,16.4C5.6,16.4 3.7,14.4 3.7,12C3.7,9.6 5.6,7.6 8,7.6C9.4,7.6 10.3,8.2 10.8,8.7L12.7,6.9C11.5,5.7 9.9,5 8,5C4.1,5 1,8.1 1,12C1,15.9 4.1,19 8,19C12,19 14.7,16.2 14.7,12.2C14.7,11.7 14.7,11.4 14.6,11H8Z" /></svg>
6+
{% when "Instagram" %}
7+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7.8,2H16.2C19.4,2 22,4.6 22,7.8V16.2A5.8,5.8 0 0,1 16.2,22H7.8C4.6,22 2,19.4 2,16.2V7.8A5.8,5.8 0 0,1 7.8,2M7.6,4A3.6,3.6 0 0,0 4,7.6V16.4C4,18.39 5.61,20 7.6,20H16.4A3.6,3.6 0 0,0 20,16.4V7.6C20,5.61 18.39,4 16.4,4H7.6M17.25,5.5A1.25,1.25 0 0,1 18.5,6.75A1.25,1.25 0 0,1 17.25,8A1.25,1.25 0 0,1 16,6.75A1.25,1.25 0 0,1 17.25,5.5M12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9Z" /></svg>
8+
{% when "LinkedIn" %}
9+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M19,19H16V13.7A1.5,1.5 0 0,0 14.5,12.2A1.5,1.5 0 0,0 13,13.7V19H10V10H13V11.2C13.5,10.36 14.59,9.8 15.5,9.8A3.5,3.5 0 0,1 19,13.3M6.5,8.31C5.5,8.31 4.69,7.5 4.69,6.5A1.81,1.81 0 0,1 6.5,4.69C7.5,4.69 8.31,5.5 8.31,6.5A1.81,1.81 0 0,1 6.5,8.31M8,19H5V10H8M20,2H4C2.89,2 2,2.89 2,4V20A2,2 0 0,0 4,22H20A2,2 0 0,0 22,20V4C22,2.89 21.1,2 20,2Z" /></svg>
10+
{% when "Pinterest" %}
11+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M13,16.2C12.2,16.2 11.43,15.86 10.88,15.28L9.93,18.5L9.86,18.69L9.83,18.67C9.64,19 9.29,19.2 8.9,19.2C8.29,19.2 7.8,18.71 7.8,18.1C7.8,18.05 7.81,18 7.81,17.95H7.8L7.85,17.77L9.7,12.21C9.7,12.21 9.5,11.59 9.5,10.73C9.5,9 10.42,8.5 11.16,8.5C11.91,8.5 12.58,8.76 12.58,9.81C12.58,11.15 11.69,11.84 11.69,12.81C11.69,13.55 12.29,14.16 13.03,14.16C15.37,14.16 16.2,12.4 16.2,10.75C16.2,8.57 14.32,6.8 12,6.8C9.68,6.8 7.8,8.57 7.8,10.75C7.8,11.42 8,12.09 8.34,12.68C8.43,12.84 8.5,13 8.5,13.2A1,1 0 0,1 7.5,14.2C7.13,14.2 6.79,14 6.62,13.7C6.08,12.81 5.8,11.79 5.8,10.75C5.8,7.47 8.58,4.8 12,4.8C15.42,4.8 18.2,7.47 18.2,10.75C18.2,13.37 16.57,16.2 13,16.2M20,2H4C2.89,2 2,2.89 2,4V20A2,2 0 0,0 4,22H20A2,2 0 0,0 22,20V4C22,2.89 21.1,2 20,2Z" /></svg>
12+
{% when "Tumblr" %}
13+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M16,11H13V14.9C13,15.63 13.14,16 14.1,16H16V19C16,19 14.97,19.1 13.9,19.1C11.25,19.1 10,17.5 10,15.7V11H8V8.2C10.41,8 10.62,6.16 10.8,5H13V8H16M20,2H4C2.89,2 2,2.89 2,4V20A2,2 0 0,0 4,22H20A2,2 0 0,0 22,20V4C22,2.89 21.1,2 20,2Z" /></svg>
14+
{% when "Twitter" %}
15+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M22.46,6C21.69,6.35 20.86,6.58 20,6.69C20.88,6.16 21.56,5.32 21.88,4.31C21.05,4.81 20.13,5.16 19.16,5.36C18.37,4.5 17.26,4 16,4C13.65,4 11.73,5.92 11.73,8.29C11.73,8.63 11.77,8.96 11.84,9.27C8.28,9.09 5.11,7.38 3,4.79C2.63,5.42 2.42,6.16 2.42,6.94C2.42,8.43 3.17,9.75 4.33,10.5C3.62,10.5 2.96,10.3 2.38,10C2.38,10 2.38,10 2.38,10.03C2.38,12.11 3.86,13.85 5.82,14.24C5.46,14.34 5.08,14.39 4.69,14.39C4.42,14.39 4.15,14.36 3.89,14.31C4.43,16 6,17.26 7.89,17.29C6.43,18.45 4.58,19.13 2.56,19.13C2.22,19.13 1.88,19.11 1.54,19.07C3.44,20.29 5.7,21 8.12,21C16,21 20.33,14.46 20.33,8.79C20.33,8.6 20.33,8.42 20.32,8.23C21.16,7.63 21.88,6.87 22.46,6Z" /></svg>
16+
{% when "YouTube" %}
17+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M10,16.5V7.5L16,12M20,4.4C19.4,4.2 15.7,4 12,4C8.3,4 4.6,4.19 4,4.38C2.44,4.9 2,8.4 2,12C2,15.59 2.44,19.1 4,19.61C4.6,19.81 8.3,20 12,20C15.7,20 19.4,19.81 20,19.61C21.56,19.1 22,15.59 22,12C22,8.4 21.56,4.91 20,4.4Z" /></svg>
18+
{% when "RSS" %}
19+
<svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><circle cx="6.18" cy="17.82" r="2.18"/><path d="M4 4.44v2.83c7.03 0 12.73 5.7 12.73 12.73h2.83c0-8.59-6.97-15.56-15.56-15.56zm0 5.66v2.83c3.9 0 7.07 3.17 7.07 7.07h2.83c0-5.47-4.43-9.9-9.9-9.9z"/></svg>
20+
{% endcase %}

_layouts/archive.html

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
layout: page
3+
---
4+
5+
<div class="text-container">
6+
{% assign blog = site.pages | where: "path", "blog/index.html" | first %}
7+
8+
{% if blog.title %}
9+
<h2>{{ blog.title }}</h2>
10+
{% endif %}
11+
12+
{% if blog.description %}
13+
<p class="subtext">{{ blog.description }}</p>
14+
{% endif %}
15+
16+
<div class="center-text">
17+
<span class="blog-filter cross"><a href="{{ site.baseurl }}/blog/">{{ page.title | capitalize }}</a></span>
18+
</div>
19+
20+
<ul class="blog-posts">
21+
{% include list-posts.html posts=page.posts %}
22+
</ul>
23+
</div>

_layouts/default.html

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
<!doctype html>
2+
3+
<html lang="en">
4+
<head>
5+
<meta charset="utf-8">
6+
<meta name="viewport" content="width=device-width, initial-scale=1">
7+
8+
{% seo %}
9+
{% feed_meta %}
10+
11+
<link rel="stylesheet" href="{{ site.baseurl }}/css/screen.css">
12+
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
13+
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
14+
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
15+
<link rel="manifest" href="/site.webmanifest">
16+
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#1a1a1a">
17+
<meta name="apple-mobile-web-app-title" content="RPISEC">
18+
<meta name="application-name" content="RPISEC">
19+
<meta name="msapplication-TileColor" content="#1a1a1a">
20+
<meta name="theme-color" content="#1a1a1a">
21+
22+
{% if jekyll.environment == 'production' and site.google_analytics_ke != '' %}
23+
<script>
24+
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
25+
ga('create', '{{ site.google_analytics_key }}', 'auto');
26+
ga('send', 'pageview');
27+
</script>
28+
<script async src='https://www.google-analytics.com/analytics.js'></script>
29+
{% endif %}
30+
</head>
31+
<body>
32+
<header>
33+
<div class="container">
34+
<div class="company-name">
35+
<a class="nav-toggle" id="open-nav" href="#">&#9776;</a>
36+
<div id="nav-title"><a href="{{ site.baseurl }}/">RPISEC</a></div>
37+
</div>
38+
{% include navigation.html %}
39+
</div>
40+
</header>
41+
{{ content }}
42+
<footer>
43+
<div class="container">
44+
<div class="footer-columns">
45+
{% for column in site.data.footer %}
46+
<ul class="footer-links">
47+
{% for link in column.links %}
48+
<li><a {% if link.new_window %}target="_blank"{% endif %} href="{% include relative-src.html src=link.link %}" {% if link.social_icon %}class="{{ link.social_icon }}-icon"{% endif %}>
49+
{% if link.social_icon %}
50+
{% include social-icon.html icon=link.social_icon %}
51+
{% endif %}
52+
{{ link.name }}</a></li>
53+
{% endfor %}
54+
</ul>
55+
{% endfor %}
56+
</div>
57+
<p class="copyright">&copy; {{ site.time | date: '%Y' }} RPISEC • <a href="https://github.com/RPISEC/website">Source</a></p></div>
58+
</footer>
59+
<script>
60+
document.getElementById("open-nav").onclick = function () {
61+
document.body.classList.toggle("nav-open");
62+
return false;
63+
};
64+
</script>
65+
</body>
66+
</html>

_layouts/page.html

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
layout: default
3+
---
4+
<div class="content">
5+
<section class="page">
6+
<div class="container {% if page.full_width %}max-container{% endif %}">
7+
{% if page.heading %}
8+
<h1>{{ page.heading }}</h1>
9+
{% elsif page.title and page.layout != 'archive' and page.layout != 'post' %}
10+
<h1>{{ page.title }}</h1>
11+
{% endif %}
12+
{% if page.description %}
13+
<p class="subtext">{{ page.description }}</p>
14+
{% endif %}
15+
{{ content }}
16+
</div>
17+
</section>
18+
</div>

0 commit comments

Comments
 (0)