About this site
Site Features & Credits
- Colors and syntax highlighting with Solarized
- Crisp equations rendered in Mathjax
- Reproducible code execution with knitr
- CSS based on twitter bootstrap
- Static site generation with Jekyll
- Twitter, Mendeley & Github custom plugins
- Carbon-neutral site hosting by Dreamhost
- Source code hosting on Github
Notebook Archiving & Data Management
The lab notebook is written and maintained in plain text (UTF-8) using markdown. All files are kept in a version managed repository system using git, which provides unique SHA hashes to protect against corruption. Synchronized backups of the git repository are maintained on both local and remote servers (RAID 6) to protect against hardware failures, as well as on the public international software repository, Github github.com/cboettig. Version history preserves a time-line of changes and protects against user error. Archival copies of notebook entries shall be published annually to figshare where they will be assigned DOIs and preserved by the CLOCKSS geopolitically distributed 12 node global archive.
Building from source
This site is built by Jekyll, a static site generator which creates html pages from markdown files. Here are the instructions for building the site from source, based on my Ubuntu 12.04 platform. Feel free to adapt this configuration to your own needs.
Clone the site source-code from github:
git clone https://github.com/cboettig/labnotebook.git
Install Ruby version >= 1.9
sudo apt-get install ruby1.9.1-full
Make sure the latest version is selected
sudo update-alternatives --config ruby sudo update-alternatives --config gem
Install Jekyll and the dependencies needed for a few plugins.
sudo gem install jekyll redcarpet2 feedzirra nokogiri twitter octokit pandoc-ruby
In the root directory of the project, run
jekyll --server, if successfull, after a few seconds the site should be available by pointing your browser to
localhost:4000. The additional gems are required for various plugins; see below for more information. Due to these additional requirements, this site cannot be automatically rendered on Github's pages. Compile the site locally and copy the html files in
_site to the
gh-pages branch of a Github repository for Github-based hosting.
The site relies on following additional ruby gems (not available on the Jekyll copy provided on Github's gh-pages) to compile successfully.
- redcarpet2 -- Providing support for Github-flavored markdown
- feedzirra -- Grab and format rss feed information
- nokogiri -- parse HTML and XML
- twitter Ruby bindings to the Twitter API
- octokit Ruby bindings to the Github API
- pandoc-ruby Ruby implementation of pandoc markdown interpreter (an alternative to redcarpet2)
Third Party Plugins
Plugins are provided in the site source, so cloning this repository will give you a copy of them. In addition to my own plugins, I'd like to credit other developers for the following plugins:
All original content is licensed by Carl Boettiger under the Creative Commons Zero license, CC0. This license is uniquely appropriate for data, code, and written content, and facilitates distribution & reuse. Attribution or citation are appreciated where appropriate as proper scholarly practice. (Newton, Darwin, and Shakespeare are similarly in the public domain, but no less cited for it). Please cite or attribute this work as: