This commit is contained in:
Louis Gallet 2023-09-09 23:02:56 +02:00
commit a9b62b8f8f
Signed by: lgallet
SSH Key Fingerprint: SHA256:qnW7pk4EoMRR0UftZLZQKSMUImbEFsiruLC7jbCHJAY
39 changed files with 12080 additions and 0 deletions

28
.gitignore vendored Normal file
View File

@ -0,0 +1,28 @@
# dependencies
node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
build
public
#development
.cache
.husky
.vscode
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*
package-lock.json

14
LICENSE Normal file
View File

@ -0,0 +1,14 @@
BSD Zero Clause License
Copyright (c) 2021 Konstantin Münster
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.

54
README.md Normal file
View File

@ -0,0 +1,54 @@
<img src="screenshot.png" alt="Gatsby Theme Portfolio Minimal Screenshot" width="700" />
<a href="https://www.gatsbyjs.com/dashboard/deploynow?url=https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme" target="_blank">
<img src="https://www.gatsbyjs.com/deploynow.svg" alt="Deploy to Gatsby Cloud" />
</a>
# Gatsby Starter Portfolio Minimal Theme
#### A Gatsby Starter Project to easily get started with the Portfolio Minimal Theme.
Portfolio Minimal is a Gatsby Theme that let's you create outstanding one-page portfolios within minutes. This Gatsby Starter is a boilerplate project that has the theme pre-installed and pre-configured.
Just clone this Gatsby Starter, add the content. And that's it!
[Live Demo on Gatsby Cloud](https://gatsbystarterportfoliominimalt.gatsbyjs.io/) · [Live Demo on Netlify](https://gatsby-starter-portfolio-minimal-theme.netlify.app/) · [Portfolio Minimal Theme on Github](https://github.com/konstantinmuenster/gatsby-theme-portfolio-minimal)
---
## Installation
1. Install the Gatsby CLI
```sh
npm install -g gatsby-cli
```
2. Create a new Gatsby site with the Portfolio Minimal Starter.
```sh
gatsby new portfolio-minimal https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme
```
3. Once installed, you can begin developing your site.
```sh
cd portfolio-minimal
gatsby develop
```
4. By default, the Portfolio Minimal Starter has a `content` directory at the root of your Gatsby site. There, you can edit the theme settings as well as add content for your sections. To learn more about it, have a look at the [Readme of Portfolio Minimal](https://github.com/konstantinmuenster/gatsby-theme-portfolio-minimal/tree/main/gatsby-theme-portfolio-minimal#readme).
---
## Issues?
If you find any bugs or have feature suggestions, create a new issue or pull request 🙏
Thanks a lot for using this starter! 💪
---
<a href="https://www.buymeacoffee.com/kmuenster" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/default-orange.png" alt="Buy Me A Coffee" height="41" width="174"></a>
Konstantin Münster [konstantin.digital](https://konstantin.digital)

View File

@ -0,0 +1,74 @@
---
title: "This is an exemplary article for the blog."
description: "This description will be used for the article listing and search results on Google."
date: "2021-05-28"
banner:
src: "../../images/kelly-sikkema-Hl3LUdyKRic-unsplash.jpg"
alt: "First Markdown Post"
caption: 'Photo by <u><a href="https://unsplash.com/photos/Nc5Q_CEcY44">Florian Olivo</a></u>'
categories:
- "Setup"
- "Tutorial"
keywords:
- "Example"
- "Gatsby"
- "Markdown"
- "Blog"
---
## Code block test
```css
.AClass .Subtitle {
margin: -0.5rem 0 0 0;
font-weight: 700;
font-size: 1.25rem;
line-height: 1.5rem;
}
.AnotherClass p {
font-size: 1.125rem;
margin-bottom: 2rem;
}
.AThirdClass {
display: flex;
justify-content: flex-start;
align-items: center;
}
@media (max-width: 768px) {
.AClass {
flex-direction: column;
}
.AnotherClass {
display: block;
}
}
```
Inline code: `print()`
Lorem ipsum dolor sit amed Vel ut spiritday all cultural Lili Elbe lorem in sexuality Herstory sit lorem Ac Genderless homoflexible trans Carrie Fisher Transgender love family cross-dresser ac a ut Ac xe she ut Tina Anselmi woman Marina Abramovich Lesbians and Gays Support the Miners Ipsum Chimamanda Ngozi sed sit Equal movement gender ut est lorem Laura Jane Grace Emma Watson sem eu.
**Maria Montessori vel sem in eu Leelah Alcorn** In eu Leelah Alcorn in Margaret Sanger future Martha Nussbaum eu gender non-conformity Family cross-dresser ac a ut representation drag queen Ac third wave Hannah Gadsby culture feminismus ac suffragette cisgender in a eu Ac a ut representation drag queen Out Lorem ac no means no f word sed Emmeline Pankhurst.
## Second Headline
Est vel est appreciation Nadia Murad Basee Taha cross-dressing vel Ut mi sit ut eu id Samira Wiley sit vel sem Ut romance in gender studies ballroom Sit lorem ac no means no f word sed Emmeline Pankhurst Ac sorellanza In Lea Delaria in grrlpwr pansexual intersectional yas queen diritti id mi Sem Audre Lorde Sappho in sed et empowerment genderqueer intersex.
![This is the alt tag.](../../images/kelly-sikkema-Hl3LUdyKRic-unsplash.jpg "This is a markdown [caption](https://konstantin.digital).")
Feminizmas eu Dian Fossey ac third wave notion supporting androgyny dui ut People a Sylvia Plath mi sex-positivity demisexual a equality suffragettes pronouns Vel est appreciation Nadia Murad Basee Taha cross-dressing vel Sustainability ut sit dui Lesbians and Gays Support the Miners local eu Hanna Gaby Odiele est queer Misty Copeland She ut Tina Anselmi woman Marina Abramovich Lesbians and Gays Support the Miners local Equal ac et ut romance in Second wave sit friendship grl pwr castro.
### Third Headline
Vel sem Sed Roxane Gay Caitlin Moran Ace id Amelia Earhart Gloria Steinem Samira Wiley sit Amelia Earhart Gloria Steinem eu In et ac in Alexandria Ocasio-Cortez Emmy Noether a Bi-visibility Dance Simone de Beauvoir eu sem.
#### Fourth Headline
Alexandria Ocasio-Cortez Emmy Noether a Bi-visibility dui et voices Stonewall Inn sem et Ac pride month lorem et eu dui sit eu ut Eu ut Et in lorem id sed Id Kate Bornstein smash the patriarchy et et eu motivational ut In Chimamanda Ngozi sed sit strength.
![This is the alt tag.](../../images/charles-deluvio-DgoyKNgPiFQ-unsplash.jpg)
Vel herstory Bossy sit ac xe she ut Tina Anselmi woman Marina Abramovich Spiritday all cultural Lili Elbe lorem in sexuality Transformation lgbt freedom et ac sem Sem we are everywhere Notion supporting androgyny dui ut dance Simone de Beauvoir eu sem sit Inge Schonöethal Feltrinelli female gaze ac Franca viola.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

BIN
content/images/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
content/images/gatsby.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

BIN
content/images/joystick.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
content/images/js.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 617 KiB

BIN
content/images/medium.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

BIN
content/images/mountain.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
content/images/notebook.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
content/images/react.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
content/images/wrench.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1,14 @@
---
imageSrc: "../../images/charles-deluvio-DgoyKNgPiFQ-unsplash.jpg"
imageAlt: "About Gatsby Theme Portfolio Minimal"
---
Portfolio Minimal is a Gatsby Theme that creates outstanding one-pages portfolio within minutes!
It has predefined sections for your bio, skills, projects, and contact details. If you are a writer on Medium, you can integrate your latest articles in a distinct section as well. While building the theme, I tried to keep the setup as simple as possible while keeping everything configurable if you like to.
Using theme composition, you can easily customize the CSS theme to your own preferences - e.g. change colors, fonts, etc.
Last but not least, it has some cool features you can opt-in to: Dark Mode, Splash Screen, Cookie Banner, and more to find out :)
Photo by <a href="https://unsplash.com/@charlesdeluvio?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText" target="_blank" rel="nofollow noopener noreferrer" aria-label="External Link"><u>Charles Deluvio</u></a> on Unsplash

View File

@ -0,0 +1,13 @@
{
"name": "Gatsby Starter For Portfolio Minimal",
"email": "example@mail.com",
"description": "If you have any problems with this theme, create an issue in the GitHub repository.",
"image": {
"src": "../../images/favicon.png",
"alt": "Gatsby Logo"
},
"socialProfiles": {
"from": ["LinkedIn", "Medium", "Github", "Mail"],
"showIcons": true
}
}

View File

@ -0,0 +1,22 @@
{
"intro": "Hej",
"heroPhoto": {
"src": "../../images/lego-dummy.png",
"alt": "My Photo"
},
"image": {
"src": "../../images/waving-hand.png",
"alt": "Waving Hand Emoji"
},
"title": "I'm a Gatsby Starter",
"subtitle": {
"prefix": "I do all the setup ",
"highlight": "for you",
"suffix": "."
},
"description": "A Gatsby Starter Project to easily get started with Portfolio Minimal theme.",
"socialProfiles": {
"from": ["LinkedIn", "Medium", "Github", "Mail"],
"showIcons": false
}
}

View File

@ -0,0 +1,65 @@
{
"interests": [
{
"label": "Quick and Easy Setup",
"image": {
"src": "../../images/joystick.png",
"alt": ""
}
},
{
"label": "Content via Markdown",
"image": {
"src": "../../images/notebook.png",
"alt": ""
}
},
{
"label": "Responsive Design",
"image": {
"src": "../../images/nail-polish.png",
"alt": ""
}
},
{
"label": "Medium Integration",
"image": {
"src": "../../images/medium.png",
"alt": ""
}
},
{
"label": "Animations",
"image": {
"src": "../../images/gem-stone.png",
"alt": ""
}
},
{
"label": "PWA (Offline Support)",
"image": {
"src": "../../images/mobile-phone.png",
"alt": ""
}
},
{
"label": "Modern Tech-Stack",
"image": {
"src": "../../images/gatsby.png",
"alt": ""
}
},
{
"label": "Blazing Fast",
"image": {
"src": "../../images/high-voltage.png",
"alt": ""
}
}
],
"button": {
"visible": true,
"label": "+ Load More",
"initiallyShownInterests": 5
}
}

View File

@ -0,0 +1,36 @@
---
sectionId: imprint
---
#### Information pursuant to § 5 TMG
YOURNAME<br />
YOURSTREET<br />
YOURCITY<br />
YOURCOUNTRY
E-Mail Address: <u>YOURMAIL@DOMAIN.COM</u>
---
#### Liability for Contents
As service providers, we are liable for own contents of these websites according to Sec. 7, paragraph 1 German Telemedia Act (TMG). However, according to Sec. 8 to 10 German Telemedia Act (TMG), service providers are not obligated to permanently monitor submitted or stored information or to search for evidences that indicate illegal activities.
Legal obligations to removing information or to blocking the use of information remain unchallenged. In this case, liability is only possible at the time of knowledge about a specific violation of law. Illegal contents will be removed immediately at the time we get knowledge of them.
---
#### Liability for Links
Our offer includes links to external third party websites. We have no influence on the contents of those websites, therefore we cannot guarantee for those contents. Providers or administrators of linked websites are always responsible for their own contents.
The linked websites had been checked for possible violations of law at the time of the establishment of the link. Illegal contents were not detected at the time of the linking. A permanent monitoring of the contents of linked websites cannot be imposed without reasonable indications that there has been a violation of law. Illegal links will be removed immediately at the time we get knowledge of them.
---
#### Copyright
Contents and compilations published on these websites by the providers are subject to German copyright laws. Reproduction, editing, distribution as well as the use of any kind outside the scope of the copyright law require a written permission of the author or originator. Downloads and copies of these websites are permitted for private use only. The commercial use of our contents without permission of the originator is prohibited.
Copyright laws of third parties are respected as long as the contents on these websites do not originate from the provider. Contributions of third parties on this site are indicated as such. However, if you notice any violations of copyright law, please inform us. Such contents will be removed immediately.

View File

@ -0,0 +1,19 @@
---
sectionId: privacy
---
Your privacy is important to me. It is my, YOURNAME, policy to respect your privacy regarding any information I may collect from you across my website, YOURDOMAIN.
I only ask for personal information when I truly need it to provide a service to you. I collect it by fair and lawful means, with your knowledge and consent. I also let you know why I am collecting it and how it will be used.
I only retain collected information for as long as necessary to provide you with your requested service. What data I store, I'll protect within commercially acceptable means to prevent loss and theft, as well as unauthorised access, disclosure, copying, use or modification.
I dont share any personally identifying information publicly or with third-parties, except when required to by law.
My website may link to external sites that are not operated by me. Please be aware that I have no control over the content and practices of these sites, and cannot accept responsibility or liability for their respective privacy policies.
You are free to refuse my request for your personal information, with the understanding that I may be unable to provide you with some of your desired services.
Your continued use of my website will be regarded as acceptance of my practices around privacy and personal information. If you have any questions about how I handle user data and personal information, feel free to contact me.
This policy is effective as of 22 September 2019. It has been generated with the help of GetTerms.io.

View File

@ -0,0 +1,48 @@
{
"projects": [
{
"visible": true,
"category": "🕹️ EASY AND QUICK SETUP",
"title": "Add content and deploy!",
"description": "Get up and running within minutes. Just install the starter, add your content, deploy it, and there you go! This starter works seamlessly with hosts like Netlify. Photo by Clément H on Unsplash.",
"tags": ["Content Integration", "Ready-2-Deploy"],
"image": {
"src": "../../images/clement-h-95YRwf6CNw8-unsplash.jpg",
"alt": "Quick Setup",
"linkTo": "https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme"
},
"links": [
{
"type": "github",
"url": "https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme"
},
{
"type": "external",
"url": "https://www.gatsbyjs.org/docs/mdx/writing-pages/"
}
]
},
{
"visible": true,
"category": "🧰 EXTENDABLE LAYOUT",
"title": "Add more sections!",
"description": "The starter includes predefined sections as well as a template for new, custom sections. Moreover, you can add new projects to this section without additional coding. Photo by Kelly Sikkema on Unsplash.",
"tags": ["Custom Sections", "Easy-2-Use"],
"image": {
"src": "../../images/kelly-sikkema-Hl3LUdyKRic-unsplash.jpg",
"alt": "Extendable Layout"
},
"links": [
{
"type": "github",
"url": "https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme"
}
]
}
],
"button": {
"visible": true,
"label": "Visit on Github",
"url": "https://github.com/konstantinmuenster/gatsby-theme-portfolio-minimal"
}
}

44
content/settings.json Normal file
View File

@ -0,0 +1,44 @@
{
"siteMetadata": {
"language": "en",
"siteUrl": "https://gatsby-starter-portfolio-minimal-theme.netlify.app/",
"title": "Gatsby Starter for Portfolio Minimal",
"titleTemplate": "%s · Portfolio Minimal",
"description": "A Gatsby Starter Project to easily get started with Portfolio Minimal theme.",
"author": "Konstantin Münster",
"avatar": "../content/images/gatsby.png",
"bio": "This biography will be used in the footer area of an article and can contain some more details about the author.",
"social": {
"behance": "https://behance.com",
"github": "https://github.com/konstantinmuenster",
"medium": "https://konstantinmuenster.medium.com",
"linkedin": "https://www.linkedin.com/in/konstantin-muenster/",
"mail": "mailto:mail@konstantin.digital"
}
},
"siteConfiguration": {
"logo": { "text": "Portfolio" },
"navigation": {
"header": [
{ "label": "About", "url": "/#about" },
{ "label": "Blog", "url": "/blog" },
{ "label": "Features", "url": "/#features" },
{ "label": "Github", "url": "/#github" }
],
"ctaButton": {
"openNewTab": true,
"label": "Resume",
"url": "/resume.pdf"
},
"footer": [
{ "label": "Privacy", "url": "/privacy" },
{ "label": "Imprint", "url": "/imprint" }
]
},
"featureToggles": {
"useDarkModeAsDefault": false,
"useDarkModeBasedOnUsersPreference": true,
"useCookieBar": false
}
}
}

29
gatsby-config.js Normal file
View File

@ -0,0 +1,29 @@
module.exports = {
plugins: [
{
resolve: "gatsby-theme-portfolio-minimal",
options: {
siteUrl: "https://gatsby-starter-portfolio-minimal-theme.netlify.app/", // Used for sitemap generation
manifestSettings: {
favicon: "./content/images/favicon.png", // Path is relative to the root
siteName: "My Minimal Portfolio", // Used in manifest.json
shortName: "Portfolio", // Used in manifest.json
startUrl: "/", // Used in manifest.json
backgroundColor: "#FFFFFF", // Used in manifest.json
themeColor: "#000000", // Used in manifest.json
display: "minimal-ui", // Used in manifest.json
},
contentDirectory: "./content",
blogSettings: {
path: "/blog", // Defines the slug for the blog listing page
usePathPrefixForArticles: false, // Default true (i.e. path will be /blog/first-article)
},
// googleAnalytics: {
// trackingId: "UA-XXXXXX-X",
// anonymize: true, // Default true
// environments: ["production", "development"] // Default ["production"]
// }
},
},
],
};

43
package.json Normal file
View File

@ -0,0 +1,43 @@
{
"name": "gatsby-starter-portfolio-minimal-theme",
"version": "1.0.0",
"description": "A Gatsby Starter Project to easily get started with the Portfolio Minimal Theme.",
"scripts": {
"clean": "gatsby clean",
"develop": "gatsby develop",
"build": "gatsby build",
"serve": "gatsby serve"
},
"engines": {
"node": ">=18.0.0"
},
"dependencies": {
"gatsby": "^5.0.1",
"gatsby-theme-portfolio-minimal": "latest",
"react": "^18.2.0",
"react-dom": "^18.2.0"
},
"author": "Konstantin Münster <mail@konstantin.digital>",
"license": "0BSD",
"starter-name": "gatsby-starter-portfolio-minimal-theme",
"homepage": "https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme#readme",
"repository": {
"type": "git",
"url": "https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme.git"
},
"bugs": {
"url": "https://github.com/konstantinmuenster/gatsby-starter-portfolio-minimal-theme/issues"
},
"keywords": [
"react",
"gatsby",
"gatsby-theme",
"PWA",
"portfolio",
"showcase",
"minimal",
"animations",
"dark-mode",
"gdpr-compliant"
]
}

BIN
screenshot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

13
src/pages/imprint.js Normal file
View File

@ -0,0 +1,13 @@
import React from "react";
import { LegalSection, Page, Seo } from "gatsby-theme-portfolio-minimal";
export default function ImprintPage() {
return (
<>
<Seo title="Imprint" useTitleTemplate={true} noIndex={true} />
<Page>
<LegalSection sectionId="imprint" heading="Imprint" />
</Page>
</>
);
}

27
src/pages/index.js Normal file
View File

@ -0,0 +1,27 @@
import React from "react";
import {
AboutSection,
ArticlesSection,
ContactSection,
HeroSection,
InterestsSection,
Page,
ProjectsSection,
Seo,
} from "gatsby-theme-portfolio-minimal";
export default function IndexPage() {
return (
<>
<Seo title="Gatsby Starter for Portfolio Minimal" />
<Page useSplashScreenAnimation>
<HeroSection sectionId="hero" />
<ArticlesSection sectionId="articles" heading="Latest Articles" sources={['Medium']} />
<AboutSection sectionId="about" heading="About Portfolio Minimal" />
<InterestsSection sectionId="details" heading="Details" />
<ProjectsSection sectionId="features" heading="Built-in Features" />
<ContactSection sectionId="github" heading="Issues?" />
</Page>
</>
);
}

13
src/pages/privacy.js Normal file
View File

@ -0,0 +1,13 @@
import React from "react";
import { LegalSection, Page, Seo } from "gatsby-theme-portfolio-minimal";
export default function PrivacyPage() {
return (
<>
<Seo title="Privacy Policy" useTitleTemplate={true} noIndex={true} />
<Page>
<LegalSection sectionId="privacy" heading="Privacy Policy" />
</Page>
</>
);
}

BIN
static/resume.pdf Normal file

Binary file not shown.

11524
yarn.lock Normal file

File diff suppressed because it is too large Load Diff