mirror of
https://github.com/kogakure/website-astro-stefanimhoff.de.git
synced 2026-02-03 20:15:27 +00:00
feat: add Projects overview data
This commit is contained in:
@@ -8,6 +8,33 @@ const haikuCollection = defineCollection({
|
|||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const projectCollection = defineCollection({
|
||||||
|
schema: z.object({
|
||||||
|
title: z.string(),
|
||||||
|
sort: z.number().optional(),
|
||||||
|
showcase: z.boolean().optional(),
|
||||||
|
description: z.string(),
|
||||||
|
categories: z.array(z.enum([
|
||||||
|
"Design",
|
||||||
|
"Graphic Design",
|
||||||
|
"Icon Design",
|
||||||
|
"Illustration",
|
||||||
|
"Painting",
|
||||||
|
"Photography",
|
||||||
|
"Poetry",
|
||||||
|
"Typeface Design",
|
||||||
|
"Web Design",
|
||||||
|
"Web Development",
|
||||||
|
"Writing"
|
||||||
|
])),
|
||||||
|
more: z.object({
|
||||||
|
text: z.string().optional(),
|
||||||
|
link: z.string()
|
||||||
|
}).optional()
|
||||||
|
}),
|
||||||
|
});
|
||||||
|
|
||||||
export const collections = {
|
export const collections = {
|
||||||
haiku: haikuCollection,
|
haiku: haikuCollection,
|
||||||
|
projects: projectCollection
|
||||||
};
|
};
|
||||||
|
|||||||
6
src/content/projects/bamboo-illustration.mdx
Normal file
6
src/content/projects/bamboo-illustration.mdx
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
title: Bamboo Illustration
|
||||||
|
sort: 90
|
||||||
|
categories: ["Illustration"]
|
||||||
|
description: I created the bamboo illustration in 2006 for my Martial Arts website using Adobe Illustrator and the gradient grid tool. 2015 I decided to use my bamboo as SVG on my website. Unfortunately, the gradient tool is not supported in SVG and I needed to recreate my bamboo with linear, radial, and other supported gradients in Affinity Designer.
|
||||||
|
---
|
||||||
9
src/content/projects/book-cover.mdx
Normal file
9
src/content/projects/book-cover.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: Book & Book Cover
|
||||||
|
sort: 110
|
||||||
|
categories: ["Writing", "Graphic Design"]
|
||||||
|
description: I wrote this book in 2017 out of the essays I’ve written on my Martial Arts website in the last 20 years. It’s a book in German about the Ninja and their secret art of Ninjutsu. I also designed the book cover for my book. The book was written with GitBook and can be read or downloaded for free as PDF, ePub, or Mobi eBook.
|
||||||
|
more:
|
||||||
|
text: Read the Book
|
||||||
|
link: https://www.kogakure.de/
|
||||||
|
---
|
||||||
10
src/content/projects/exploring-hamburg-v2.mdx
Normal file
10
src/content/projects/exploring-hamburg-v2.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: Exploring Hamburg
|
||||||
|
sort: 140
|
||||||
|
showcase: true
|
||||||
|
categories: ["Web Design", "Web Development", "Photography"]
|
||||||
|
description: "I created this Photography Blog for one of my hobbies: I explore the city of Hamburg, mostly walking, and sometimes biking to find out more about the individual districts and to shoot photos. The current design is the 2nd iteration."
|
||||||
|
more:
|
||||||
|
text: See Showcase of Version 2
|
||||||
|
link: /projects/exploring-hamburg-v2/
|
||||||
|
---
|
||||||
9
src/content/projects/font-ingo.mdx
Normal file
9
src/content/projects/font-ingo.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: "Ingo: Iga Ninja Cipher Font"
|
||||||
|
sort: 170
|
||||||
|
categories: ["Typeface Design", "Graphic Design"]
|
||||||
|
description: The Iga Ninja Cipher Font was created by me of an image provided by the Iga Ninja Museum in Japan and is said to be a font for correspondence in cipher. It was a fun personal project to learn how to create a typeface.
|
||||||
|
more:
|
||||||
|
text: Download Font on GitHub
|
||||||
|
link: https://github.com/kogakure/font-ingo
|
||||||
|
---
|
||||||
9
src/content/projects/haiku.mdx
Normal file
9
src/content/projects/haiku.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: Haiku
|
||||||
|
sort: 30
|
||||||
|
categories: ["Poetry", "Writing"]
|
||||||
|
description: I started writing Haiku poetry some years ago inspired by the works of the Japanese Haiku poet Matsuo Bashō. I think Haiku is a fun, creative way to use limitation and brevity while saying something meaningful.
|
||||||
|
more:
|
||||||
|
text: Read Haiku
|
||||||
|
link: /haiku/
|
||||||
|
---
|
||||||
9
src/content/projects/ia-writer-template-nanzan.mdx
Normal file
9
src/content/projects/ia-writer-template-nanzan.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: iA Writer Template Nanzan (南山)
|
||||||
|
sort: 70
|
||||||
|
categories: ["Web Design", "Web Development"]
|
||||||
|
description: This iA Writer template is inspired by the typographic style of the book Engaging Japanese Philosophy by Thomas P. Kasulis, designed by the Nanzan Institute for Religion and Culture.
|
||||||
|
more:
|
||||||
|
text: Download iA Writer Template Nanzan on GitHub
|
||||||
|
link: https://github.com/kogakure/ia-writer-template-nanzan
|
||||||
|
---
|
||||||
9
src/content/projects/ia-writer-template-shibui.mdx
Normal file
9
src/content/projects/ia-writer-template-shibui.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: iA Writer Template Shibui (渋い)
|
||||||
|
sort: 80
|
||||||
|
categories: ["Web Design", "Web Development"]
|
||||||
|
description: This iA Writer template is inspired by the Japanese aesthetics style shibui which was founded during the Muromachi period (1336-1392). I use the same style for my current personal branding on my website, for my martial arts book and for my photoblog.
|
||||||
|
more:
|
||||||
|
text: Download iA Writer Template Shibui on GitHub
|
||||||
|
link: https://github.com/kogakure/ia-writer-template-shibui
|
||||||
|
---
|
||||||
9
src/content/projects/journal.mdx
Normal file
9
src/content/projects/journal.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: Journal & Blog
|
||||||
|
sort: 10
|
||||||
|
categories: ["Writing"]
|
||||||
|
description: I have been writing essays on this website since 2007. The topics include programming, design, self-improvement, philosophy, productivity, books, and films. The collection has been much bigger, but I deleted outdated and irrelevant essays.
|
||||||
|
more:
|
||||||
|
text: Read Journal
|
||||||
|
link: /journal/
|
||||||
|
---
|
||||||
10
src/content/projects/kogakure-v9.mdx
Normal file
10
src/content/projects/kogakure-v9.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: Ninjutsu Book 木隠
|
||||||
|
sort: 100
|
||||||
|
showcase: true
|
||||||
|
categories: ["Web Design", "Web Development", "Writing"]
|
||||||
|
description: My Ninjutsu Book 木隠 was first launched in 1999 and is my oldest and most visited website. The current design is the 9th iteration. In 2022 I translated it to English to make it accessible to a larger readership.
|
||||||
|
more:
|
||||||
|
text: See Showcase of Version 9
|
||||||
|
link: /projects/kogakure-v9/
|
||||||
|
---
|
||||||
10
src/content/projects/koi-illustration.mdx
Normal file
10
src/content/projects/koi-illustration.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: Koi Illustration
|
||||||
|
sort: 130
|
||||||
|
showcase: true
|
||||||
|
categories: ["Illustration", "Painting"]
|
||||||
|
description: I created this illustration for a previous version of my website in 2007 with a pencil on paper and then brought it into Adobe Photoshop, where all coloring was done.
|
||||||
|
more:
|
||||||
|
text: See the “Making-of”
|
||||||
|
link: /projects/koi-illustration/
|
||||||
|
---
|
||||||
10
src/content/projects/osteopathie-hamburg.mdx
Normal file
10
src/content/projects/osteopathie-hamburg.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: Osteopathie-Institut Hamburg
|
||||||
|
sort: 150
|
||||||
|
showcase: true
|
||||||
|
categories: ["Web Design", "Web Development", "Photography"]
|
||||||
|
description: I created this website for the Osteopathie-Institut Hamburg in 2010 as one of my last websites before I started working as a Frontend Engineer for XING.
|
||||||
|
more:
|
||||||
|
text: See Showcase of Osteopathie-Institut Hamburg
|
||||||
|
link: /projects/osteopathie-hamburg/
|
||||||
|
---
|
||||||
9
src/content/projects/sketchnotes.mdx
Normal file
9
src/content/projects/sketchnotes.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: Sketchnotes
|
||||||
|
sort: 20
|
||||||
|
categories: ["Illustration", "Writing"]
|
||||||
|
description: One of my passions is Sketchnotes or also called Visual Notetaking. In Sketchnoting you use visual language to visualize ideas, notes, or thoughts. I create Sketchnotes since I first visited a workshop in 2015.
|
||||||
|
more:
|
||||||
|
text: See Sketchotes
|
||||||
|
link: /sketchnotes/
|
||||||
|
---
|
||||||
10
src/content/projects/stefanimhoff-v4.mdx
Normal file
10
src/content/projects/stefanimhoff-v4.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: Personal Website & Blog
|
||||||
|
sort: 120
|
||||||
|
showcase: true
|
||||||
|
categories: ["Web Design", "Web Development"]
|
||||||
|
description: My website and blog first launched in 2006 and is the website you’re looking at. The current design is the 4th iteration.
|
||||||
|
more:
|
||||||
|
text: See Showcase of Version 4
|
||||||
|
link: /projects/stefanimhoff-v4/
|
||||||
|
---
|
||||||
10
src/content/projects/thai-restaurants-hamburg.mdx
Normal file
10
src/content/projects/thai-restaurants-hamburg.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: Thai Restaurants Hamburg
|
||||||
|
sort: 160
|
||||||
|
showcase: true
|
||||||
|
categories: ["Graphic Design", "Web Design", "Web Development"]
|
||||||
|
description: I created this small website for three Thai restaurants in Hamburg in 2010. It was online for nearly ten years and I had a lot of fun creating it.
|
||||||
|
more:
|
||||||
|
text: See Showcase of Thai Restaurants Hamburg
|
||||||
|
link: /projects/thai-restaurants-hamburg/
|
||||||
|
---
|
||||||
9
src/content/projects/traditional-colors-of-japan.mdx
Normal file
9
src/content/projects/traditional-colors-of-japan.mdx
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: The Traditional Colors of Japan
|
||||||
|
sort: 60
|
||||||
|
categories: ["Design", "Web Development"]
|
||||||
|
description: In 2007 I stumbled upon a Japanese book about the traditional colors of Japan by Nobyoshi Hamada. He listed all 250 colors with their color value in the appendix. I took some time to create an ASE file to be used with all common design software.
|
||||||
|
more:
|
||||||
|
text: See Traditional Colors of Japan
|
||||||
|
link: /traditional-colors-of-japan/
|
||||||
|
---
|
||||||
10
src/content/projects/xing-design-system.mdx
Normal file
10
src/content/projects/xing-design-system.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: XING Design System
|
||||||
|
sort: 40
|
||||||
|
showcase: true
|
||||||
|
categories: ["Web Design", "Web Development", "Writing"]
|
||||||
|
description: As a Senior Web Developer on the Design System Team, I created, maintained, and documented the components of the XING Design System. I supported teams implementing our components across the platform.
|
||||||
|
more:
|
||||||
|
text: See XING Design System Components
|
||||||
|
link: /projects/xing-design-system/
|
||||||
|
---
|
||||||
10
src/content/projects/xing-onboarding-illustrations.mdx
Normal file
10
src/content/projects/xing-onboarding-illustrations.mdx
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: XING Onboarding Illustration
|
||||||
|
sort: 50
|
||||||
|
showcase: true
|
||||||
|
categories: ["Illustration", "Icon Design"]
|
||||||
|
description: I was asked to create three new illustrations that could be used for an Onboarding screen on XING. I accepted the challenge to take over this task and finished the whole process from concept to scribbles, to final illustrations in a day.
|
||||||
|
more:
|
||||||
|
text: See XING Onboarding Illustrations
|
||||||
|
link: /projects/xing-onboarding-illustrations/
|
||||||
|
---
|
||||||
44
src/pages/projects.astro
Normal file
44
src/pages/projects.astro
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
---
|
||||||
|
import { getCollection } from 'astro:content';
|
||||||
|
|
||||||
|
import { sortBySortKey } from '../utils/sort-by-sortkey';
|
||||||
|
|
||||||
|
import GridLayout from '../layouts/GridLayout.astro';
|
||||||
|
import PageTitle from '../components/PageTitle.astro';
|
||||||
|
import { MoreLink } from '../components';
|
||||||
|
|
||||||
|
import { Content as Intro } from '../text/projects/intro.mdx';
|
||||||
|
|
||||||
|
import { mapping } from '../mdx-components';
|
||||||
|
const allProjects = await getCollection('projects');
|
||||||
|
allProjects.sort(sortBySortKey).reverse();
|
||||||
|
---
|
||||||
|
|
||||||
|
<GridLayout title="Projects" grid="fullsize" class="grid" innerGrid>
|
||||||
|
<PageTitle
|
||||||
|
grid="wide"
|
||||||
|
innerGrid
|
||||||
|
class="!col-start-2 !col-end-18 md:!col-start-3 md:!col-end-17"
|
||||||
|
>
|
||||||
|
Projects
|
||||||
|
</PageTitle>
|
||||||
|
|
||||||
|
<article class="col-start-2 col-end-18 md:col-start-6 md:col-end-14">
|
||||||
|
<Intro components={mapping} />
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<div class="col-start-1 col-end-19">
|
||||||
|
{
|
||||||
|
allProjects.map(({ slug, data }) => (
|
||||||
|
<li>
|
||||||
|
<h2>{data.title}</h2>
|
||||||
|
<p>{data.description}</p>
|
||||||
|
<div>{data.categories.join(' / ')}</div>
|
||||||
|
{data.more && (
|
||||||
|
<MoreLink href={data.more.link} text={data.more.text || 'See more'} />
|
||||||
|
)}
|
||||||
|
</li>
|
||||||
|
))
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
</GridLayout>
|
||||||
5
src/text/projects/intro.mdx
Normal file
5
src/text/projects/intro.mdx
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
I’m a *Frontend Developer* by profession. But I worked in previous jobs in Design, Editing, and 3D Animation. I even created Flash Animations and Multimedia CD-ROMs when this was a thing.
|
||||||
|
|
||||||
|
I like the concept of the [Renaissance Man](https://simple.wikipedia.org/wiki/Renaissance_man) and like to try out different skills.
|
||||||
|
|
||||||
|
These are projects I created over the last years.
|
||||||
3
src/utils/sort-by-sortkey.ts
Normal file
3
src/utils/sort-by-sortkey.ts
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
export const sortBySortKey = (a: any, b: any) => {
|
||||||
|
return b.data.sort - a.data.sort;
|
||||||
|
};
|
||||||
Reference in New Issue
Block a user