1
0
mirror of https://github.com/kremalicious/portfolio.git synced 2025-02-14 21:10:41 +01:00

65 lines
1.9 KiB
JavaScript

import React, { Fragment } from 'react'
import PropTypes from 'prop-types'
import Helmet from 'react-helmet'
import ReactMarkdown from 'react-markdown'
import Content from '../atoms/Content'
import FullWidth from '../atoms/FullWidth'
import ProjectTechstack from '../molecules/ProjectTechstack'
import ProjectLinks from '../molecules/ProjectLinks'
import images from '../../images'
import './Project.scss'
const Project = props => {
const project = props.pathContext
const title = project.title
const img = project.img
const img_more = project.img_more
const description = project.description
const links = project.links
const techstack = project.techstack
return <Fragment>
<Helmet>
<title>{title}</title>
<meta name="description" content={description} />
</Helmet>
<main className="screen screen--project">
<article className="project">
<Content>
<h1 className="project__title">{title}</h1>
<ReactMarkdown source={description} escapeHtml={false} className="project__description" />
<FullWidth>
<img className="project__image" src={images[img]} alt={title} />
</FullWidth>
{!!img_more &&
<FullWidth>
{img_more.map(key => (
<img
key={key}
className="project__image"
src={images[key]}
alt={title}
/>
))}
</FullWidth>
}
<footer className="project__meta">
{!!techstack && <ProjectTechstack techstack={techstack} />}
{!!links && <ProjectLinks links={links} />}
</footer>
</Content>
</article>
</main>
</Fragment>
}
Project.propTypes = {
pathContext: PropTypes.object,
}
export default Project