dsm-portfolio-theme 0.1.4 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +4 -18
- data/_includes/breadcrumbs.html +11 -0
- data/_includes/competencies.html +28 -0
- data/_includes/navigation.html +42 -0
- data/_includes/notice.html +7 -0
- data/_includes/project-list.html +65 -21
- data/_includes/projects.html +32 -0
- data/_includes/scripts.html +5 -1
- data/_layouts/default.html +14 -16
- data/_layouts/examples/summary-example.md +17 -0
- data/_layouts/examples/vignette-example.md +8 -0
- data/_layouts/generate/about.html +180 -0
- data/_layouts/generate/api/documentation.html +313 -0
- data/_layouts/generate/api/v1/competencies.json +4 -0
- data/_layouts/generate/api/v1/portfolio.json +24 -0
- data/_layouts/generate/api/v1/progression.json +4 -0
- data/_layouts/generate/api/v1/projects.json +4 -0
- data/_layouts/generate/api/v1/summaries.json +14 -0
- data/_layouts/generate/api/v1/vignettes.json +14 -0
- data/_layouts/generate/competencies.md +9 -0
- data/_layouts/generate/progression.html +95 -0
- data/_layouts/generate/projects.md +9 -0
- data/_layouts/portfolio.html +28 -24
- data/_layouts/summary.html +67 -48
- data/_layouts/vignette.html +69 -34
- data/assets/scripts/vignette.js +204 -18
- data/assets/styles/main.scss +15 -29
- metadata +20 -23
- data/_includes/anaytics.html +0 -0
- data/_includes/footer.html +0 -0
- data/_includes/header.html +0 -13
- data/_layouts/project.html +0 -5
- data/_sass/atoms/_forms.scss +0 -0
- data/_sass/atoms/_images.scss +0 -0
- data/_sass/atoms/_links.scss +0 -0
- data/_sass/atoms/_lists.scss +0 -0
- data/_sass/atoms/_tables.scss +0 -0
- data/_sass/atoms/_typography.scss +0 -0
- data/_sass/base/_colours.scss +0 -0
- data/_sass/base/_fonts.scss +0 -0
- data/_sass/base/_normalize.scss +0 -0
- data/_sass/base/_spacing.scss +0 -0
- data/_sass/layouts/_evaluation.scss +0 -0
- data/_sass/layouts/_page.scss +0 -0
- data/_sass/layouts/_portfolio.scss +0 -0
- data/_sass/molecules/_footer.scss +0 -0
- data/_sass/molecules/_header.scss +0 -0
- data/_sass/organisms/_vignette-blocks.scss +0 -9
- data/_sass/organisms/_vignette-tabs.scss +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4c22c3fafa27def4d92dc1f88d818a290a9f19d1
|
4
|
+
data.tar.gz: 31d9294eb0928b0237a88ad2be62fdcc346cd8f2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bd3908a5f426ae686ebba5fa8ecc18e86115db502a76c0036a3f79bd8c80c21cba3ae1e662fbf559507baa2853826a566689330cd9eacb6ca0f9dc5edee14b35
|
7
|
+
data.tar.gz: e7b03efa7b07a2d351b9e78d4d7342b90961a1242f34064a0f620555152b70d725ad1b7dc40cb9d92231dd642ac8e3e45fa67fe69c24cc4b64e455a059df0c92
|
data/README.md
CHANGED
@@ -1,21 +1,7 @@
|
|
1
|
-
# dsm-portfolio
|
1
|
+
# dsm-portfolio-theme
|
2
2
|
|
3
|
-
|
3
|
+
[![Gem Version](https://badge.fury.io/rb/dsm-portfolio-theme.svg)](https://badge.fury.io/rb/dsm-portfolio-theme)
|
4
4
|
|
5
|
-
The theme
|
5
|
+
The theme used for the dsm-portfolio-project.
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
## Usage
|
10
|
-
|
11
|
-
See 'USAGE.md' in 'docs', which describes how to use this repository to maintain a portfolio of submissions.
|
12
|
-
|
13
|
-
## Contributing
|
14
|
-
|
15
|
-
See 'MODIFICATIONS.md' in 'docs', which describes how to alter the repository.
|
16
|
-
|
17
|
-
## Legal
|
18
|
-
|
19
|
-
See 'LEGAL.md' in 'docs', which describes licensing and attributions.
|
20
|
-
|
21
|
-
### All information is duplicated in the repository's ['wiki'](#) and the theme iteslf.
|
7
|
+
Read the [hosted about page](https://joshhills.github.io/dsm-portfolio-site/about) for usage, modification and legal information.
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<div class="row">
|
2
|
+
<div class="col">
|
3
|
+
<nav aria-label="breadcrumb">
|
4
|
+
<ol class="breadcrumb">
|
5
|
+
<li class="breadcrumb-item"><a href="{{ '/' | relative_url }}">Portfolio</a></li>
|
6
|
+
<li class="breadcrumb-item">{{ page.project_title }}</li>
|
7
|
+
<li class="breadcrumb-item active" aria-current="page">{{ page.type | capitalize }}</li>
|
8
|
+
</ol>
|
9
|
+
</nav>
|
10
|
+
</div>
|
11
|
+
</div>
|
@@ -0,0 +1,28 @@
|
|
1
|
+
<div class="table-responsive">
|
2
|
+
<table class="table">
|
3
|
+
<tr>
|
4
|
+
<th>Id</th>
|
5
|
+
<th>Title</th>
|
6
|
+
<th>Description</th>
|
7
|
+
<th>Categories</th>
|
8
|
+
</tr>
|
9
|
+
{% for competency in site.data.competencies %}
|
10
|
+
<tr id="{{ competency.id }}">
|
11
|
+
<td>
|
12
|
+
{{ competency.id }}
|
13
|
+
</td>
|
14
|
+
<td>
|
15
|
+
{{ competency.title }}
|
16
|
+
</td>
|
17
|
+
<td>
|
18
|
+
{{ competency.description }}
|
19
|
+
</td>
|
20
|
+
<td>
|
21
|
+
{% for category in competency.categories %}
|
22
|
+
{{ category }}<br/>
|
23
|
+
{% endfor %}
|
24
|
+
</td>
|
25
|
+
</tr>
|
26
|
+
{% endfor %}
|
27
|
+
</table>
|
28
|
+
</div>
|
@@ -0,0 +1,42 @@
|
|
1
|
+
<nav class="navbar navbar-expand-lg navbar-light bg-light">
|
2
|
+
<a class="navbar-brand" href="{{ '/' | relative_url }}">Portfolio</a>
|
3
|
+
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
|
4
|
+
<span class="navbar-toggler-icon"></span>
|
5
|
+
</button>
|
6
|
+
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
7
|
+
<ul class="navbar-nav ml-auto">
|
8
|
+
{% assign page_url = page.url | replace: ".html","" %}
|
9
|
+
<li class="nav-item {% if page_url == '/progression' %}active{% endif %} mr-2">
|
10
|
+
<a class="nav-link" href="{{ '/progression' | relative_url }}">
|
11
|
+
Progression
|
12
|
+
</a>
|
13
|
+
</li>
|
14
|
+
<li class="nav-item {% if page_url == '/projects' %}active{% endif %} mr-2">
|
15
|
+
<a class="nav-link" href="{{ '/projects' | relative_url }}">
|
16
|
+
Projects
|
17
|
+
</a>
|
18
|
+
</li>
|
19
|
+
<li class="nav-item {% if page_url == '/competencies' %}active{% endif %}">
|
20
|
+
<a class="nav-link" href="{{ '/competencies' | relative_url }}">
|
21
|
+
Competencies
|
22
|
+
</a>
|
23
|
+
</li>
|
24
|
+
<li>
|
25
|
+
<a class="nav-link disabled" href="#">|</a>
|
26
|
+
</li>
|
27
|
+
{% for navigation-link in site.data.navigation-links %}
|
28
|
+
<li class="nav-item {% if page_url == navigation-link.url %}active{% endif %} {% unless forloop.last %}mr-2{% endunless %}">
|
29
|
+
{% if navigation-link.external %}
|
30
|
+
<a class="btn btn-outline-primary" href="{{ navigation-link.url | relative_url }}" target="_blank">
|
31
|
+
{{ navigation-link.title }}
|
32
|
+
</a>
|
33
|
+
{% else %}
|
34
|
+
<a class="nav-link" href="{{ navigation-link.url | relative_url }}" target="_self">
|
35
|
+
{{ navigation-link.title }}
|
36
|
+
</a>
|
37
|
+
{% endif %}
|
38
|
+
</li>
|
39
|
+
{% endfor %}
|
40
|
+
</ul>
|
41
|
+
</div>
|
42
|
+
</nav>
|
data/_includes/project-list.html
CHANGED
@@ -1,29 +1,73 @@
|
|
1
|
-
|
2
|
-
<div class="
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
<!-- Group posts by subdirectory (parent project Id) -->
|
1
|
+
<div class="row">
|
2
|
+
<div class="col">
|
3
|
+
<h2 class="mb-4">
|
4
|
+
Submitted Projects
|
5
|
+
</h2>
|
6
|
+
{% assign truncate_value = site.project_description_truncation | default: 64 %}
|
8
7
|
{% assign postsByProject = site.posts | group_by_exp: "post", "post.project_id" %}
|
9
|
-
{%
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
{
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
8
|
+
{% if postsByProject.size > 0 %}
|
9
|
+
{% for project in postsByProject %}
|
10
|
+
{% if project.items[0].project_code != -1 %}
|
11
|
+
{% assign linked_project = site.data.projects | where:"id", project.items[0].project_code | first %}
|
12
|
+
{% assign projectType = "Academic Project" %}
|
13
|
+
{% if linked_project and linked_project.deadline %}
|
14
|
+
{% assign today_date = 'now' | date: '%s' %}
|
15
|
+
{% assign pre_date = linked_project.deadline | date: '%s' %}
|
16
|
+
{% if today_date < pre_date %}
|
17
|
+
{% assign days_until_deadline = pre_date | minus: today_date | divided_by: 3600 | divided_by: 24 | plus: 1 %}
|
18
|
+
{% assign days_until_deadline = days_until_deadline | pluralize: "Day", "Days" %}
|
19
|
+
{% assign incomplete = true %}
|
20
|
+
{% assign classString = "border-warning" %}
|
21
|
+
{% else %}
|
22
|
+
{% assign incomplete = false %}
|
23
|
+
{% assign classString = "" %}
|
24
|
+
{% endif %}
|
25
|
+
{% else %}
|
26
|
+
{% assign classString = "border-primary" %}
|
27
|
+
{% assign incomplete = false %}
|
28
|
+
{% endif %}
|
29
|
+
{% else %}
|
30
|
+
{% assign projectType = "Personal Project" %}
|
31
|
+
{% assign classString = "" %}
|
32
|
+
{% assign linked_project = nil %}
|
33
|
+
{% assign incomplete = false %}
|
34
|
+
{% endif %}
|
35
|
+
|
36
|
+
{% for item in project.items %}
|
37
|
+
{% if item.type == "summary" %}
|
38
|
+
{% assign project_summary = item.excerpt %}
|
39
|
+
{% break %}
|
40
|
+
{% endif %}
|
41
|
+
{% endfor %}
|
42
|
+
<div class="card mb-4 {{ classString }}">
|
43
|
+
<div class="card-body">
|
44
|
+
<h5 class="card-title">{{ project.items[0].project_title }}</h5>
|
45
|
+
{% if incomplete %}
|
46
|
+
{% assign deadlineString = " | Deadline: " | append: linked_project.deadline | append: " (" | append: days_until_deadline | append: ")" %}
|
47
|
+
{% else %}
|
48
|
+
{% assign deadlineString = "" %}
|
49
|
+
{% endif %}
|
50
|
+
<h6 class="card-subtitle mb-2 text-muted">{{ project.items[0].date | date: "%d-%m-%Y" }}{{ deadlineString }}</h6>
|
51
|
+
<p class="card-text"><small class="text-muted text-primary">{{ projectType }}</small></p>
|
52
|
+
{% if project_summary %}
|
53
|
+
<p class="card-text">{{ project_summary | truncatewords: truncate_value }}</p>
|
54
|
+
{% elsif linked_project and linked_project.description %}
|
55
|
+
<p class="card-text">{{ linked_project.description | truncatewords: truncate_value }}</p>
|
56
|
+
{% endif %}
|
21
57
|
{% for file in project.items %}
|
22
|
-
<a class="" href="{{ file.url | relative_url }}">{{ file.type | capitalize }}
|
58
|
+
<a class="card-link" href="{{ file.url | relative_url }}">{{ file.type | capitalize }}{% if file.type == "vignette" and file["vignettes"].size > 0 %}
|
59
|
+
<span class="badge badge-primary">{{file["vignettes"].size}}</span>
|
60
|
+
{% endif %}</a>
|
23
61
|
{% endfor %}
|
24
62
|
</div>
|
25
63
|
</div>
|
64
|
+
{% assign project_summary = nil %}
|
65
|
+
{% endfor %}
|
26
66
|
</div>
|
27
|
-
{%
|
67
|
+
{% else %}
|
68
|
+
<p class="lead">
|
69
|
+
No projects found. See <a href="{{ '/about' | relative_url }}">about</a> to find out how to make them.
|
70
|
+
</p>
|
71
|
+
{% endif %}
|
28
72
|
</div>
|
29
73
|
</div>
|
@@ -0,0 +1,32 @@
|
|
1
|
+
<div class="table-responsive">
|
2
|
+
<table class="table">
|
3
|
+
<tr>
|
4
|
+
<th>Id</th>
|
5
|
+
<th>Title</th>
|
6
|
+
<th>Description</th>
|
7
|
+
<th>Deadline</th>
|
8
|
+
<th>Targets</th>
|
9
|
+
</tr>
|
10
|
+
{% for project in site.data.projects %}
|
11
|
+
<tr id="{{ project.id }}">
|
12
|
+
<td>
|
13
|
+
{{ project.id }}
|
14
|
+
</td>
|
15
|
+
<td>
|
16
|
+
{{ project.title }}
|
17
|
+
</td>
|
18
|
+
<td>
|
19
|
+
{{ project.description }}
|
20
|
+
</td>
|
21
|
+
<td>
|
22
|
+
{{ project.deadline | date: "%d-%m-%Y" }}
|
23
|
+
</td>
|
24
|
+
<td>
|
25
|
+
{% for target in project.targets %}
|
26
|
+
{{ target }}<br/>
|
27
|
+
{% endfor %}
|
28
|
+
</td>
|
29
|
+
</tr>
|
30
|
+
{% endfor %}
|
31
|
+
</table>
|
32
|
+
</div>
|
data/_includes/scripts.html
CHANGED
@@ -1,3 +1,7 @@
|
|
1
1
|
{% if page['type'] == 'vignette' %}
|
2
2
|
<script src="{{ "/assets/scripts/vignette.js" | relative_url }}" type="text/javascript"></script>
|
3
|
-
{% endif %}
|
3
|
+
{% endif %}
|
4
|
+
|
5
|
+
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
|
6
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
|
7
|
+
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
|
data/_layouts/default.html
CHANGED
@@ -4,25 +4,23 @@
|
|
4
4
|
<!-- Meta-->
|
5
5
|
<meta charset="UTF-8">
|
6
6
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
7
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
8
|
-
|
9
|
-
<!-- TODO: SEO-->
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
10
8
|
|
11
9
|
<!-- Styles -->
|
12
10
|
<link rel="stylesheet" href="{{ "/assets/styles/main.css" | relative_url }}">
|
13
|
-
|
11
|
+
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
|
12
|
+
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.2.0/css/all.css" integrity="sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ" crossorigin="anonymous">
|
14
13
|
</head>
|
15
|
-
<body>
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
{% include scripts.html %}
|
14
|
+
<body data-spy="scroll" data-target="#index" data-offset="0">
|
15
|
+
<div class="container">
|
16
|
+
{% include navigation.html %}
|
17
|
+
<div class="row p-4">
|
18
|
+
<div class="col">
|
19
|
+
{{ content }}
|
20
|
+
</div>
|
21
|
+
</div>
|
22
|
+
<!-- Scripts -->
|
23
|
+
{% include scripts.html %}
|
24
|
+
</div>
|
27
25
|
</body>
|
28
26
|
</html>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
---
|
2
|
+
layout: summary
|
3
|
+
length: X Months
|
4
|
+
# notebook_file: demo.ipynb
|
5
|
+
external_resources:
|
6
|
+
- url: "#"
|
7
|
+
title: Resource One
|
8
|
+
- url: "#"
|
9
|
+
title: Resource Two
|
10
|
+
tags:
|
11
|
+
- Example Tag One
|
12
|
+
- Example Tag Two
|
13
|
+
---
|
14
|
+
|
15
|
+
This is a place to write a summary of your project - an abstract, and examples. Anything can be included, and bespoke sections have been pinned to the side. This is a great place to demonstrate capabilities to your peers and potential employers.
|
16
|
+
|
17
|
+
To link a notebook file place it in <code>assets/notebooks</code>, and then reference it's filename in the front-matter as <code>notebook_file</code>.
|
@@ -0,0 +1,8 @@
|
|
1
|
+
---
|
2
|
+
layout: vignette
|
3
|
+
# project_code: X
|
4
|
+
---
|
5
|
+
|
6
|
+
{% v %}
|
7
|
+
Write your vignette blocks in chronological order using {% raw %}<code class="text-nowrap">{% v %} TEXT HERE {% endv %}</code>{% endraw %}, and tag competencies inside using {% raw %}<code class="text-nowrap">{% c COMPETENCY_ID %}</code>{% endraw %}.
|
8
|
+
{% endv %}
|
@@ -0,0 +1,180 @@
|
|
1
|
+
---
|
2
|
+
layout: page
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="container">
|
6
|
+
<div class="row">
|
7
|
+
<div class="col-lg-3 mb-4">
|
8
|
+
<!-- About Navigation -->
|
9
|
+
<div class="row sticky-top t-1" style="top: 1rem">
|
10
|
+
<ul id="index" class="list-group container-fluid" style="padding-left: 15px">
|
11
|
+
<a href="#about" class="list-group-item list-group-item-light flex-column align-items-start">
|
12
|
+
<h5 class="mb-1">About</h5>
|
13
|
+
</a>
|
14
|
+
<a href="#usage" class="list-group-item">
|
15
|
+
<h6 class="mb-1">Usage</h6>
|
16
|
+
</a>
|
17
|
+
<a href="#technology" class="list-group-item">Technology</a>
|
18
|
+
<a href="#installation--forking" class="list-group-item">Installation & Forking</a>
|
19
|
+
<a href="#altering-details" class="list-group-item">Altering Details</a>
|
20
|
+
<a href="#creating-projects" class="list-group-item">Creating Projects</a>
|
21
|
+
<a href="#progression" class="list-group-item">Progression</a>
|
22
|
+
<a href="#hosting-on-github-pages" class="list-group-item">Hosting On Github Pages</a>
|
23
|
+
<a href="#api" class="list-group-item">API</a>
|
24
|
+
<a href="#modifications" class="list-group-item">
|
25
|
+
<h6 class="mb-1">Modifications</h6>
|
26
|
+
</a>
|
27
|
+
<a href="#legal" class="list-group-item">
|
28
|
+
<h6 class="mb-1">Legal</h6>
|
29
|
+
</a>
|
30
|
+
<a href="#attributions" class="list-group-item">
|
31
|
+
<h6 class="mb-1">Attributions</h6>
|
32
|
+
</a>
|
33
|
+
</ul>
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
<!-- Contents -->
|
37
|
+
<div class="col-lg">
|
38
|
+
<div class="row">
|
39
|
+
<div class="container">
|
40
|
+
<h1>About</h1>
|
41
|
+
{% include notice.html %}
|
42
|
+
{% capture about_contents %}
|
43
|
+
This guide provides a brief overview of how to use this portfolio. An example
|
44
|
+
site has been provided to reduce the amount of pre-requisite knowledge needed,
|
45
|
+
and the theme itself has been built with degradation in mind (meaning that
|
46
|
+
it should be easy to customise and somewhat hard to break!).
|
47
|
+
|
48
|
+
The software is produced and maintained by [Josh Hills](mailto:josh@jargonify.com)
|
49
|
+
(post-graduate), for the purpose of providing a modern solution to submitting and
|
50
|
+
assessing work for the data science masters course at Newcastle University. It may
|
51
|
+
be used beyond this scope - see [modifications](#modifications).
|
52
|
+
|
53
|
+
## Usage
|
54
|
+
|
55
|
+
### Technology
|
56
|
+
|
57
|
+
[Jekyll](https://jekyllrb.com/) is a static-site generator running in the programming language Ruby.
|
58
|
+
It can be run on any major platform.
|
59
|
+
|
60
|
+
It uses the [Liquid](https://help.shopify.com/en/themes/liquid) templating engine. You write posts in Markdown, and they
|
61
|
+
are converted to a folder containing your entire portfolio site. Data files are
|
62
|
+
written in [YAML](http://yaml.org/).
|
63
|
+
|
64
|
+
The site provides means for the academic institution to add information about
|
65
|
+
projects, competencies, useful links and documentation. It provides means for
|
66
|
+
students to extend this information, and submit associated work.
|
67
|
+
|
68
|
+
It also provides an API to expose student progression for analysis.
|
69
|
+
|
70
|
+
### Installation & Forking
|
71
|
+
|
72
|
+
- Clone the example site
|
73
|
+
- Install Ruby & Jekyll
|
74
|
+
- Install & update gem dependencies using commands `bundle install && bundle update`
|
75
|
+
- Run Jekyll using command `jekyll serve`
|
76
|
+
- Access at `localhost:4000`
|
77
|
+
- Every time the site builds it will generate the site at `_site`
|
78
|
+
|
79
|
+
### Altering Details
|
80
|
+
|
81
|
+
- In `config.yml`, edit user details
|
82
|
+
- Overrides/extensions for data files can be added - see the [example folder](https://github.com/joshhills/dsm-portfolio-theme/tree/master/_data) in the demo project.
|
83
|
+
|
84
|
+
### Creating Projects
|
85
|
+
|
86
|
+
Writing any file for a project can be done using Markdown or HTML. See [cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet).
|
87
|
+
|
88
|
+
- `jekyll project "NAME OF PROJECT"`
|
89
|
+
- OR copy [example structure](https://github.com/joshhills/dsm-portfolio-theme/tree/master/_posts/2018-02-07-test-project-one) from demo project
|
90
|
+
|
91
|
+
Note that the date is YYYY-MM-DD-title. This date should be when you start writing. If it is dated in the
|
92
|
+
future it wont be included in the site.
|
93
|
+
|
94
|
+
#### Summaries
|
95
|
+
|
96
|
+
This is a place to summarise a project. You may write this in any format.
|
97
|
+
|
98
|
+
By adding a Jupyter notebook file to `assets/notebooks` and including the name in
|
99
|
+
the frontmatter, it will render below your summary.
|
100
|
+
|
101
|
+
See the [example file](https://github.com/joshhills/dsm-portfolio-theme/blob/master/_posts/2018-02-07-test-project-one/summary.md) in the demo project.
|
102
|
+
|
103
|
+
#### Vignettes
|
104
|
+
|
105
|
+
This is a place to evaluate your project work, tagging relevant sections with
|
106
|
+
the competencies you have satisfied.
|
107
|
+
|
108
|
+
By linking your project submission to an academic project, it will pull in information
|
109
|
+
from the data file such as skill targets, description and deadline. You can view all
|
110
|
+
academic projects at [projects]({{ '/projects' | relative_url }}).
|
111
|
+
|
112
|
+
Individual iterations on your evaluation within the page are created by using a custom
|
113
|
+
'liquid' tag `{% raw %}{% v %} ... {% end v %}{% endraw %}`. When you have met a specific
|
114
|
+
competency, you can include that in the evaluation using `{% raw %}{% c COMPETENCY_ID %}{% endraw %}`.
|
115
|
+
You can view all competencies at [competencies]({{ '/competencies' | relative_url }}).
|
116
|
+
|
117
|
+
See the [example file](https://github.com/joshhills/dsm-portfolio-theme/blob/master/_posts/2018-02-07-test-project-one/vignette.md) in the demo project.
|
118
|
+
|
119
|
+
### Progression
|
120
|
+
|
121
|
+
You can see an overview of all projects at [progression]({{ '/progression' | relative_url }}).
|
122
|
+
|
123
|
+
### Hosting on Github Pages
|
124
|
+
|
125
|
+
- `git init` in `_site`
|
126
|
+
- Create branch `gh-pages`
|
127
|
+
- Set remote to the same repository using command `git remote add origin git@github.com:username/repositoryname.git`
|
128
|
+
- Add, commit and push changes
|
129
|
+
- View latest version of branch at `https://username.github.io/repositoryname/`
|
130
|
+
|
131
|
+
### API
|
132
|
+
|
133
|
+
The API and associated documentation pages are auto-generated upon build. Their documentation can be found [here]({{ '/api' | relative_url }}).
|
134
|
+
|
135
|
+
## Modifications
|
136
|
+
|
137
|
+
Administrators may fork the [theme](https://github.com/joshhills/dsm-portfolio-theme) in order to maintain an updated version of `_data` and other information. They may also fork the [site example]() in order to point this to their version of the theme. Pull requests made to the original of either will be accepted upon code review.
|
138
|
+
|
139
|
+
|
140
|
+
Students should fork the [site example](https://github.com/joshhills/dsm-portfolio-site) for a quick set-up. Pull requests may be made to the original repository, however only modifications to the initial theme in the form of optional feature extensions (widgets) or bug-fixes will be accepted by students. Make sure that tests pass, and that no personal information is included.
|
141
|
+
|
142
|
+
Issues raised represent feedback that may be taken into consideration during further development. Contact your course representatives for immediate concerns.
|
143
|
+
|
144
|
+
## Legal
|
145
|
+
|
146
|
+
This theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
147
|
+
|
148
|
+
## Attributions
|
149
|
+
|
150
|
+
- [jekyll](https://github.com/jekyll/jekyll) w/ MIT licence
|
151
|
+
- [jekyll-jupyter-notebook](https://github.com/red-data-tools/jekyll-jupyter-notebook) by RED Data Tools w/ Apache 2.0 license
|
152
|
+
- [jekyll-remote-theme](https://github.com/benbalter/jekyll-remote-theme) by Ben Balter w/ MIT license
|
153
|
+
- [jekyll-data](https://github.com/ashmaroli/jekyll-data) by Ashwin Maroli w/ MIT
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
{% endcapture %}
|
175
|
+
{{ about_contents | markdownify }}
|
176
|
+
</div>
|
177
|
+
</div>
|
178
|
+
</div>
|
179
|
+
</div>
|
180
|
+
</div>
|