Giter Site home page Giter Site logo

sbryngelson / academic-website-template Goto Github PK

View Code? Open in Web Editor NEW
216.0 3.0 294.0 255.73 MB

Jekyll website template for personal academic or research group web pages.

License: MIT License

HTML 2.76% TeX 0.64% Shell 0.36% Ruby 0.42% SCSS 78.24% JavaScript 17.58%
jekyll github-pages academic-website template research-website static-site

academic-website-template's Introduction

A website template for academics

Users

Some users:

If you are using this template, feel free to share your site with me, and I'll add it here!

Introduction

This is a statically-generated Jekyll/Liquid/Bootstrap-based website template for academics. I started with the Allan lab webpage and modified it into a personal academic webpage that met my requirements. I worked in a unique set of the features that I desired and could not find in publicly available templates elsewhere. Some examples are:

  • Automatically generated buttons for DOI/PDF/ARXIV/BIB/Abstract information
    • via Jekyll Scholar
  • Bibliography information and abstracts open in drown-down wells via buttons
  • Fontawesome icons (email, CV, Google Scholar, ResearchGate, GitHub, etc.)
  • Dark color scheme via Bootswatch
  • Consistent and attractive About me page

I encourage using this webpage as a template for your academic website. The remainder of this document describes how to do this. Broadly speaking, there are three steps:

Fork and build

  • Fork this repository by clicking the fork button in the top-right corner of its Github page.
  • Install Jekyll (version less than 4.0 required) on your local computer
    • On MacOS, you will need to upgrade your Ruby version from the depricated v2.3 that is shipped. Follow the above Jekyll instructions closely.
  • Run $ bundle exec jekyll serve in the repository root directory
  • Your site is now hosted locally at localhost:4000, which you can access with your web browser.
    • It will be automatically rebuilt as you save changes to the files it contains. Refreshing your web browser reveals these changes.

Note:

  • This webpage uses Jekyll plugins like Jekyll Scholar to automatically build your bibliography. If you are using GitHub pages, you will have to build the site with the Rakefile in the root directory of the source branch. You can do so by first modifying the file as appropriate and then, after pushing your changes, execute rake publish.

