Compare commits

...

4 commits

Author SHA1 Message Date
2d182e6391 portfolio content, styling
Some checks failed
Build / Deploy (push) Failing after 2m24s
2025-02-13 20:56:23 +01:00
afcdd8ed12 Merge branch 'main' into portfolio 2025-02-13 02:52:07 +01:00
65a6d12c9d portfolio tweaks
Some checks failed
Build / Deploy (push) Has been cancelled
2025-02-13 02:50:07 +01:00
c12d34a822 init portfolio
Some checks failed
Build / Deploy (push) Failing after 1m55s
2025-02-13 02:28:59 +01:00
74 changed files with 428 additions and 69 deletions

4
.gitattributes vendored Normal file
View 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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 130 B

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 130 B

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 130 B

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 130 B

Before After
Before After

View file

@ -0,0 +1,6 @@
---
layout: base.njk
---
<div class="container">
{{content | safe}}
</div>

View file

@ -49,7 +49,8 @@
<div class="nav-links">
<div class="d-inline-block">
{{navItem("Home", "/")}}
{{navItem("Blog", "/blog", false)}}
{{navItem("Blog", "/blog")}}
{{navItem("Portfolio", "/portfolio", false)}}
</div>
<div class="d-inline-block">
<span> | </span>
@ -57,11 +58,11 @@
{{navItem("Instagram", "https://instagram.com/RikBerkelder", false)}}
</div>
</div>
</div>
{{content | safe}}
</div>
{{content | safe}}
<script src="//instant.page/5.2.0" type="module"
integrity="sha384-jnZyxPjiipYXnSU0ygqeac2q7CVYMbh84q0uHVRRxEtvFPiQYbXWUorga2aqZJ0z"></script>
<script data-goatcounter="https://goatcounter.riksolo.com/count" async

View 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">&lt;- 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>

View file

@ -1,4 +1,4 @@
{
"tags": "page",
"layout": "base.njk"
"layout": "base-container.njk"
}

View 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

Binary file not shown.

BIN
content/portfolio/femina/02.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/femina/03.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/femina/04.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/femina/05.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/femina/06.jpg (Stored with Git LFS) Normal file

Binary file not shown.

View 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

Binary file not shown.

BIN
content/portfolio/luxorlive/2.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/3.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/4.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/5.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/6.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/7.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/8.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/9.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/luxorlive/91.jpg (Stored with Git LFS) Normal file

Binary file not shown.

View 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.
---

View 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

Binary file not shown.

BIN
content/portfolio/prijsvdvrijheid/02.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/prijsvdvrijheid/03.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/prijsvdvrijheid/04.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/prijsvdvrijheid/05.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/prijsvdvrijheid/06.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/prijsvdvrijheid/07.JPG (Stored with Git LFS) Normal file

Binary file not shown.

View 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

Binary file not shown.

BIN
content/portfolio/sowulo/2.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/sowulo/3.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/sowulo/4.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/sowulo/5.jpg (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/sowulo/6.jpg (Stored with Git LFS) Normal file

Binary file not shown.

View 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

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

BIN
content/portfolio/tinderella/20240126_212503.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tinderella/20240126_214152.JPG (Stored with Git LFS) Normal file

Binary file not shown.

View 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

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/002.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/003.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/004.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/005.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/006.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/007.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/008.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/009.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/010.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/011.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/012.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
content/portfolio/tivolivredenburg/013.JPG (Stored with Git LFS) Normal file

Binary file not shown.

View 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

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

BIN
content/portfolio/willemeen/02.JPG (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

BIN
content/portfolio/willemeen/03.JPG (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

BIN
content/portfolio/willemeen/05.JPG (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,5 @@
---
order: 7
title: Willemeen
description: Small venue, big looks.
---

View file

@ -22,76 +22,167 @@ body {
background-color: $grey-vdark;
font-family: $default-font-family;
line-height: 1.3rem;
margin: 0;
margin-top: 0.2rem;
.container {
max-width: 900px;
margin-left: auto;
margin-right: auto;
display: block;
}
.blog {
max-width: 700px;
margin-left: auto;
margin-right: auto;
.blog {
max-width: 700px;
margin-left: auto;
margin-right: auto;
&-header {
&>* {
display: block;
}
a,
a:visited {
color: $primary;
}
small {
margin-top: 0.1em;
margin-bottom: 0.4em;
}
&-header {
&>* {
display: block;
}
&-content {
border-top: 1px solid $grey-medium;
margin-top: 1em;
a,
a:visited {
color: $primary;
}
small {
margin-top: 0.1em;
margin-bottom: 0.4em;
}
}
ol:not(ol *, ul *),
ul:not(ol *, ul *) {
margin-left: 0rem;
margin-top: 0rem;
margin-bottom: 1rem;
padding-left: 1.5rem;
margin-right: 2rem;
list-style-position: outside;
}
ol ol,
ol ul,
ul ol,
ul ul {
padding-left: 1rem;
}
ol p,
ul p {
margin: 0.3rem 0rem;
display: inline;
}
ol {
list-style-type: decimal;
}
ul {
list-style-type: "- ";
&-content {
border-top: 1px solid $grey-medium;
margin-top: 1em;
}
}
.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 *),
ul:not(ol *, ul *) {
margin-left: 0rem;
margin-top: 0rem;
margin-bottom: 1rem;
padding-left: 1.5rem;
margin-right: 2rem;
list-style-position: outside;
}
ol ol,
ol ul,
ul ol,
ul ul {
padding-left: 1rem;
}
ol p,
ul p {
margin: 0.3rem 0rem;
display: inline;
}
ol {
list-style-type: decimal;
}
ul {
list-style-type: "- ";
}
figure {
background-color: $grey-dark;
display: inline-block;
@ -194,18 +285,18 @@ body {
padding: 0.1rem 0.4rem;
display: inline-block;
}
}
.d-inline-block {
display: inline-block;
}
.d-inline-block {
display: inline-block;
}
img {
max-width: 100%;
img {
max-width: 100%;
&[width][height] {
height: auto;
&[width][height] {
height: auto;
}
}
}

View file

@ -29,11 +29,13 @@ export default async function (eleventyConfig) {
});
//Images
eleventyConfig.addPlugin(eleventyImageTransformPlugin);
eleventyConfig.addShortcode("figure", (url, alt, caption) => {
eleventyConfig.addPlugin(eleventyImageTransformPlugin, {
widths: ["700"]
});
eleventyConfig.addShortcode("figure", (url, alt, caption, width) => {
return `
<figure>
<img src="${url}" alt="${alt}" />
<img src="${url}" alt="${alt}" width="${width || "700"}" />
<figcaption>${caption}</figcaption>
</figure>
`;
@ -52,6 +54,14 @@ export default async function (eleventyConfig) {
//File passthrough
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 = {

View file

@ -19,4 +19,4 @@
"luxon": "^3.5.0",
"sass": "^1.83.4"
}
}
}