ato-neulab / Lab-Website

A static website made with Jekyll for the ATo Lab, a multidisciplinary research lab at Northeastern University working at the intersections of human-computer interaction, games, and social justice.
https://lab.alexandrato.com/
0 stars 2 forks source link

ATo Lab Website

A static website made with Jekyll for the ATo Lab, a multidisciplinary research lab at Northeastern University working at the intersections of human-computer interaction, games, and social justice.

Tech Stack

Namecheap - Domain Hosting

GitHub Pages - Deployment, Serving

Jekyll (HTML, Sass, Bootstrap, Liquid) - Implementation

Figma - Design Prototype

Midjourney - Image Generation, Mockups

Realtime Colors - Color Palette

Process:

  1. Decide on a means of implementation: Jekyll Static Site Generator
  2. Setup GitHub pages repository
  3. Connect lab.alexandrato.com subdomain to GitHub Pages
  4. Use Realtime Colors to decide on a palette
  5. Use Midjourney to generate mockups to take inspiration from
  6. Design prototype in Figma
  7. Cropped headshot image files using Photoshop
  8. Implement prototype using Jekyll
  9. Write documentation explaining how it works and how to update

How it works

Jekyll is a static site generator (SSG)

At a high level, a static site generator is a tool that produces a fully static website based on raw data and templates.

  1. Data : This can be your blog posts, images, information about you or your company, and so on. This data can be stored in various forms, such as text files, Markdown files, or even data files like JSON or YAML.
  2. Templates : These are structures or blueprints that define how your site should look. They can be in HTML, CSS, and JavaScript. The templates specify where and how to display your data.

When you run the static site generator, it takes each piece of data, puts it into a template, and then generates a corresponding static HTML file.

The data and templates to be converted into static web pages are defined by the file structure of the website. The most relevant files and folders are:

For more information about how Jekyll works, check its documentation.

How to update

Workflows for different objectives

Assumes you know how to use GitHub well enough to be able to change files, make commits, etc. If not, this link is a good place to start learning the basics of GitHub.

How to create a new page

  1. Create a new .md or .html file in the root directory
  2. Add front matter so Jekyll knows to compile it
    1. Set layout to wrapper.
      1. Ensures all the prerequisites for the site get loaded in the page you're making. It's almost always recommended you do this, unless you really know what you're doing.
    2. Set title to whatever you want your title to be
  3. Write whatever content you want

How to edit, add, or remove someone on the People page

  1. Navigate to /_data/people.yml
  2. Edit, add, or delete content
    1. To change someone's picture:
      1. Crop the image to 1:1 aspect ratio (important for maintaining format of polaroids)
      2. Add image file to /assets/images/headshots/
      3. In people.yml, change headshot field to filename of image (including the suffix)

How to edit the text sections

  1. Navigate to /_includes/text-content/
  2. Edit file of your choosing
    1. Do not remove any tags (ie: \<p>,\<h1>), just edit the text in between