import React, { Component, Fragment } from 'react' import PropTypes from 'prop-types' import Helmet from 'react-helmet' import ReactMarkdown from 'react-markdown' import Content from '../components/atoms/Content' import FullWidth from '../components/atoms/FullWidth' import ProjectImage from '../components/atoms/ProjectImage' import ProjectTechstack from '../components/molecules/ProjectTechstack' import ProjectLinks from '../components/molecules/ProjectLinks' import ProjectNav from '../components/molecules/ProjectNav' import SEO from '../components/atoms/SEO' import './Project.scss' class Project extends Component { constructor() { super() } render() { const project = this.props.data.projectsJson const projectImages = this.props.data.projectImages.edges const pathContext = this.props.pathContext const { title, description, links, techstack } = project const { next, previous } = pathContext return ( {title}

{title}

{projectImages.map(({ node }) => ( ))}
{!!techstack && } {!!links && }
) } } Project.propTypes = { data: PropTypes.object.isRequired, pathContext: PropTypes.object.isRequired, } export default Project export const projectQuery = graphql` query ProjectBySlug($slug: String!) { projectsJson(slug: { eq: $slug }) { title slug description links { title url } techstack } projectImages: allImageSharp(filter: { id: { regex: $slug } }, sort: { fields: [id], order: ASC }) { edges { node { id ...ProjectImageSizes } } } } `