ianarber-com

ianarber-com

Portfolio website for composer Ian Arber. Built with Jekyll using Gulp, Contentful & Netlify

Portfolio Website for Ian Arber

  • Static website built with Jekyll
  • Gulp used to build and bundle assets
  • Site hosted on Netlify
  • Contentful used as CMS to add posts and articles
  • Auth0 and Webtask.io used to provide authentication to certain pages

Getting Started

Prerequisites

  • Build on Linux or Windows Subsystem for Linux
  • Git, Node v4.x or above, Ruby v2.4 or above, Bundler v1 or above

Installing

git clone https://github.com/ianarber/ianarber-com.git

bundle install

npm install

Usage

Client Area Authentication

Deployment

The Jekyll site and assets are built by running various Gulp tasks. That main ones are:

Default Task

gulp

  • Used for development
  • Compiles SASS, scripts, React
  • Runs the jekyll-build task to compile the site
  • Launches BrowserSync to watch files

Create Posts

gulp create-post

  • Calls the Contentful Jekyll plugin to pull data into _data folder
  • Need to export both CONTENTFUL_SPACE_ID and CONTENTFUL_ACCESS_TOKEN environment variables in order to pull data from the Contentful Space (see _config.yml)
  • Ruby scripts in ./scripts folder are then called to convert returned yaml data to Jekyll posts and the Collections quotes and bioimages

Netlify Deploy

gulp netlify-deploy

  • Builds a production version of the site to deploy on Netlify
  • Similar to default task but minifies css/scripts
  • BrowserSync not called

Clean

gulp clean

  • Removes files from the following directories:
    • _data/contentful/**
    • _quotes/*.md
    • _bioimages/*.md
    • assets/script/bundle/*
    • assets/css/*.css

Attributions

Deployed on NetlifyPowered by ContentfulProtected by Auth0Deployed on Netlify

Authors

Anthony Desmier - https://github.com/adesmier