Skip to content

Tereze Medne's portfolio website using Jamstack and Next.js

Notifications You must be signed in to change notification settings

druvisc/terezemedne

Repository files navigation

Tereze Medne

Art portfolio website: https://www.terezemedne.com/

image

Design

Designed by Tereze Medne, the application's design embraces minimalism, featuring a playful collage like masonry layout and placing the artist's work in the foreground. With responsivenes and mobile usage in mind, the layout transfers to a single column on smaller devices further focusing on the content itself.

Stack

The application is developed using Jamstack principles with Next.js. Styled with the default Tailwind theme.

It's hosted freely on Netlify and uses Netlify CMS. ❤️

Through a customized admin panel, the CMS creates and merges a pull request with the changes. The content is publicly available, stored on the file system and the GitHub repository itself.

The HTML files are generated by the Next.js export command with the MDX content being parsed by gray-matter and loaded by next-mdx-remote packages.

sharp

A sharp script (scripts/sharp.js) is used at build time to

  • load image settings from constants/images.js
  • load images from UPLOADS_DIR
  • create responsive JPEG and PNG images with WebP counterparts to RESIZED_DIR using IMAGE_WIDTHS, IMAGE_QUALITY
  • create HTMLImageElement width, height, mapped src-set and src attributes to IMAGE_ATTRIBUTES_URI

Afterwards the resized images are used through an image loader (loaders/resizedLoader by default) in a custom <Image /> component.

Lighthouse

Lighthouse Performance Badge Lighthouse Accessibility Badge Lighthouse Best Practices Badge Lighthouse SEO Badge