Compare commits
4 commits
4eabb7517c
...
2d182e6391
Author | SHA1 | Date | |
---|---|---|---|
2d182e6391 | |||
afcdd8ed12 | |||
65a6d12c9d | |||
c12d34a822 |
4
.gitattributes
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
*.PNG filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jpg filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.JPG filter=lfs diff=lfs merge=lfs -text
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 130 B |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 130 B |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 130 B |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 130 B |
6
content/layouts/base-container.njk
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
---
|
||||||
|
<div class="container">
|
||||||
|
{{content | safe}}
|
||||||
|
</div>
|
|
@ -49,7 +49,8 @@
|
||||||
<div class="nav-links">
|
<div class="nav-links">
|
||||||
<div class="d-inline-block">
|
<div class="d-inline-block">
|
||||||
{{navItem("Home", "/")}}
|
{{navItem("Home", "/")}}
|
||||||
{{navItem("Blog", "/blog", false)}}
|
{{navItem("Blog", "/blog")}}
|
||||||
|
{{navItem("Portfolio", "/portfolio", false)}}
|
||||||
</div>
|
</div>
|
||||||
<div class="d-inline-block">
|
<div class="d-inline-block">
|
||||||
<span> | </span>
|
<span> | </span>
|
||||||
|
@ -57,11 +58,11 @@
|
||||||
{{navItem("Instagram", "https://instagram.com/RikBerkelder", false)}}
|
{{navItem("Instagram", "https://instagram.com/RikBerkelder", false)}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
{{content | safe}}
|
{{content | safe}}
|
||||||
|
|
||||||
</div>
|
|
||||||
<script src="//instant.page/5.2.0" type="module"
|
<script src="//instant.page/5.2.0" type="module"
|
||||||
integrity="sha384-jnZyxPjiipYXnSU0ygqeac2q7CVYMbh84q0uHVRRxEtvFPiQYbXWUorga2aqZJ0z"></script>
|
integrity="sha384-jnZyxPjiipYXnSU0ygqeac2q7CVYMbh84q0uHVRRxEtvFPiQYbXWUorga2aqZJ0z"></script>
|
||||||
<script data-goatcounter="https://goatcounter.riksolo.com/count" async
|
<script data-goatcounter="https://goatcounter.riksolo.com/count" async
|
||||||
|
|
20
content/layouts/portfolio.njk
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
layout: base.njk
|
||||||
|
---
|
||||||
|
<div class="portfolio-detail">
|
||||||
|
<div class="portfolio-detail-header container">
|
||||||
|
<h1>{{title}}</h1>
|
||||||
|
<span>{{description}}</span>
|
||||||
|
<a href="/portfolio"><- Back to overview</a>
|
||||||
|
<span>
|
||||||
|
{{content | safe}}
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="portfolio-detail-images">
|
||||||
|
{% for image in data.images %}
|
||||||
|
<img src="{{image}}" alt="" loading="lazy" />
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
|
@ -1,4 +1,4 @@
|
||||||
{
|
{
|
||||||
"tags": "page",
|
"tags": "page",
|
||||||
"layout": "base.njk"
|
"layout": "base-container.njk"
|
||||||
}
|
}
|
20
content/pages/portfolio.njk
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
title: 'Portfolio'
|
||||||
|
permalink: "/portfolio/"
|
||||||
|
---
|
||||||
|
<h1>Portfolio</h1>
|
||||||
|
{% for portfolioItem in collections.portfolioSorted %}
|
||||||
|
<div class="portfolio-list-item">
|
||||||
|
<div class="portfolio-list-item-header">
|
||||||
|
<h2>{{portfolioItem.data.title}}</h2>
|
||||||
|
- {{portfolioItem.data.description}}
|
||||||
|
<a href="{{portfolioItem.data.page.url | safe}}">See More -></a>
|
||||||
|
</div>
|
||||||
|
<div class="flex">
|
||||||
|
{% for image in portfolioItem.data.images.slice(0,3) %}
|
||||||
|
|
||||||
|
<img src={{image}} alt="" width="400" />
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
BIN
content/portfolio/femina/01.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/femina/02.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/femina/03.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/femina/04.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/femina/05.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/femina/06.jpg
(Stored with Git LFS)
Normal file
5
content/portfolio/femina/femina.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
order: 4
|
||||||
|
title: ISZA - Femina
|
||||||
|
description: Adapting abstract ideas from the artist into an impactful one-off festival show, with limited preparation time and a short timeframe on location.
|
||||||
|
---
|
BIN
content/portfolio/luxorlive/1.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/2.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/3.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/4.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/5.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/6.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/7.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/8.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/9.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/luxorlive/91.jpg
(Stored with Git LFS)
Normal file
7
content/portfolio/luxorlive/luxorlive.md
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
order: 2
|
||||||
|
title: Luxor Live
|
||||||
|
description: Delivering dynamic, on-the-spot lighting for visiting acts without their own lighting designer, and ensuring a smooth experience with the house rig for visiting technicians.
|
||||||
|
---
|
||||||
|
|
||||||
|
|
23
content/portfolio/portfolio.11tydata.js
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
import * as path from 'node:path';
|
||||||
|
import * as fs from 'node:fs';
|
||||||
|
|
||||||
|
const conf = {
|
||||||
|
tags: "portfolio",
|
||||||
|
layout: "portfolio.njk",
|
||||||
|
eleventyComputed: {
|
||||||
|
images(data) {
|
||||||
|
const dir = path.dirname(data.page.inputPath);
|
||||||
|
|
||||||
|
const images = fs.readdirSync(dir)
|
||||||
|
.filter(file => ['.png', '.jpg', '.jpeg', '.JPG'].includes(path.extname(file)))
|
||||||
|
.sort()
|
||||||
|
.map(image => `${data.page.url}${image}`);
|
||||||
|
console.log(images);
|
||||||
|
|
||||||
|
return images;
|
||||||
|
},
|
||||||
|
data(data) { return data; },
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export default conf;
|
BIN
content/portfolio/prijsvdvrijheid/01.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/prijsvdvrijheid/02.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/prijsvdvrijheid/03.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/prijsvdvrijheid/04.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/prijsvdvrijheid/05.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/prijsvdvrijheid/06.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/prijsvdvrijheid/07.JPG
(Stored with Git LFS)
Normal file
5
content/portfolio/prijsvdvrijheid/prijsvdvrijheid.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
order: 5
|
||||||
|
title: "Prijs v.d. Vrijheid"
|
||||||
|
description: Emotive lighting design with tight limitations for a musical performed on location in a church.
|
||||||
|
---
|
BIN
content/portfolio/sowulo/1.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/sowulo/2.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/sowulo/3.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/sowulo/4.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/sowulo/5.jpg
(Stored with Git LFS)
Normal file
BIN
content/portfolio/sowulo/6.jpg
(Stored with Git LFS)
Normal file
5
content/portfolio/sowulo/sowulo.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
order: 1
|
||||||
|
title: Sowulo
|
||||||
|
description: Designing a theatrical, atmospheric and detailed show while and bringing it to a variety venues and festivals of varying sizes with very short on-site preparation times.
|
||||||
|
---
|
BIN
content/portfolio/tinderella/20240126_202807.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tinderella/20240126_202807.JPG~RF2878b3c8.TMP
Normal file
After Width: | Height: | Size: 1.8 MiB |
BIN
content/portfolio/tinderella/20240126_212503.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tinderella/20240126_214152.JPG
(Stored with Git LFS)
Normal file
5
content/portfolio/tinderella/tinderella.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
order: 6
|
||||||
|
title: Tinderella
|
||||||
|
description: Minimal but gripping lighting for a deeply personal solo theatre show. Delimiting scenes and building atmosphere without distracting from the content
|
||||||
|
---
|
BIN
content/portfolio/tivolivredenburg/001.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/002.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/003.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/004.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/005.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/006.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/007.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/008.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/009.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/010.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/011.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/012.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/tivolivredenburg/013.JPG
(Stored with Git LFS)
Normal file
5
content/portfolio/tivolivredenburg/tivolivredenburg.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
order: 3
|
||||||
|
title: TivoliVredenburg
|
||||||
|
description: Creative and fitting lighting for a wide variety of productions. From sales to classical to jazz to metal, across 5 stages in the venue.
|
||||||
|
---
|
BIN
content/portfolio/willemeen/01.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/willemeen/01.JPG~RF287feb51.TMP
Normal file
After Width: | Height: | Size: 1.9 MiB |
BIN
content/portfolio/willemeen/02.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/willemeen/02.JPG~RF287f9476.TMP
Normal file
After Width: | Height: | Size: 1.6 MiB |
BIN
content/portfolio/willemeen/03.JPG
(Stored with Git LFS)
Normal file
BIN
content/portfolio/willemeen/03.JPG~RF28806e1d.TMP
Normal file
After Width: | Height: | Size: 2.1 MiB |
BIN
content/portfolio/willemeen/05.JPG
(Stored with Git LFS)
Normal file
5
content/portfolio/willemeen/willemeen.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
order: 7
|
||||||
|
title: Willemeen
|
||||||
|
description: Small venue, big looks.
|
||||||
|
---
|
|
@ -22,14 +22,15 @@ body {
|
||||||
background-color: $grey-vdark;
|
background-color: $grey-vdark;
|
||||||
font-family: $default-font-family;
|
font-family: $default-font-family;
|
||||||
line-height: 1.3rem;
|
line-height: 1.3rem;
|
||||||
|
margin: 0;
|
||||||
|
margin-top: 0.2rem;
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 900px;
|
max-width: 900px;
|
||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
display: block;
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
.blog {
|
.blog {
|
||||||
max-width: 700px;
|
max-width: 700px;
|
||||||
|
@ -59,6 +60,97 @@ body {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.portfolio-list-item {
|
||||||
|
padding: 0.5rem;
|
||||||
|
background-color: $grey-dark;
|
||||||
|
margin-top: 1rem;
|
||||||
|
|
||||||
|
.flex {
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
align-items: center;
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
@media (max-width: 500px) {
|
||||||
|
flex-wrap: wrap !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
picture {
|
||||||
|
display: block;
|
||||||
|
height: 15rem;
|
||||||
|
flex-grow: 1;
|
||||||
|
|
||||||
|
img {
|
||||||
|
height: 100%;
|
||||||
|
max-height: 100%;
|
||||||
|
min-width: 100%;
|
||||||
|
object-fit: cover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-header {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
margin-bottom: 0.3rem;
|
||||||
|
|
||||||
|
& * {
|
||||||
|
display: inline;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
|
||||||
|
margin-right: 0.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
margin-left: auto;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.portfolio-detail {
|
||||||
|
width: 100vw;
|
||||||
|
|
||||||
|
&-header {
|
||||||
|
text-align: justify;
|
||||||
|
|
||||||
|
&>* {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-images {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
margin-top: 1rem;
|
||||||
|
|
||||||
|
picture {
|
||||||
|
display: block;
|
||||||
|
height: 22vw;
|
||||||
|
flex-grow: 1;
|
||||||
|
max-width: 33.33%;
|
||||||
|
|
||||||
|
@media screen and (max-width: 1250px) {
|
||||||
|
height: 30vw;
|
||||||
|
max-width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 750px) {
|
||||||
|
max-width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-height: 100%;
|
||||||
|
height: 100% !important;
|
||||||
|
min-width: 100%;
|
||||||
|
object-fit: cover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
ol:not(ol *, ul *),
|
ol:not(ol *, ul *),
|
||||||
ul:not(ol *, ul *) {
|
ul:not(ol *, ul *) {
|
||||||
margin-left: 0rem;
|
margin-left: 0rem;
|
||||||
|
@ -90,7 +182,6 @@ body {
|
||||||
list-style-type: "- ";
|
list-style-type: "- ";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
figure {
|
figure {
|
||||||
background-color: $grey-dark;
|
background-color: $grey-dark;
|
||||||
|
@ -194,19 +285,19 @@ body {
|
||||||
padding: 0.1rem 0.4rem;
|
padding: 0.1rem 0.4rem;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.d-inline-block {
|
.d-inline-block {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
img {
|
img {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
|
|
||||||
|
|
||||||
&[width][height] {
|
&[width][height] {
|
||||||
height: auto;
|
height: auto;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex {
|
.flex {
|
||||||
|
|
|
@ -29,11 +29,13 @@ export default async function (eleventyConfig) {
|
||||||
});
|
});
|
||||||
|
|
||||||
//Images
|
//Images
|
||||||
eleventyConfig.addPlugin(eleventyImageTransformPlugin);
|
eleventyConfig.addPlugin(eleventyImageTransformPlugin, {
|
||||||
eleventyConfig.addShortcode("figure", (url, alt, caption) => {
|
widths: ["700"]
|
||||||
|
});
|
||||||
|
eleventyConfig.addShortcode("figure", (url, alt, caption, width) => {
|
||||||
return `
|
return `
|
||||||
<figure>
|
<figure>
|
||||||
<img src="${url}" alt="${alt}" />
|
<img src="${url}" alt="${alt}" width="${width || "700"}" />
|
||||||
<figcaption>${caption}</figcaption>
|
<figcaption>${caption}</figcaption>
|
||||||
</figure>
|
</figure>
|
||||||
`;
|
`;
|
||||||
|
@ -52,6 +54,14 @@ export default async function (eleventyConfig) {
|
||||||
|
|
||||||
//File passthrough
|
//File passthrough
|
||||||
eleventyConfig.addPassthroughCopy("content/robots.txt");
|
eleventyConfig.addPassthroughCopy("content/robots.txt");
|
||||||
|
|
||||||
|
// Portfolio sort
|
||||||
|
eleventyConfig.addCollection("portfolioSorted", (collectionsAPi) => {
|
||||||
|
const portfolio = collectionsAPi.getFilteredByTag("portfolio");
|
||||||
|
const sorted = portfolio.sort((a, b) => a.data.order - b.data.order);
|
||||||
|
return sorted;
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export const config = {
|
export const config = {
|
||||||
|
|