Implement Jekyll

This commit is contained in:
Matthew Grove
2019-01-24 11:48:21 +00:00
parent 7e610311d8
commit 35e4717740
68 changed files with 4980 additions and 878 deletions

View File

@@ -1,75 +0,0 @@
/* Reading School 2018, CSS*/
.carousel-inner {
height: 250px;
border-radius: 4px;
overflow: hidden auto;
margin-bottom: 15px;
background: rgba(10,10,10,0.2);
}
/* place carousel indicators between the two buttons (next & previous) */
.presentation-flexbox {
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-flex-flow: row wrap;
flex-flow: row wrap;
justify-content: space-between;
}
.carousel-indicators {
order: 1;
}
.presentation-button-left {
order: 0;
}
.presentation-button-right {
order: 2;
}
.carousel-inner .item {
height: 100%;
width: 100%;
border: none;
padding: 15px;
overflow: auto;
}
.carousel-indicators li {
border: 1px solid var(--mdc-theme-secondary);
margin-top: 12px;
}
.carousel-indicators .active {
background-color: var(--mdc-theme-secondary);
}
/* revert changes made by Bootstrap */
.carousel-indicators {
margin: 0;
position: initial;
width: auto;
z-index: inherit;
}
/* add side margins depending on screen size */
#main-content {
text-align: left;
margin: 20px 15%;
}
@media screen and (max-width: 1000px) {
#main-content {
margin: 20px 10%;
}
}
@media screen and (max-width: 800px) {
#main-content {
margin: 20px 5%;
}
}
@media screen and (max-width: 600px) {
#main-content {
margin: 20px;
}
}

View File

