-
Notifications
You must be signed in to change notification settings - Fork 317
Get Started
To set up the basics of your site, follow these one-time instructions.
- Make a GitHub account
- Start your copy of this template in one of two ways:
-
Create a new repo from this template under your account with the button (leave
Include all branches
unchecked), if you want a fresh copy of the template and a clean break - Make a fork of this repo under your account with the button, if you want to more easily update your template version and you're okay with having the the development of this template in your commit history
-
Create a new repo from this template under your account with the button (leave
-
Name your repo something like
your-lab-website
to avoid confusion with the template itself - Enable GitHub Actions on your repo to allow automatic citations
-
Enable GitHub Pages on your repo with the default settings (
main
and/root
) - Set up your site's url
- Your site should be live!
There are a few choices you have for where your live site appears. Choose which example url below you like best and follow the given one-time instructions.
https://your-lab.github.io/your-lab-website
(a "GitHub project site")
The simplest option. This is what you'll have by default after enabling GitHub Pages (if you didn't configure anything else).
- Set the
baseurl
field in your site configuration to/your-lab-website
(whereyour-lab-website
is what you named your repo) - Publish the changes.
https://your-lab.github.io/
(a "GitHub user/organization site")
A cleaner url, but you must name your repo specifically.
-
Rename your repo to
your-lab.github.io
(whereyour-lab
is your GitHub user or organization name) per GitHub requirements - Set the
baseurl
field in your site configuration to""
- Publish the changes.
https://your-lab.com/
(a custom url/domain)
The best option, if you can afford it.
It looks professional, it's easier to remember, and it's easy and cheap to set up (.com
s are usually only about $10 per year).
- Follow the instructions here.
In summary:
- Purchase a domain name from a reputable service
- Point your domain name provider to GitHub Pages using an
A
record. This is slightly different for each company; they should have their own instructions on how to do it. - Set the
custom domain
field in the settings of your repo (creates aCNAME
file)
- Set the
baseurl
field in your site configuration to""
- Publish the changes.
When you or someone on your team wants to make changes to your website, you'll likely want a convenient way to 👁️ preview and ✏️ review the changes before publishing them. To set this up, follow these one-time instructions.
- Make a Netlify account
- Hook up Netlify to your website repo
- Set the site's
Publish directory
to_site/
- Set the site's
Build command
tosed -i 's/baseurl:.*/baseurl: ""/' _config.yaml && jekyll build
-
Set the deploy notifications you want.
A bunch are enabled by default.
We recommend deleting them all, then adding just:
GitHub commit status → Deploy Preview succeeded
GitHub commit status → Deploy Preview failed
GitHub pull request comment → Deploy Preview succeeded
GitHub pull request comment → Deploy Preview failed
Now, when you open or update a pull request on GitHub with any of the workflows below, Netlify will post a comment on it with a link to the preview.
It will also put a check/status on the pull request that shows a big red warning if the changes cause the site to fail to compile for some reason. You can use this to prevent merging/publishing when the changes fail.
First, find the items you need to edit to make the changes you want. Then, choose the workflow that best suits you:
- Edit an item through the GitHub website interface
- Choose "Commit directly to the
main
branch" to publish your changes immediately, OR choose "create a new branch and start a pull request" to preview your changes before merging and publishing them
This workflow is the easiest and requires no installation, but only allows changing 1 file at a time and usually isn't as nice as working in a good text editor that has syntax highlighting, more advanced controls, etc.
- Install Git
- Decide how you'll be making changes:
- Make changes directly to the
main
branch of your website repo (publishes changes immediately) - Make changes to another branch (e.g.
add-sarah-bio
) of your website repo (allows previewing changes before publishing) - Make changes to a fork of your website repo (allows previewing changes before publishing)
- Make changes directly to the
- If you're using a fork, enable GitHub actions on the FORK, BEFORE opening the pull request, otherwise automatic citations might not work
- Clone the repo to your computer
- Edit the cloned site on your computer with your favorite text editor
- Commit and push the changes with Git
- If working from a branch or fork, make a pull request to your main website repo, preview the changes, and merge when ready to publish
This approach requires installing and experience with Git, but is usually easier for larger edits.
Here's how to update your site to the latest version of the template.
If your repo says generated from greenelab/lab-website-template
, see this post about pulling upstream changes from a template repository.
Requires manually resolving merge conflicts.
If your repo says forked from greenelab/lab-website-template
, see this article about syncing a fork.
Allows automatic merging, though occasionally a few items will still need to be resolved manually.
✨ The documentation for v1.0.0
and above are now at https://greene-lab.gitbook.io/lab-website-template-docs.