Customization

  • Modify _config.yml as appropriate
  • Modify YAML database files, located in _data/*.yml, as appropriate
  • Modify individual pages, located in _pages/*.md, as appropriate

Navbar

The pages in the top navbar are in the _config.yml file. The typical options are already included or commented on, though additional pages can be created and listed here.

Creating or editing pages

All pages are located in the _pages directory. Pages generally load information from YAML databases located as _data/*.yml. Creating new pages can be done by using existing pages as a template.

Page header information

All pages require header information. Example header data for the 'Talks' page is below.

---
title: "Talks"
layout: gridlay
sitemap: false
permalink: /talks/
---

The layout variable corresponds to HTML layouts in the _layouts directory. The difference between most layouts is subtle, and gridlay can generally be used. The permalink must be unique for each page and correspond to the directory storing the page in the compiled HTML. Refer to your pages in _config.yml via the title variable.

Markdown

All pages are written in Markdown as *.md. HTML commands and CSS styles can be directly used in a markdown files.

Publication page and database

The publications and talks are now listed via Jekyll Scholar. The bibliography file ref.bib is located in the assets/ directory. Modify according to your needs.

Hosting

Once your site has been modified to fit your needs, you should host it somewhere so others can access it.

Github pages

A simple way to host your site for free is via Github Pages. This will provide you with a free domain name at your_github_username.github.io. Instructions on how to do this are available on their page. They generally involve creating a repository on your Github titled your_github_username.github.io and uploading your files there (everything except the _site/ directory, which the GitHub Pages service will generate using its own version of Jekyll). Then, GitHub will automatically rebuild your site every time you push a commit to the repository (no bundle/Jekyll commands required).

Custom domain names

You can use a standard domain service (e.g. GoDaddy) to purchase a domain name. Then, using the CNAME file and modifying the DNS settings of the domain service, you can direct your custom domain to the GitHub Pages-generated site. Detailed instructions for doing this for GoDaddy domains are available here, though analogous instructions apply to other services.

Hosting elsewhere

If you already have a hosting service for a static HTML webpage, such as some universities provide, you can build your website locally using bundle exec jekyll serve. Then, upload the resulting files to this server via SSH or FTP via the _site/ directory. Be sure that the site.url and site.baseurl are set appropriately in the _config.yml file.

Alternatives

Static website generators

A list of static webpage generators is available here. For academic purposes, I believe most people use Jekyll or Hugo. I am mostly unaware of their relative merits. However, both are relatively easy to use and offer many templates to base your ideas off of. This, in combination with their large user bases, makes them particularly attractive. This site is built with Jekyll.

Templates

Other Jekyll templates are, of course, available. Some of these are viable for very simple academic pages with little tuning:

However, they do not natively include many of the features I list at the top. For this reason, I decided to construct my own.

Acknowledgment

I credit the Allen Lab for creating a beautiful academic research group webpage. Many parts of this site were adopted or copied from their laboratory webpage.

License

MIT

academic-website-template's People

Contributors

dependabot[bot] avatar sbryngelson avatar sliao7 avatar wilfonba avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

academic-website-template's Issues

Remove (me) Spencer!

I need to remove Spencer-specific details from the repo and replace them with placeholders to make this an appropriate template.

Trying to change font and background colour

Hello,

I'm attempting to modify the font and background colors, but they keep reverting back to the default colors automatically. Could you please suggest a solution to overcome this issue? Thank you in advance.

Unable to deploy successfully, github pages does not support jekyll scholar plugin.

Thank you so much for this beautiful template! I have my site all set up (based somewhat off of your group's site and it runs locally just fine, but the GH Pages deployment is breaking because it doesn't recognize the bibliography command, which is because jekyll-scholar isn't in GitHub's supported plugins. I tried a bunch of solutions to this that I found in a number of places, but haven't quite gotten it working (the closest attempt did publish the site, but seemed to just be "raw" HTML (without css).

I'm really not an expert in this stuff. Can you tell me in detail how to deploy this blog on github pages?
Thanks a million!

Works locally, but fails when on github: bibliography issue

Hi! Thank you very much for your beautiful template! I have just have an issue with the hosting part. Everything looks fine on my local machine, but when I push my commit to my repo, it gives the following error:

Liquid Exception: Liquid syntax error (line 13): Unknown tag 'bibliography' in _pages/publications.md

I also have the main branch, so it shouldn't be related to that I guess. Thanks a lot for your help!

jekyll-scholar breaking build

Thank you so much for this beautiful template! I have my site all set up (based somewhat off of your group's site and it runs locally just fine, but the "vanilla" GH Pages deployment is breaking because it doesn't recognize the bibliography command, which seems to be because jekyll-scholar isn't in GitHub's supported plugins. I tried a bunch of solutions to this that I found in a number of places, but haven't quite gotten it working (the closest attempt did publish the site, but seemed to just be "raw" HTML (i.e. black text on a white background, so all the CSS was being ignored maybe?).

I'm really not an expert in this stuff, but it seems like you're possibly getting around this via something similar to the approach suggested in the first paragraph here, but I infer this only from the presence of a Rakefile – what I can see on the Actions history on your group site suggests that Jekyll is in fact building the site, and that seems a lot easier, so if there's in fact some way to achieve that that I haven't figured out, that would be amazing.

Hope this all makes sense...thanks again!!

"Abstract" and "BIB" buttons (in Publications) do NOT work, if the BibTeX entry key contains a column

If (e.g.) the sample entry in ref.bib is changed from

@article{feynman1939forces,

to

@article{feynman:1939forces,

then the "Abstract" and "BIB" buttons (in Publications) do not work for that entry.
It is relevant as that style is often default (e.g.) by BiBDesk and other software to handle .bib files.

P.S. Thanks for this terrific template!!!!!!!!!!!!!!!!!!!!!!!!!!

P.P.S. In the README.md, it is written than ref.bin is in /cv. Instead it should go in /assets/ (according to the current _config.yml data provided).

Issue happened when Kramdown parses about.md

Hi Spencer,

Thank you so much for providing such beautiful and convenient template. I got the following error while I ran bundle exec jekyll serve. Do you have any ideas about it? Thanks

Conversion error: Jekyll::Converters::Markdown encountered an error while converting '_pages/about.md':
                    uninitialized constant Kramdown::Utils::OrderedHash

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.