@@ -1,43 +0,0 @@
html, body {
font-family: 'Roboto';
background: transparent;
}
img {
width: 50%;
box-shadow: 3px 3px 6px 2px rgba(10,10,10,0.5);
margin: 10px 0;
border-radius: 6px;
}
@media screen and (max-width: 1000px) {
img {
width: 60%;
}
}
@media screen and (max-width: 900px) {
img {
width: 70%;
}
}
@media screen and (max-width: 800px) {
img {
width: 80%;
}
}
@media screen and (max-width: 700px) {
img {
width: 90%;
}
}
@media screen and (max-width: 600px) {
img {
width: calc(100% - 20px);
}
}
/* revert changes made by Bootstrap */
p {
margin: 0;
}
h1, h2, h3, .h1, .h2, .h3 {
margin-top: 0;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

View File

@@ -1,143 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- add to homescreen for Chrome on Android -->
<meta name="mobile-web-app-capable" content="yes">
<link rel="icon" sizes="192x192" href="https://matthew-grove.ml/logo.png">
<!-- add to homescreen for Safari on iOS -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="Computer Science Blog | Matthew Grove">
<link rel="apple-touch-icon-precomposed" href="https://matthew-grove.ml/logo.png">
<!-- tile icon & colour for Windows 8 -->
<meta name="msapplication-TileImage" content="https://matthew-grove.ml/logo.png">
<meta name="msapplication-TileColor" content="#d84315">
<!-- title & description -->
<title>Computer Science Blog | Matthew Grove</title>
<meta name="description" content="GCSE Computer Science Blog - by Matthew Grove">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import jQuery -->
<script src="/assets/jquery.min.js" type="text/javascript"></script>
<!-- import cookie JavaScript -->
<script src="/assets/cookies.js" type="text/javascript"></script>
<!-- import Material Design components & icons -->
<link href="/assets/material-components-web.min.css" rel="stylesheet" type="text/css">
<link href="/assets/material_icons.css" rel="stylesheet" type="text/css">
<script src="/assets/material-components-web.min.js" type="text/javascript"></script>
<!-- import Bootstrap -->
<script src="/assets/bootstrap.min.js" type="text/javascript"></script>
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<script src="/assets/global.js" type="text/javascript"></script>
<link href="/assets/global.css" rel="stylesheet" type="text/css">
<link href="css/main.css" rel="stylesheet" type="text/css">
<script src="scripts/scripts.js" type="text/javascript"></script>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-124505000-1" type="text/javascript"></script>
<script type="text/javascript">
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-124505000-1');
</script>
</head>
<body>
<!-- cookie notice is included via jQuery -->
<div id="cookies"></div>
<!-- content of navbar is included via jQuery -->
<aside class="navbar-insert mdc-drawer mdc-drawer--modal"></aside>
<!-- needed so that the area to the right of the drawer is dimmed when the drawer is open. The drawer doesn't work without this -->
<div class="mdc-drawer-scrim"></div>
<div class="mdc-drawer-app-content">
<!-- top app bar is inserted via jQuery -->
<header class="mdc-top-app-bar app-bar" id="app-bar"></header>
<!-- containers ensure main content isn't covered by top app bar -->
<main class="main-content" id="main-content">
<div class="mdc-top-app-bar--fixed-adjust">
<p>The current date is <span id="current_date">unknown</span>.</p>
<h1>HTTP Introduction</h1>
<div id="http_presentation" class="carousel slide" data-interval="false" data-ride="carousel">
<!-- Wrapper for presentation slides -->
<div class="carousel-inner">
</div>
<div class="presentation-flexbox">
<!-- Indicators -->
<ol class="carousel-indicators">
</ol>
<!-- button to go to previous slide -->
<button class="presentation-button-left mdc-button mdc-button--outlined" href="#http_presentation" data-slide="prev" data-mdc-auto-init="MDCRipple">
<!-- navigation icon -->
<i class="material-icons mdc-button__icon">navigate_before</i>
Previous
</button>
<!-- button to go to next slide -->
<button class="presentation-button-right mdc-button mdc-button--outlined" href="#http_presentation" data-slide="next" data-mdc-auto-init="MDCRipple">
Next
<!-- navigation icon -->
<i class="material-icons mdc-button__icon">navigate_next</i>
</button>
</div>
</div>
<!-- HTML presentation -->
<h1>HTML, CSS & JS Introduction</h1>
<div id="html_presentation" class="carousel slide" data-interval="false" data-ride="carousel">
<!-- Wrapper for presentation slides -->
<div class="carousel-inner">
</div>
<div class="presentation-flexbox">
<!-- Indicators -->
<ol class="carousel-indicators">
</ol>
<!-- button to go to previous slide -->
<button class="presentation-button-left mdc-button mdc-button--outlined" href="#html_presentation" data-slide="prev" data-mdc-auto-init="MDCRipple">
<!-- navigation icon -->
<i class="material-icons mdc-button__icon">navigate_before</i>
Previous
</button>
<!-- button to go to next slide -->
<button class="presentation-button-right mdc-button mdc-button--outlined" href="#html_presentation" data-slide="next" data-mdc-auto-init="MDCRipple">
Next
<!-- navigation icon -->
<i class="material-icons mdc-button__icon">navigate_next</i>
</button>
</div>
</div>
<!-- HTML basics info is inserted via jQuery -->
<div id="blog-insert"></div>
<!-- link to source code on GitHub -->
<a href="https://github.com/mgrove36/demo-code/tree/master/computer-science-blog/" class="source-code-link mdc-fab mdc-fab--extended" data-mdc-auto-init="MDCRipple"></a>
</div>
</main>
<footer>
Made in association with Daniel Dunbar
<br>
<br>
&copy; Matthew Grove & Daniel Dunbar 2018
</footer>
</div>
</body>
</html>

View File

@@ -1,35 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<h1>HTML Basics</h1>
<p>I know that:
<ul>
<li>inline styles override all others.</li>
<li>index.html is one of the industry standard default file names, as well as index.htm, index.php, index.asp, index.aspx and more.</li>
<li>iframes are used to embed documents within other documents.</p>
<li>
CSS files are linked by using the following code:
<br>
<code>&lt;link rel="stylesheet" type="text/css" href="../css/main.css"&gt;</code>
</li>
<li>
JS files are linked by using the following code:
<br>
<code>&lt;script type="text/javascript" src="scripts/scripts.js"&gt;&lt;/script&gt;</code>
</li>
<li>
Adding the date when the window loads:
<br>
<code>
// onload of window
<br>
window.onload = dateInsert;
</code>
</li>
<li>
Ternary operators work by using:
<br>
<code>[condition] ? [value if true] : [value if false]</code>
</li>
<li>The later a CSS file is imported, the more power it has over the document - i.e. the last stylesheet imported will overwrite the styling in all of the other stylesheets.</li>
<li>To add another page, one can use an <code>&lt;iframe&gt;</code> or the jQuery <code>.load()</code> method.</li>
</ul>
</p>

View File

@@ -1,32 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import Bootstrap -->
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<link href="../css/presentation-imports.css" rel="stylesheet" type="text/css">
</head>
<body>
<h2>Cookies</h2>
<p>
Cookies are not, unfortunately, the treats made of dough. They are, in fact, small text files, stored in binary, usually one-line long, which store relevant
information about websites visited by a computer. This might include a selected language, or ad preferences. Some websites even use
cookies to store passwords that are set to remember. Thus, cookies need strong security and the ID of each one must be unfathomably
difficult to find without permission, to reduce the risk of hacking. Cookies are stored on the computer, as opposed to the website.
Because both HTTP and HTTPS don't transmit user data, none of the websites you visit know who you are. Therefore, whenever you
visit a webpage, it reads the cookies it stored on your computer last time you visited it, in order to find out information like your email address.
Many people are against cookies, due to privacy concerns; under new GDPR regulations, all end users in Europe must now be notified of
cookie use on each website they visit (if the website uses cookies). Many sites also give an option to refuse cookies.
</p>
</body>
</html>

View File

@@ -1,64 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import Bootstrap -->
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<link href="../css/presentation-imports.css" rel="stylesheet" type="text/css">
<script src="../scripts/css-presentation-slide.js"></script>
</head>
<body>
<h2>CSS</h2>
<p>
CSS, Cascading Style Sheets, are web documents that allow stylisation of HTML documents. CSS allows you to change the size, style, font, and colour of text; margins and padding; background colours and border styles. To change the appearance of something in CSS, there must be the following format:
h1 {
Background-color: red;
}
which would make the background colour of heading 1 tags (big headings) red. The spellings in CSS are American, for example color, and semicolons are extremely important. The following hyperlink has a list of all the CSS commands and what they do when you click on them.
Cascading Stylesheets (CSS) allow the size, style, font & colour of text; background colours & border styles and more to be changed in HTML pages.
A page without CSS can be very bland and boring:
<br>
<img class="presentation-image" src="../images/without_css.jpg">
<br>
But one with CSS looks a lot more presentable:
<br>
<img class="presentation-image" src="../images/with_css.jpg">
<br>
CSS declarations use the <i>tag names</i> (e.g. <code>p</code>), <i>classes</i> and IDs of
the elements on the page in order to style them. IDs are written with a preceding hashtag,
classes are written with a preceding full stop and tag names are written without any preceding characters.
The styles themselves (like <code>height</code>) should all end in semicolons. A comment in CSS is started
with <code>/*</code> and ended with <code>*/</code>.
Here are some example declarations:
<br>
<code>
p {<br>
/* this changes the font size of all p elements */<br>
&nbsp;&nbsp;&nbsp;&nbsp;font-size: 3rem;<br>
}<br>
.class_name {<br>
/* this changes the height of all elements with the class name 'class_name' */<br>
&nbsp;&nbsp;&nbsp;&nbsp;height: 200px;<br>
}<br>
#id_name {<br>
/* this changes the font of all elements with the ID 'id_name' */<br>
&nbsp;&nbsp;&nbsp;&nbsp;font-family: 'Roboto'<br>
}<br>
</code>
<br>
<span id="css_attribute_list_link"></span>
</p>
</body>
</html>

