├── static ├── robots.txt ├── social.png └── logo.svg ├── .prettierignore ├── screenshot.png ├── src ├── images │ ├── author.jpg │ └── icon.png ├── components │ ├── Carousel.css │ ├── Hero.jsx │ ├── Cards.jsx │ ├── Carousel.jsx │ ├── Button.jsx │ ├── Card.jsx │ ├── SiteMetadata.jsx │ ├── MenuMobile.jsx │ ├── Header.jsx │ ├── Footer.jsx │ ├── Newsletter.jsx │ └── Overlay.jsx ├── styles │ └── style.css ├── layouts │ └── Layout.jsx ├── pages │ ├── 404.js │ ├── index.js │ └── about.js └── templates │ └── portfolio-item.jsx ├── postcss.config.js ├── .prettierrc ├── .env.example ├── .editorconfig ├── tailwind.config.js ├── bin ├── hello.js └── setup.js ├── LICENSE ├── .gitignore ├── gatsby-node.js ├── gatsby-config.js ├── package.json ├── README.md └── contentful └── export.json /static/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Allow: / 3 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .cache 2 | package.json 3 | package-lock.json 4 | public 5 | -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wkocjan/gatsby-contentful-portfolio/HEAD/screenshot.png -------------------------------------------------------------------------------- /static/social.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wkocjan/gatsby-contentful-portfolio/HEAD/static/social.png -------------------------------------------------------------------------------- /src/images/author.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wkocjan/gatsby-contentful-portfolio/HEAD/src/images/author.jpg -------------------------------------------------------------------------------- /src/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wkocjan/gatsby-contentful-portfolio/HEAD/src/images/icon.png -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = () => ({ 2 | plugins: [require("tailwindcss"), require(`autoprefixer`)()], 3 | }) 4 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "endOfLine": "lf", 3 | "semi": false, 4 | "singleQuote": false, 5 | "tabWidth": 2, 6 | "trailingComma": "es5" 7 | } 8 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | CONTENTFUL_SPACE_ID='' 2 | CONTENTFUL_ACCESS_TOKEN='' 3 | 4 | # https://www.gatsbyjs.org/packages/gatsby-plugin-mailchimp/?=mailchimp#mailchimp-endpoint 5 | MAILCHIMP_ENDPOINT='' 6 | -------------------------------------------------------------------------------- /src/components/Carousel.css: -------------------------------------------------------------------------------- 1 | .swiper-container { 2 | --swiper-theme-color: theme("colors.blue.500"); 3 | } 4 | 5 | .swiper-pagination-bullet { 6 | @apply .bg-white; 7 | } 8 | 9 | @screen md { 10 | .swiper-pagination-bullet { 11 | @apply .w-3 .h-3; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | ; top-most EditorConfig file 2 | root = true 3 | 4 | ; Unix-style newlines 5 | [*] 6 | end_of_line = LF 7 | charset = utf-8 8 | indent_style = space 9 | indent_size = 2 10 | trim_trailing_whitespace = true 11 | insert_final_newline = true 12 | 13 | [*.md] 14 | trim_trailing_whitespace = false 15 | -------------------------------------------------------------------------------- /src/styles/style.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | 3 | body { 4 | @apply .bg-white .font-sans .antialiased; 5 | } 6 | 7 | @tailwind components; 8 | 9 | @tailwind utilities; 10 | 11 | .container { 12 | @apply .max-w-screen-xl .mx-auto .px-4; 13 | } 14 | 15 | @screen md { 16 | .container { 17 | @apply .px-6; 18 | } 19 | } 20 | 21 | @screen lg { 22 | .container { 23 | @apply .px-8; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | purge: ["./src/**/*.jsx", "./src/**/*.js"], 3 | theme: { 4 | container: { 5 | center: true, 6 | padding: "1.25rem", 7 | }, 8 | fontFamily: { 9 | sans: ["Inter var", "system-ui", "sans-serif"], 10 | }, 11 | }, 12 | variants: { 13 | opacity: ["responsive", "hover", "focus", "group-hover"], 14 | display: ["responsive", "hover", "focus", "last"], 15 | }, 16 | } 17 | -------------------------------------------------------------------------------- /src/components/Hero.jsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | 3 | const Hero = () => ( 4 |
5 |

6 | Hello, I'm John{" "} 7 | 8 | 👋 9 | 10 |
11 | 12 | Welcome to my photography portfolio. 13 | 14 |

15 |
16 | ) 17 | 18 | export default Hero 19 | -------------------------------------------------------------------------------- /src/layouts/Layout.jsx: -------------------------------------------------------------------------------- 1 | import PropTypes from "prop-types" 2 | import React from "react" 3 | import "typeface-inter" 4 | import "../styles/style.css" 5 | import Footer from "../components/Footer" 6 | import Header from "../components/Header" 7 | 8 | const Layout = ({ children }) => { 9 | return ( 10 | <> 11 |
12 | {children} 13 |