Command-line instructions
git clone future-address-here
cd
(navigate) into the repobundle install
to load gemsbundle exec jekyll serve
to spin the site up locallyAlternatively after you've set up the project, you can use the command shortcuts in the Rakefile
to save yourself some typing:
Command | Description |
---|---|
rake dev |
Starts Jekyll locally |
rake build |
Run the Jekyll build process locally |
main
branch.main
branch will trigger a new build.This project assumes that:
which ruby
will tell you if and where Ruby has been installed on your machine.ruby --version
will give you the version of Ruby installed.bundle install
:baseurl
has been set in the _config.yml
file, you'll need to make sure that there is a trailing slash.http://127.0.0.1:4000/nccs/
instead of http://127.0.0.1:4000/nccs
Each content type (Datasets, Resources, Stories) has it's own readme.md
file documenting the fields accepted for each type. Many of the fields are shared across all three, and any unique fields have been called out.
The author and citation fields have been built to follow the Quarto Citation formats.
The simplest version of the citation is to set it as:
citation: true
Which will cause all default fields to be used. But for customization, refer to the following fields:
author
- {Array} - Used in citation and author informationid
- {String} (Preferred) uses the id of an author defined in _data/people.yml
to populate fields.name
- {String} (Override) If no id
, this field can provide an override that works to show in the author section AND citation information for the specified author. However, this will not correctly format the citation in the Chicago Author-Date style if this is the first listed author. See citation.author
bio
- {String} (Override) Allows override of bio section. Useful if the author is not in _data/people.yml
.citation
- {Array}author
- {String} (Override) Will override all author
fields and allow custom formatting. Intended for use if authors are not in the _data/people.yml
file.container-title
- {String} Title of publication. If left blank, it will revert to the site name in _config.yml
volume
- {Number} Volume of publicationnumber
- {Number} Number of publicationcitationData
- {Date}This project makes affordance for using Quarto to develop content. Currently the use of Quarto is only supported in _stories
collection.
To use Quarto:
_stories
directory.qmd
file neededgit
and push up to the project.The project settings will take care of the rest!
(Note: Github Pages will be set to pull from a specific branch. Make sure to either change the branch it's looking at to the one you're pushing changes to.)
_quarto.yml
in the repo root sets YAML defaults and is recognized by RStudio.qmd
file and preserves all YAML headers.qmd
files, recognizes the .md
file in _stories
and renders it to HTML, using all the appropriate templates (header, footer, etc)_stories
, including generated diagrams, etc.extract-media
field in _quarto.yml
prepends any direct links to look for the copied assets from step 4.Here's another view of what's going on:
flowchart TD
A[REPO] --> B(Quarto) --> |Rstudio Render + _quarto.yml| C(Markdown)
Q[_quarto.yml] --> B
A --> D(Liquid) --> G(Jekyll)
A --> E(SCSS) --> G
A --> C(Markdown) --> G
A --> F(Templates/Partials) --> G
G --> H(HTML, CSS, JS) --> |git| I([Github Pages])
The best way to preview the content is to have Jekyll running in development mode (See Development).
With the dev server up and a browser window open to the dev url (something like http://http://127.0.0.1:4000/nccs/
) navigate to stories and find your new entry.
Once you're on that URL, anytime you hit 'Render' from Rstudio, Jekyll will recompile the .md
and show updates. (It should automatically refresh, if not you can manually refresh to show the changes.)