View File

@@ -1,36 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import Bootstrap -->
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<link href="../css/presentation-imports.css" rel="stylesheet" type="text/css">
</head>
<body>
<h2>HTML</h2>
<p>
Hypertext Markup Language is the standard language used by browsers to display webpages.
HTML was invented by Tim Berners-Lee in 1990, and uses tags. This means that in order to define
an element (something like a heading or paragraph), you use a <i>tag</i> - such as <code>&lt;p&gt;</code>,
which displays a simple paragraph. Most tags must be closed with closing tags - like <code>&lt;/p&gt;</code>,
however some elements, like those for images (<code>&lt;img&gt;</code>) and linking external resources
(<code>&lt;link&gt;</code>) are auto closing: they dont need a closing tag. For example, an image is defined as follows:
<br>
<code>&lt;img src="image_source_url"&gt;</code>
<br>
A comment in HTML is started with <code>&lt;!--</code> and ended with <code>--&gt;</code>.
<br>
HTML is closely linked with CSS and JavaScript.
</p>
</body>
</html>

View File

@@ -1,25 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import Bootstrap -->
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<link href="../css/presentation-imports.css" rel="stylesheet" type="text/css">
</head>
<body>
<h2>HTTP</h2>
<p>
HTTP is Hypertext Transfer (or Transport) Protocol, the underlying data transfer protocol used on the World Wide Web. It defines what actions web servers and browsers should take in response to commands. For example, when a URL is opened or hyperlink (which is a URL) clicked, your web browser actually sends an HTTP request to the server which hosts the website you're trying to access, in order to fetch it and display it on your screen. Obviously, for each web server to understand these requests, the server and request must both follow this protocol.
</p>
</body>
</html>

View File

