Public sources for https://blue.cse.buffalo.edu
JavaScript HTML CSS Shell Makefile
Latest commit 99d048d Oct 22, 2016 @gchallen gchallen Small typo.
Permalink
Failed to load latest commit information.
hooks Tabs instead of spaces. Jul 6, 2016
layouts Done. Oct 22, 2016
lib CV changes. Linking fix. Oct 11, 2016
src Small typo. Oct 22, 2016
.gitignore Remove contact. Apr 3, 2016
Makefile Fixes. Aug 4, 2016
README.adoc fix port inconsistent with Makefile: 8080 -> 8081 Apr 4, 2016
TODO.adoc Try deploy. Feb 24, 2016
package.json Updating linkcheck. Aug 1, 2016

README.adoc

blue Group Website Sources

Installing and Building

  1. Install node.js and npm, the node package manager.

    • I suggest you use nvm (the node version manager) or install node.js from source on Ubuntu. The apt-get packages are fairly old.

  2. Complete your group GitLab registration, update your profile and add an SSH key

  3. git clone git@blue.cse.buffalo.edu:blue/www.git. If this doesn’t work, you probably don’t have a key installed. Return to Step 2.

  4. cd www; make run

    • The first time this will take some time since npm install is running and performing some local compilation. Note that you also need ImageMagick installed locally to build the node packages. sudo apt-get install libmagick++-dev does the trick on Ubuntu 14.04.

  5. Open localhost:8081

  6. When you edit, rerun make and the site will be rebuilt

    • I suggest a three terminal environment, possibly using screen: (1) to run make run (and let the webserver run), (2) to edit and (3) to rerun make after changing things.

Adding a Profile

  1. cd src/people/<your @buffalo email address>

  2. Edit bio.adoc which is in AsciiDoc format. Here’s a bit of mine as an example:

    ---
    name: Geoffrey Challen
    role: Assistant Professor
    slug: gwa
    joined: 2011-08-29
    scholar: http://scholar.google.com/citations?user=VS9wzBsAAAAJ&hl=en
    linkedin: https://www.linkedin.com/pub/geoffrey-challen/1a/b77/572
    spelling_exceptions:
    - Chuchu
    - Xyz
    - Ziz
    ---
    [.lead]
    I'm an Assistant Professor at the http://www.buffalo.edu[University at
    Buffalo], where I lead the link:/[blue Systems Research Group] and also
    direct the http://www.phone-lab.org[PhoneLab].
  3. The first part of the file (between the "---"s) is YAML front matter which is used to declare attributes. The rest is AsciiDoc text which defines the page content.

  4. The first graph of your bio is used as the snippet on the people page and should be marked [.lead]; the rest appears on your full bio.

  5. Please add a square-ish headshot photo in your directory as photo.jpg. Don’t worry too much about the file size or dimensions—the build script automatically creates files that are the right size for the large bootstrap layout. (But don’t add something huge.)

  6. Other things to add (see mine for examples):

    • You can add a CV as CV.pdf in your profile directory and it will be automatically linked

    • LinkedIn (in YAML front matter)

    • Google Scholar (in YAML front matter)

    • GitHub (in YAML front matter)

Deploying

  1. make runs several sets of build-time checks

    • Broken links by metalsmith-linkcheck. Broken external links will not fail the build; broken internal links will.

    • Formatting checks by metalsmith-formatcheck. Format failures will fail the build, but I doubt you’ll be changing the format much.

    • Spelling checks by metalsmith-spellcheck. Spelling failures will halt the build.

    • I maintain all three of these Metalsmith plugins, so if you find bugs let me know.

  2. If the build doesn’t complete, fix the problems and rerun make. Don’t commit until the build completes.

  3. Please check the links_failed.json file if it complains. Sometimes external broken links are a transient problem, but at least check to make sure that you understand what is failing.

  4. To add spelling exceptions see the documentation for metalsmith-spellcheck. There are a bunch of ways to do this depending on the word that is being marked as misspelled.

  5. Commit your changes to master.

  6. Merge and push to deploy. During the push to deploy the site will be rebuilt on blue.cse.buffalo.edu. If it fails your push will be rejected and you will be asked to fix the changes and try again.

TODOs

  • Generate Bibtex references for papers

  • GitHub links for projects

  • Update all content

  • Add proposal paper links