Skip to content
Prashant Kumar Kuntala edited this page Aug 4, 2020 · 2 revisions

Pugh Lab Website at Cornell

pughlaboratory.org

Jekyll is a static site generator. You give it text written in your favorite markup language and it uses layouts to create a static website. You can tweak how you want the site URLs to look, what data gets displayed on the site, and more.

This website is built on jekyll, a static site generator. Technically jekyll is a Ruby gem.

Requirements

  • You need to be part of the CEGRcode organization on GitHub.
  • You need to install the recommended version of Ruby on your machine.
  • Follow this documentation to install Ruby specific to your operating system.
  • Learn Jekyll before making any updates. Quick Tutorial - takes about 1hr to complete, very concise and straight forward.

As you are part of the organization on Github, you don't need to fork this repo, just clone and create a branch with your initials. Here is a good git branching and merging strategy, to keep the master clean and error free. Git Branching. Pushing or merging code into the master branch will automatically build and deploy your latest changes. It takes couple of minutes to see the changes go live.

This website uses SASS to maintain stylesheets. You can add your styles to _sass/main.scss. Learning some basic SASS syntax is helpful in the long run as the website matures and if and when you have to deal with issues arising from compatibility across browsers. Sass Basics

Sass (Syntactically Awesome Style Sheets) is the most mature, stable, and powerful professional grade CSS extension language in the world.


Website update workflow

  • git clone https://github.com/CEGRcode/cegrcode.github.io.git
  • Make your changes
  • git status
  • git add .
  • git commit -m "<your commit message goes here>"
  • git push

If you would like to have branches for each contributor, review and merge cycle for updates. I recommend reading this Git Branching strategy. This website has the full capabilities to be extended into a Lab blog, either technical or science. Refer to the Jekyll documentation to add pages or create content. Jekyll also has a huge community with plugins to do most of the things you can think of, find some useful reference links at the bottom of this page.


DNS details

Github pages allows us to use custom domains for the websites that are being hosted through Github. This particular domain name is provided by Google domains. Here are the docs that was used to configure the DNS settings through Google domains admin portal. Adding the A-records corresponding to the Github pages servers. CNAME file is created once the settings for this repo is changed.


Assets resource location
Fonts Google fonts
Icons Fontawesome (vr 5.11.2)
Colors Cornell's Branding
Branding guidelines Cornell Brand Center
Jekyll Quick Reference
Variables
Tags
Liquid Filters
Plugins
Clone this wiki locally