@@ -1,28 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import Bootstrap -->
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<link href="../css/presentation-imports.css" rel="stylesheet" type="text/css">
</head>
<body>
<h2>HTTPS</h2>
<p>
HTTPS is the 'Hypertext Transfer Protocol Secure', which means that it is a variation on the HTTP protocol - except it uses a secure socket layer
(SSL) - an encryption protocol invoked by an HTTPS request, that enables authentication and encryption on the webpage being visited. SSL is
essentially the usage of digital passports, and it functions by hopping onto TCP protocols. It does not resend lost packets or
miscommunicated' data, because this increases security.
</p>
</body>
</html>

View File

@@ -1,32 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import Bootstrap -->
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<link href="../css/presentation-imports.css" rel="stylesheet" type="text/css">
</head>
<body>
<h2>Hyperlinks</h2>
<p>
A hyperlink is simply a link on the web to another resource. It uses a special kind of command that jumps you to different content in your web browser - usually to another page. 
<br>
Hyperlinks are often denoted by blue underlined text or content which turns the cursor into a pointing hand when hovered over; however, they can be styled however the web designer wishes; their appearances do not change their function.
<br>
Website owners reserve the right not to be hyperlinked without permission.
<br>
Hyperlinks are defined in HTML as follows:
<code>&lt;a href="LINK GOES HERE"&gt;TEXT GOES HERE&lt;/a&gt;</code>
</p>
</body>
</html>

View File

@@ -1,36 +0,0 @@
<!-- Reading School 2018, HTML page by Matthew Grove, Year 10 -->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">
<meta name="HandheldFriendly" content="True">
<!-- import Roboto (font) -->
<link href="/assets/roboto.css" rel="stylesheet" type="text/css">
<!-- import Bootstrap -->
<link href="/assets/bootstrap.min.css" rel="stylesheet" type="text/css">
<!-- import local styling & scripts -->
<link href="../css/presentation-imports.css" rel="stylesheet" type="text/css">
</head>
<body>
<h2>JavaScript</h2>
<p>
JavaScript (JS) is a high-level, client-side language, meaning that it is like a human language
(rather than, for example, binary) and runs on the end user's computer. It is used for many purposes,
including editing content on a webpage, performing mathematical operations and storing variables.
Each line of JavaScript should end in a semicolon, for example:
<br>
<code>
// this code sets the content of the element with the ID "id_name" to "Hello World!"<br>
document.getElementById("id_name").innerHTML = "Hello World!";
</code>
<br>
A single line comment in JS is denoted by a double forward slash (<code>//</code>); a multi line comment
is started with <code>/*</code> and ended with <code>*/</code>.
</p>
</body>
</html>

View File

@@ -1,4 +0,0 @@
window.onload = function() {
var year = new Date().getFullYear();
document.getElementById("css_attribute_list_link").innerHTML = 'All of the CSS style attributes are listed <a href="https://www.w3.org/TR/css-' + year + '/#properties" target="_blank">here</a>.';
}

View File

@@ -1,45 +0,0 @@
// set page title
window.page_title = "Computer Science Blog | Matthew Grove";
window.onload = function() {
// set the current date
var date = new Date();
// ternary operator: if the date < 10 then add 0 to the start of it, else display the date
var day = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
// set current date
var current_date = day + "/" + (date.getMonth() + 1) + "/" + date.getFullYear();
// display date
$("#current_date").html(current_date);
// display first blog page
$("#blog-insert").load("pages/blog.html");
// define variables for HTTP presentation pages
var http_pages = ["hyperlinks", "http", "https", "cookies"];
// displays HTTP presentation pages
http_pages.forEach(function(item, index) {
if (index == 0) {
$("#http_presentation .carousel-inner").append('<iframe class="item active" src="pages/' + item + '.html"></iframe>');
$("#http_presentation .carousel-indicators").append('<li data-target="#http_presentation" class="active" data-slide-to="' + index + '"></li>')
} else {
$("#http_presentation .carousel-inner").append('<iframe class="item" src="pages/' + item + '.html"></iframe>');
$("#http_presentation .carousel-indicators").append('<li data-target="#http_presentation" data-slide-to="' + index + '"></li>')
}
});
// define variables for HTML presentation pages
var html_pages = ["html", "css", "js"];
// displays HTML presentation pages
html_pages.forEach(function(item, index) {
if (index == 0) {
$("#html_presentation .carousel-inner").append('<iframe class="item active" src="pages/' + item + '.html"></iframe>');
$("#html_presentation .carousel-indicators").append('<li data-target="#html_presentation" class="active" data-slide-to="' + index + '"></li>')
} else {
$("#html_presentation .carousel-inner").append('<iframe class="item" src="pages/' + item + '.html"></iframe>');
$("#html_presentation .carousel-indicators").append('<li data-target="#html_presentation" data-slide-to="' + index + '"></li>')
}
});
}