Update site dir with contents of #583 at rev cb19367.

This is the big site redesign by @cobyism. To work with the new
site deployment mechanism, it is being copied from the gh-pages
branch of that PR into the existing site dir. Before we finally
deploy the new site, we should remember to merge #583 so that we
keep all the history from that PR.
This commit is contained in:
Tom Preston-Werner 2012-12-31 12:48:04 -08:00
parent 62c8ba089a
commit cc73f04eb7
51 changed files with 5104 additions and 121 deletions

4
site/.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
_site/
*.swp
pkg/
test/

View File

@ -1,2 +1,5 @@
auto: true
auto: false
server: true
permalink: /docs/:categories/:title
pygments: true
gauges_id: 503c5af6613f5d0f19000027

View File

@ -0,0 +1,32 @@
{% if site.gauges_id %}
<!-- Gauges (http://gaug.es/) -->
<script type="text/javascript">
var _gauges = _gauges || [];
(function() {
var t = document.createElement('script');
t.type = 'text/javascript';
t.async = true;
t.id = 'gauges-tracker';
t.setAttribute('data-site-id', '{{ site.gauges_id }}');
t.src = '//secure.gaug.es/track.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(t, s);
})();
</script>
{% endif %}
{% if site.google_analytics_id %}
<!-- Google Analytics (http://google.com/analytics) -->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', '{{ site.google_analytics_id }}']);
_gaq.push(['_setDomainName', '{{ site.url }}']); // Multiple sub-domains
_gaq.push(['_setAllowLinker', true]); // Multiple TLDs
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
{% endif %}

View File

@ -0,0 +1,82 @@
<div class="grid2">
<aside>
<h4>Getting Started</h4>
<ul>
<li class="{% if page.title == "Welcome" %}current{% endif %}">
<a href="{{ site.url }}/docs/home">Welcome</a>
</li>
<li class="{% if page.title == "Installation" %}current{% endif %}">
<a href="{{ site.url }}/docs/installation">Installation</a>
</li>
<li class="{% if page.title == "Basic Usage" %}current{% endif %}">
<a href="{{ site.url }}/docs/usage">Basic Usage</a>
</li>
<li class="{% if page.title == "Directory structure" %}current{% endif %}">
<a href="{{ site.url }}/docs/structure">Directory structure</a>
</li>
<li class="{% if page.title == "Configuration" %}current{% endif %}">
<a href="{{ site.url }}/docs/configuration">Configuration</a>
</li>
</ul>
<h4>Your Content</h4>
<ul>
<li class="{% if page.title == "Front-matter" %}current{% endif %}">
<a href="{{ site.url }}/docs/frontmatter">Front-matter</a>
</li>
<li class="{% if page.title == "Writing posts" %}current{% endif %}">
<a href="{{ site.url }}/docs/posts">Writing posts</a>
</li>
<li class="{% if page.title == "Creating pages" %}current{% endif %}">
<a href="{{ site.url }}/docs/pages">Creating pages</a>
</li>
<li class="{% if page.title == "Variables" %}current{% endif %}">
<a href="{{ site.url }}/docs/variables">Variables</a>
</li>
<li class="{% if page.title == "Blog migrations" %}current{% endif %}">
<a href="{{ site.url }}/docs/migrations">Blog migrations</a>
</li>
</ul>
<h4>Customization</h4>
<ul>
<li class="{% if page.title == "Templates" %}current{% endif %}">
<a href="{{ site.url }}/docs/templates">Templates</a>
</li>
<li class="{% if page.title == "Permalinks" %}current{% endif %}">
<a href="{{ site.url }}/docs/permalinks">Permalinks</a>
</li>
<li class="{% if page.title == "Pagination" %}current{% endif %}">
<a href="{{ site.url }}/docs/pagination">Pagination</a>
</li>
<li class="{% if page.title == "Plugins" %}current{% endif %}">
<a href="{{ site.url }}/docs/plugins">Plugins</a>
</li>
<li class="{% if page.title == "Extras" %}current{% endif %}">
<a href="{{ site.url }}/docs/extras">Extras</a>
</li>
</ul>
<h4>Deployment</h4>
<ul>
<li class="{% if page.title == "GitHub Pages" %}current{% endif %}">
<a href="{{ site.url }}/docs/github-pages">GitHub Pages</a>
</li>
<li class="{% if page.title == "Deployment methods" %}current{% endif %}">
<a href="{{ site.url }}/docs/deployment-methods">Other methods</a>
</li>
</ul>
<h4>Miscellaneous</h4>
<ul>
<li class="{% if page.title == "Contributing" %}current{% endif %}">
<a href="{{ site.url }}/docs/contributing">Contributing</a>
</li>
<li class="{% if page.title == "Troubleshooting" %}current{% endif %}">
<a href="{{ site.url }}/docs/troubleshooting">Troubleshooting</a>
</li>
<li class="{% if page.title == "Sites using Jekyll" %}current{% endif %}">
<a href="{{ site.url }}/docs/sites">Sites using Jekyll</a>
</li>
<li class="{% if page.title == "Resources" %}current{% endif %}">
<a href="{{ site.url }}/docs/resources">Resources</a>
</li>
</ul>
</aside>
</div>

View File

@ -0,0 +1,15 @@
<footer>
<div class="content">
<div class="grid4 first">
<p>By <a href="http://tom.preston-werner.com">Tom Preston-Werner</a>, <a href="http://quaran.to/">Nick Quaranto</a>, and many more <a href="https://github.com/mojombo/jekyll/graphs/contributors">awesome contributors</a>.</p>
</div>
<div class="grid8 align-right">
<p>Proudly hosted by</p>
<a href="https://github.com">
<img src="{{ site.url }}/img/footer-logo.png" alt="GitHub • Social coding">
</a>
</div>
<div class="clear"></div>
</div>
</footer>
<div class="clear"></div>

View File

@ -0,0 +1,26 @@
<header>
<div class="content">
<div class="grid3 first">
<h1>
<a href="{{ site.url }}/">
<span>Jekyll</span>
<img src="{{ site.url }}/img/logo-2x.png" width="249px" height="115px" alt="">
</a>
</h1>
</div>
<nav class="grid6">
<ul>
<li {% if page.overview %}class="current"{% endif %}>
<a href="{{ site.url }}/">Overview</a>
</li>
<li {% unless page.overview %}class="current"{% endunless %}>
<a href="{{ site.url }}/docs">Documentation</a>
</li>
<li class="">
<a href="https://github.com/mojombo/jekyll">View on GitHub</a>
</li>
</ul>
</nav>
<div class="clear"></div>
</div>
</header>

View File

@ -0,0 +1,22 @@
<div class="section-nav">
<div class="left align-right">
{% if page.prev_section != null %}
<a href="{{ site.url }}/docs/{{ page.prev_section }}" class="prev">
Back
</a>
{% else %}
<span class="prev disabled">Back</span>
{% endif %}
</div>
<div class="right align-left">
{% if page.next_section != null %}
<a href="{{ site.url }}/docs/{{ page.next_section }}" class="next">
Next
</a>
{% else %}
<span class="next disabled">Next</span>
{% endif %}
</div>
<div class="clear"></div>
</div>

14
site/_includes/top.html Normal file
View File

@ -0,0 +1,14 @@
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>{{ page.title }}</title>
<link href='http://fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic' rel='stylesheet' type='text/css'>
<link href='http://fonts.googleapis.com/css?family=Arizonia' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="{{ site.url }}/css/normalize.css" />
<link rel="stylesheet" href="{{ site.url }}/css/grid.css" />
<link rel="stylesheet" href="{{ site.url }}/css/style.css" />
<link rel="stylesheet" href="{{ site.url }}/css/pygments.css" />
<link rel="icon" type="image/x-icon" href="{{ site.url }}/favicon.png" />
<script src="{{ site.url }}/js/modernizr-2.5.3.min.js"></script>
</head>

View File

@ -0,0 +1,12 @@
{% include top.html %}
<body>
{% include header.html %}
{{ content }}
{% include footer.html %}
{% include analytics.html %}
</body>
</html>

21
site/_layouts/docs.html Normal file
View File

@ -0,0 +1,21 @@
---
layout: default
---
<section class="docs">
<div class="content">
<div class="grid10 first">
<article>
<h1>{{ page.title }}</h1>
{{ content }}
{% include section_nav.html %}
</article>
</div>
{% include docs_contents.html %}
<div class="clear"></div>
</div>
</section>

View File

@ -0,0 +1,250 @@
---
layout: docs
title: Configuration
prev_section: structure
next_section: frontmatter
---
Jekyll allows you to concoct your sites in any way you can dream up, and its thanks to the powerful and flexible configuration options that this is possible. These options can either be specified in a `_config.yml` file placed in your sites root directory, or can be specified as flags for the `jekyll` executable in the terminal.
## Configuration Settings
The table below lists the available settings for Jekyll, and the various <code class="option">options</code> (specifed in the configuration file) and <code class="flag">flags</code> (specified on the command-line) that control them.
<table>
<thead>
<tr>
<th>Setting</th>
<th><span class="option">Options</span> and <span class="flag">Flags</span></th>
</tr>
</thead>
<tbody>
<tr class='setting'>
<td>
<p class='name'><strong>Safe</strong></p>
<p class='description'>Disables <a href="../plugins">custom plugins</a>.</p>
</td>
<td class="align-center">
<p><code class="option">safe: [boolean]</code></p>
<p><code class="flag">--safe</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Regeneration</strong></p>
<p class='description'>Enables or disables Jekyll from recreating the site when files are modified.</p>
</td>
<td class="align-center">
<p><code class="option">auto: [boolean]</code></p>
<p><code class="flag">--auto</code></p>
<p><code class="flag">--no-auto</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Local Server</strong></p>
<p class='description'>Fires up a server that will host your <code>_site</code> directory</p>
</td>
<td class="align-center">
<p><code class="option">server: [boolean]</code></p>
<p><code class="flag">--server</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Local Server Port</strong></p>
<p class='description'>Changes the port that the Jekyll server will run on</p>
</td>
<td class="align-center">
<p><code class="option">server_port: [integer]</code></p>
<p><code class="flag">--server [port]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Base URL</strong></p>
<p class='description'>Serve website from a given base URL</p>
</td>
<td class="align-center">
<p><code class="option">baseurl: [BASE_URL]</code></p>
<p><code class="flag">--base-url [url]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>URL</strong></p>
<p class='description'>Sets <code>site.url</code>, useful for environment switching</p>
</td>
<td class="align-center">
<p><code class="option">url: [URL]</code></p>
<p><code class="flag">--url [URL]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Site Destination</strong></p>
<p class="description">Changes the directory where Jekyll will write files to</p>
</td>
<td class='align-center'>
<p><code class="option">destination: [dir]</code></p>
<p><code class="flag">jekyll [dest]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Site Source</strong></p>
<p class="description">Changes the directory where Jekyll will look to transform files</p>
</td>
<td class='align-center'>
<p><code class="option">source: [dir]</code></p>
<p><code class="flag">jekyll [source] [dest]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Markdown</strong></p>
<p class="description">Uses RDiscount or <code>[engine]</code> instead of Maruku.</p>
</td>
<td class='align-center'>
<p><code class="option">markdown: [engine]</code></p>
<p><code class="flag">--rdiscount</code></p>
<p><code class="flag">--kramdown</code></p>
<p><code class="flag">--redcarpet</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Pygments</strong></p>
<p class="description">Enables highlight tag with Pygments.</p>
</td>
<td class='align-center'>
<p><code class="option">pygments: [boolean]</code></p>
<p><code class="flag">--pygments</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Future</strong></p>
<p class="description">Publishes posts with a future date</p>
</td>
<td class='align-center'>
<p><code class="option">future: [boolean]</code></p>
<p><code class="flag">--no-future</code></p>
<p><code class="flag">--future</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>LSI</strong></p>
<p class="description">Produces an index for related posts.</p>
</td>
<td class='align-center'>
<p><code class="option">lsi: [boolean]</code></p>
<p><code class="flag">--lsi</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Permalink</strong></p>
<p class="description">Controls the URLs that posts are generated with. Please refer to the <a href="../permalinks">Permalinks</a> page for more info.</p>
</td>
<td class='align-center'>
<p><code class="option">permalink: [style]</code></p>
<p><code class="flag">--permalink=[style]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Pagination</strong></p>
<p class="description">Splits your posts up over multiple subdirectories called "page2", "page3", ... "pageN"</p>
</td>
<td class='align-center'>
<p><code class="option">paginate: [per_page]</code></p>
<p><code class="flag">--paginate [per_page]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Exclude</strong></p>
<p class="description">A list of directories and files to exclude from the conversion</p>
</td>
<td class='align-center'>
<p><code class="option">exclude: [dir1, file1, dir2]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Include</strong></p>
<p class="description">A list of directories and files to specifically include in the conversion. <code>.htaccess</code> is a good example since dotfiles are excluded by default.</p>
</td>
<td class='align-center'>
<p><code class="option">include: [dir1, file1, dir2]</code></p>
</td>
</tr>
<tr class='setting'>
<td>
<p class='name'><strong>Limit Posts</strong></p>
<p class="description">Limits the number of posts to parse and publish</p>
</td>
<td class='align-center'>
<p><code class="option">limit_posts: [max_posts]</code></p>
<p><code class="flag">--limit_posts=[max_posts]</code></p>
</td>
</tr>
</tbody>
</table>
<div class="note warning">
<h5>Do not use tabs in configuration files</h5>
<p>This will either lead to parsing errors, or Jekyll will revert to the default settings. Use spaces instead.</p>
</div>
## Default Configuration
Jekyll runs with the following configuration options by default. Unless alternative settings for these options are explicitly specified in the configuration file or on the command-line, Jekyll will run using these options.
{% highlight yaml %}
safe: false
auto: false
server: false
server_port: 4000
baseurl: /
url: http://localhost:4000
source: .
destination: ./_site
plugins: ./_plugins
future: true
lsi: false
pygments: false
markdown: maruku
permalink: date
maruku:
use_tex: false
use_divs: false
png_engine: blahtex
png_dir: images/latex
png_url: /images/latex
rdiscount:
extensions: []
kramdown:
auto_ids: true,
footnote_nr: 1
entity_output: as_char
toc_levels: 1..6
use_coderay: false
coderay:
coderay_wrap: div
coderay_line_numbers: inline
coderay_line_numbers_start: 1
coderay_tab_width: 4
coderay_bold_every: 10
coderay_css: style
{% endhighlight %}

View File

@ -0,0 +1,66 @@
---
layout: docs
title: Contributing
prev_section: deployment-methods
next_section: troubleshooting
---
Contributions to Jekyll are always welcome, however theres a few things that you should keep in mind to improve your chances of having your changes merged in.
## Workflow
Heres the most typical way to get your change merged into the project:
1. Fork the project [on GitHub](https://github.com/mojombo/jekyll) and clone it down to your local machine.
2. Create a topic branch to contain your change.
3. Hack away, add tests. Not necessarily in that order.
4. Make sure all the existing tests still pass.
5. If necessary, rebase your commits into logical chunks, without errors.
6. Push the branch up to your fork on GitHub.
7. Create an issue on GitHub with a link to your branch.
<div class="note warning">
<h5>Contributions will not be accepted without tests</h5>
<p>If youre creating a small fix or patch to an existing feature, just
a simple test will do.</p>
</div>
## Tests
Were big on tests, so please be sure to include them. Please stay in the confines of the current test suite and use [Shoulda](https://github.com/thoughtbot/shoulda) and [RR](https://github.com/btakita/rr).
### Tests for brand-new features
If its a brand new feature, make sure to create a new [Cucumber](https://github.com/cucumber/cucumber/) feature and reuse steps where appropriate. Also, whipping up some documentation in your forks `gh-pages` branch would be appreciated, so the main website can be updated as soon as your new feature is merged.
### Test dependencies
To run the test suite and build the gem youll need to install Jekylls dependencies. Jekyll uses Bundler, so a quick run of the bundle command and youre all set!
{% highlight bash %}
$ bundle
{% endhighlight %}
Before you start, run the tests and make sure that they pass (to confirm
your environment is configured properly):
{% highlight bash %}
$ rake test
$ rake features
{% endhighlight %}
## Common Gotchas
- If you want to bump the gem version, please put that in a separate
commit. This way, the maintainers can control when the gem gets released.
- Try to keep your patch(es) based from [the latest commit on
mojombo/jekyll](https://github.com/mojombo/jekyll/commits/master). The easier it is to apply your work, the less work
the maintainers have to do, which is always a good thing.
- Please dont tag your GitHub issue with labels like “fix” or “feature”.
The maintainers actively read the issues and will label it once they come
across it.
<div class="note">
<h5>Let us know what could be better!</h5>
<p>Both using and hacking on Jekyll should be fun, simple, and easy, so if for some reason you find its a pain, please <a href="https://github.com/mojombo/jekyll/issues/new">create an issue</a> on GitHub describing your experience so we can make it better.</p>
</div>

View File

@ -0,0 +1,108 @@
---
layout: docs
title: Deployment methods
prev_section: github-pages
next_section: contributing
---
Sites built using Jekyll can be deployed in a large number of ways due to the static nature of the generated output. A few of the most common deployment techniques are described below.
## Web hosting providers (FTP)
Just about any traditional web hosting provider will let you upload files to their servers over FTP. To upload a Jekyll site to a web host using FTP, simply run the `jekyll` command and copy the generated `_site` folder to the root folder of your hosting account. This is most likely to be the `httpdocs` or `public_html` folder on most hosting providers.
### FTP using Glynn
There is a project called [Glynn](https://github.com/dmathieu/glynn), which lets you easily generate your Jekyll powered websites static files and
send them to your host through FTP.
## Self-managed web server
If you have direct access yourself to the deployment web server yourself, the process is essentially the same, except you might have other methods available to you (such as `scp`, or even direct filesystem access) for transferring the files. Just remember to make sure the contents of the generated `_site` folder get placed in the appropriate web root directory for your web server.
## Automated methods
There are also a number of ways to easily automate the deployment of a Jekyll site. If youve got another method that isnt listed below, wed love it if you [contributed](../contributing) so that everyone else can benefit too.
### Git post-update hook
If you store your jekyll site in [Git](http://git-scm.com/) (you are using version control, right?), its pretty easy to automate the
deployment process by setting up a post-update hook in your Git
repository, [like
this](http://web.archive.org/web/20091223025644/http://www.taknado.com/en/2009/03/26/deploying-a-jekyll-generated-site/).
### Git post-receive hook
To have a remote server handle the deploy for you every time you push changes using Git, you can create a user account which has all the public keys that are authorized to deploy in its `authorized_keys` file. With that in place, setting up the post-receive hook is done as follows:
{% highlight bash %}
laptop$ ssh deployer@myserver.com
server$ mkdir myrepo.git
server$ cd myrepo.git
server$ git --bare init
server$ cp hooks/post-receive.sample hooks/post-receive
server$ mkdir /var/www/myrepo
{% endhighlight %}
Next, add the following lines to hooks/post-receive and be sure Jekyll is
installed on the server:
{% highlight bash %}
GIT_REPO=$HOME/myrepo.git
TMP_GIT_CLONE=$HOME/tmp/myrepo
PUBLIC_WWW=/var/www/myrepo
git clone $GIT_REPO $TMP_GIT_CLONE
jekyll --no-auto $TMP_GIT_CLONE $PUBLIC_WWW
rm -Rf $TMP_GIT_CLONE
exit
{% endhighlight %}
Finally, run the following command on any users laptop that needs to be able to
deploy using this hook:
{% highlight bash %}
laptops$ git remote add deploy deployer@myserver.com:~/myrepo.git
{% endhighlight %}
Deploying is now as easy as telling nginx or Apache to look at
`/var/www/myrepo` and running the following:
{% highlight bash %}
laptops$ git push deploy master
{% endhighlight %}
### Rake
Another way to deploy your Jekyll site is to use [Rake](https://github.com/jimweirich/rake), [HighLine](https://github.com/JEG2/highline), and
[Net::SSH](http://net-ssh.rubyforge.org/). A more complex example of deploying Jekyll with Rake that deals with multiple branches can be found in [Git Ready](https://github.com/gitready/gitready/blob/en/Rakefile).
### rsync
Once youve generated the `_site` directory, you can easily rsync it using a `tasks/deploy` shell script similar to [this deploy script here](http://github.com/henrik/henrik.nyh.se/blob/master/tasks/deploy). Youd obviously need to change the values to reflect your sites details. There is even [a matching TextMate command](http://gist.github.com/214959) that will help you run
this script from within Textmate.
## Rack-Jekyll
[Rack-Jekyll](http://github.com/bry4n/rack-jekyll/) is an easy way to deploy your site on any Rack server such as Amazon EC2, Slicehost, Heroku, and so forth. It also can run with [shotgun](http://github.com/rtomakyo/shotgun/), [rackup](http://github.com/rack/rack), [mongrel](http://github.com/mongrel/mongrel), [unicorn](http://github.com/defunkt/unicorn/), and [others](https://github.com/adaoraul/rack-jekyll#readme).
Read [this post](http://blog.crowdint.com/2010/08/02/instant-blog-using-jekyll-and-heroku.html) on how to deploy to Heroku using Rack-Jekyll.
## Jekyll-Admin for Rails
If you want to maintain Jekyll inside your existing Rails app, [Jekyll-Admin](http://github.com/zkarpinski/Jekyll-Admin) contains drop in code to make this possible. See Jekyll-Admins [README](http://github.com/zkarpinski/Jekyll-Admin/blob/master/README) for more details.
## Amazon S3
If you want to host your site in Amazon S3, you can do so with
[jekyll-s3](https://github.com/laurilehmijoki/jekyll-s3) application. It will
push your site to Amazon S3 where it can be served like any web server,
dynamically scaling to almost unlimited traffic. This approach has the
benefit of being about the cheapest hosting option available for
low-volume blogs as you only pay for what you use.
<div class="note">
<h5>ProTip™: Use GitHub Pages for zero-hassle Jekyll hosting</h5>
<p>GitHub Pages are powered by Jekyll behind the scenes, so if youre looking for a zero-hassle, zero-cost solution, GitHub Pages are a great way to <a href="../github-pages">host your Jekyll-powered website for free</a>.</p>
</div>

View File

@ -0,0 +1,103 @@
---
layout: docs
title: Extras
prev_section: plugins
next_section: github-pages
---
There are a number of (optional) extra features that Jekyll supports that you may want to install, depending on how you plan to use Jekyll.
## Pygments
If you want syntax highlighting via the `{{ "{% highlight " }}%}` tag in your
posts, youll need to install [Pygments](http://pygments.org/).
### Installing Pygments on OSX
Mac OS X (Leopard onwards) come preinstalled with Python, so on just about any OS X machine you can install Pygments simply by running:
{% highlight bash %}
sudo easy_install Pygments
{% endhighlight %}
#### Installing Pygments using Homebrew
Alternatively, you can install Pygments with [Homebrew](http://mxcl.github.com/homebrew/), an excellent package manager for OS X:
{% highlight bash %}
brew install python
# export PATH="/usr/local/share/python:${PATH}"
easy_install pip
pip install --upgrade distribute
pip install pygments
{% endhighlight %}
**ProTip™**: Homebrew doesnt symlink the executables for you. For the Homebrew default Cellar location and Python 2.7, be sure to add `/usr/local/share/python` to your `PATH`. For more information, check out [the Homebrew wiki](https://github.com/mxcl/homebrew/wiki/Homebrew-and-Python).
#### Installing Pygments using MacPorts
If you use MacPorts, you can install Pygments by running:
{% highlight bash %}
sudo port install python25 py25-pygments
{% endhighlight %}
Seriously though, you should check out [Homebrew](http://mxcl.github.com/homebrew/)—its awesome.
### Installing Pygments on Arch Linux
You can install Pygments using the pacman package manager as follows:
{% highlight bash %}
sudo pacman -S python-pygments
{% endhighlight %}
Or to use python2 for Pygments:
{% highlight bash %}
sudo pacman -S python2-pygments
{% endhighlight %}
### Installing Pygments on Ubuntu and Debian
{% highlight bash %}
sudo apt-get install python-pygments
{% endhighlight %}
### Installing Pygments on RedHat, Fedora, and CentOS
{% highlight bash %}
sudo yum install python-pygments
{% endhighlight %}
### Installing Pygments on Gentoo
{% highlight bash %}
sudo emerge -av dev-python/pygments
{% endhighlight %}
## LaTeX Support
Maruku comes with optional support for LaTeX to PNG rendering via
blahtex (Version 0.6) which must be in your `$PATH` along with `dvips`. If you need Maruku to not assume a fixed location for `dvips`, check out [Remis Maruku fork](http://github.com/remi/maruku).
## RDiscount
If you prefer to use [RDiscount](http://github.com/rtomayko/rdiscount) instead of [Maruku](http://maruku.rubyforge.org/) for markdown, just make sure you have it installed:
{% highlight bash %}
sudo gem install rdiscount
{% endhighlight %}
And then run Jekyll with the following option:
{% highlight bash %}
jekyll --rdiscount
{% endhighlight %}
Or, specify RDiscount as the markdown engine in your `_config.yml` file to have Jekyll run with that option by default (so you dont have to specify the flag every time).
{% highlight bash %}
# In _config.yml
markdown: rdiscount
{% endhighlight %}

View File

@ -0,0 +1,120 @@
---
layout: docs
title: Front-matter
prev_section: configuration
next_section: posts
---
The front-matter is where Jekyll starts to get really cool. Any files that contain a [YAML](http://yaml.org/) front matter block will be processed by Jekyll as special files. The front matter must be the first thing in the file and must take the form of sets of variables and values set between triple-dashed lines. Here is a basic example:
{% highlight yaml %}
---
layout: post
title: Blogging Like a Hacker
---
{% endhighlight %}
Between these triple-dashed lines, you can set predefined variables (see below for a reference) or even create custom ones of your own. These variables will then be available to you to access using Liquid tags both further down in the file and also in any layouts or includes that the page or post in question relies on.
<div class="note warning">
<h5>UTF-8 Character Encoding Warning</h5>
<p>If you use UTF-8 encoding, make sure that no <code>BOM</code> header characters exist in your files or very, very bad things will happen to Jekyll. This is especially relevant if youre running Jekyll on Windows.</p>
</div>
## Predefined Global Variables
There are a number of predefined global variables that you can set in the front-matter of a page or post.
<table>
<thead>
<tr>
<th>Variable</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>layout</code></p>
</td>
<td>
<p>If set, this specifies the layout file to use. Use the layout file name without file extension. Layout files must be placed in the <code>_layouts</code> directory.</p>
</td>
</tr>
<tr>
<td>
<p><code>permalink</code></p>
</td>
<td>
<p>If you need your processed URLs to be something other than the default <code>/year/month/day/title.html</code> then you can set this variable and it will be used as the final URL.</p>
</td>
</tr>
<tr>
<td>
<p><code>published</code></p>
</td>
<td>
<p>Set to false if you dont want a post to show up when the site is generated.</p>
</td>
</tr>
<tr>
<td>
<p style="margin-bottom: 5px;"><code>category</code></p>
<p><code>categories</code></p>
</td>
<td>
<p>Instead of placing posts inside of folders, you can specify one or more categories that the post belongs to. When the site is generated the post will act as though it had been set with these categories normally. Categories (plural key) can be specified as a <a href="http://en.wikipedia.org/wiki/YAML#Lists">YAML list</a> or a space-separated string.</p>
</td>
</tr>
<tr>
<td>
<p><code>tags</code></p>
</td>
<td>
<p>Similar to categories, one or multiple tags can be added to a post. Also like categories, tags can be specified as a YAML list or a space-separated string.</p>
</td>
</tr>
</tbody>
</table>
## Custom Variables
Any variables in the front matter that are not predefined are mixed into
the data that is sent to the Liquid templating engine during the
conversion. For instance, if you set a title, you can use that in your
layout to set the page title:
{% highlight html %}
<!DOCTYPE HTML>
<html>
<head>
<title>{{ "{{ page.title " }}}}</title>
</head>
<body>
...
{% endhighlight %}
## Predefined Variables for Posts
These are available out-of-the-box to be used in the front-matter for a
post.
<table>
<thead>
<tr>
<th>Variable</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>date</code></p>
</td>
<td>
<p>A date here overrides the date from the name of the post. This can be used to ensure correct sorting of posts.</p>
</td>
</tr>
</tbody>
</table>

View File

@ -0,0 +1,34 @@
---
layout: docs
title: GitHub Pages
prev_section: extras
next_section: deployment-methods
---
[GitHub Pages](https://pages.github.com) are public web pages for users, organizations, and repositories, that are freely hosted on [GitHub](https://github.com/). GitHub Pages are powered by Jekyll behind the scenes, so in addition to supporting regular HTML content, theyre also a great way to host your Jekyll-powered website for free.
## Deploying Jekyll to GitHub Pages
GitHub Pages work by looking at certain branches of repositories on GitHub. There are two basic types of Pages available, user/organization Pages and project Pages. The way to deploy these two types of pages are nearly identical, except for a few minor details.
### User and Organization Pages
User and organization Pages live in a special GitHub repository dedicated to only the Pages files. This repository must be named after the account name. For example, [@mojombos user page repository](https://github.com/mojombo/mojombo.github.com) has the name `mojombo.github.com`.
Content from the `master` branch of your repository will be used to build and publish the GitHub Pages site, so make sure your Jekyll site is stored there.
<div class="note info">
<h5>Custom domains do not affect repository names</h5>
<p>GitHub Pages are initially configured to live under the `username.github.com` subdomain, which is why repositories must be named this way <strong>even if a custom domain is being used</strong>.</p>
</div>
### Project Pages
Unlike user and organization Pages, Project Pages are kept in the same repository as the project they are for, except that the website content is stored in a specially named `gh-pages` branch. The content of this branch will be used to rendered using Jekyll, and the output will become available under a subpath of your user pages subdomain, such as `username.github.com/project` (unless a custom domain is specified—see below).
The Jekyll project repository itself is a perfect example of this branch structure—the [master branch](https://github.com/mojombo/jekyll) contains the actual software project for Jekyll, however the Jekyll website (that youre looking at right now) is contained in the [gh-pages branch](https://github.com/mojombo/jekyll/tree/gh-pages) of the same repository.
<div class="note">
<h5>GitHub Pages Documentation, Help, and Support</h5>
<p>For more information about what you can do with GitHub Pages, as well as for troubleshooting guides, you should check out <a href="https://help.github.com/categories/20/articles">GitHubs Pages Help section</a>. If all else fails, you should contact <a href="https://github.com/contact">GitHub Support</a>.</p>
</div>

View File

@ -0,0 +1,8 @@
---
layout: docs
title: Heroku
prev_section: github-pages
next_section: manual-deployment
---
Move along, people. Nothing to see here.

View File

@ -0,0 +1,47 @@
---
layout: docs
title: Welcome
next_section: installation
---
This site aims to be a comprehensive guide to Jekyll. Well cover everything from getting your site up and running, creating and managing your content, customizing the way your site works and looks, deploying to various environments, as well as some advice on participating in the future development of Jekyll itself.
## So what is Jekyll, exactly?
Jekyll is a simple, blog-aware, static site generator. It takes a template directory containing raw text files in various formats, runs it through [Markdown](http://daringfireball.net/projects/markdown/) (or [Textile](http://textile.sitemonks.com/)) and [Liquid](http://liquidmarkup.org/) converters, and spits out a complete, ready-to-publish static website suitable for serving with your favorite web server. Jekyll also happens to be the engine behind [GitHub Pages](http://pages.github.com), which means you can use Jekyll to host your projects page, blog, or website from GitHubs servers **for free**.
## Quick-start guide
For the impatient, here's how to get Jekyll up and running.
{% highlight bash %}
~ $ gem install jekyll
~ $ mkdir -p my/new/site
~ $ cd my/new/site
~ $ vim index.html
~/my/new/site $ jekyll --server
# => Now browse to http://localhost:4000
{% endhighlight %}
That's nothing though. The real magic happens when you start creating posts, using the front-matter to conrol templates and layouts, and taking advantage of all the awesome configuration options Jekyll makes available.
## ProTips™, Notes, and Warnings
Throughout this guide there are a number of small-but-handy pieces of information that can make using Jekyll easier, more interesting, and less hazardous. Heres what to look out for.
<div class="note">
<h5>ProTips™ help you get more from Jekyll</h5>
<p>These are tips and tricks that will help you be a Jekyll wizard!</p>
</div>
<div class="note info">
<h5>Notes are handy pieces of information</h5>
<p>These are for the extra tidbits sometimes necessary to understand Jekyll.</p>
</div>
<div class="note warning">
<h5>Warnings help you not blow things up</h5>
<p>Be aware of these messages if you wish to avoid certain death.</p>
</div>
If you come across anything along the way that we havent covered, or if you know of a tip yourself you think others would find handy, please [file an issue](https://github.com/mojombo/jekyll/issues/new) and well see about including it in this guide.

View File

@ -0,0 +1,43 @@
---
layout: docs
title: Installation
prev_section: home
next_section: usage
---
Getting Jekyll installed and ready-to-go should only take a few minutes. If it ever becomes a pain in the ass, you should [file an issue](https://github.com/mojombo/jekyll/issues/new) (or submit a pull request) about what might be a better way to do things.
### Requirements
Installing Jekyll is easy and straight-forward, but theres a few requirements youll need to make sure your system has before you start.
- [Ruby](http://www.ruby-lang.org/en/downloads/)
- [RubyGems](http://rubygems.org/pages/download)
- Linux, Unix, or Mac OS X
<div class="note info">
<h5>Running Jekyll on Windows</h5>
<p>It is possible to get <a href="http://www.madhur.co.in/blog/2011/09/01/runningjekyllwindows.html">Jekyll running on Windows</a> however the official documentation does not support installation on Windows platforms.</p>
</div>
## Install with RubyGems
The best way to install Jekyll is via
[RubyGems](http://docs.rubygems.org/read/chapter/3). At the terminal prompt, simply run the following command to install Jekyll:
{% highlight bash %}
gem install jekyll
{% endhighlight %}
All Jekylls gem dependancies are automatically installed by the above command, so you wont have to worry about them at all. If you have problems installing Jekyll, check out the [troubleshooting](../troubleshooting) page or [report an issue](https://github.com/mojombo/jekyll/issues/new) so the Jekyll community can improve the experience for everyone.
## Optional Extras
There are a number of (optional) extra features that Jekyll supports that you may want to install, depending on how you plan to use Jekyll. These extras include syntax highlighting of code snippets using [Pygments](http://pygments.org/), LaTeX support, and the use of alternative content rendering engines. Check out [the extras page](../extras) for more information.
<div class="note">
<h5>ProTip™: Enable Syntax Highlighting</h5>
<p>If youre the kind of person who is using Jekyll, then chances are youll definitely want to enable syntax highlighting using Pygments. You should really <a href="../extras">check out how to do that</a> before you go any further.</p>
</div>
Now that youve got everything installed, lets get to work!

View File

@ -0,0 +1,180 @@
---
layout: docs
title: Blog migrations
prev_section: variables
next_section: templates
---
If youre switching to Jekyll from another blogging system, Jekylls migrators can help you with the move. Most methods listed on this page require read access to the database to generate posts from your old system. Each method generates `.markdown` posts in the `_posts` directory based on the entries in the database.
## Preparing for migrations
The migrators are [built-in to the Jekyll gem](https://github.com/mojombo/jekyll/tree/master/lib/jekyll/migrators), and require a few things to be set up in your project directory before they are run. This should all be done from the root folder of your Jekyll project.
{% highlight bash %}
$ mkdir _import
$ gem install sequel mysqlplus
{% endhighlight %}
You should now be all set to run the migrators below.
<div class="note info">
<h5>Note: Always double-check migrated content</h5>
<p>Import scripts may not distinguish between published or private posts, so you should always check that the content Jekyll generates for you appears as you intended.</p>
</div>
## WordPress
### Wordpress export files
If hpricot is not already installed, you will need to run `gem install hpricot`. Next, export your blog using the Wordpress export utility. Assuming that exported file is saved as `wordpress.xml`, here is the command you need to run:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/wordpressdotcom";
Jekyll::WordpressDotCom.process("wordpress.xml")'
{% endhighlight %}
<div class="note">
<h5>ProTip™: Wordpress.com Export Tool</h5>
<p>If you are migrating from a Wordpress.com account, you can access the export tool at the following URL: `https://YOUR-USER-NAME.wordpress.com/wp-admin/export.php`.</p>
</div>
### Using Wordpress MySQL server connection
If you want to import using a direct connection to the Wordpress MySQL server, here's how:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/wordpress";
Jekyll::WordPress.process("database", "user", "pass")'
{% endhighlight %}
If you are using Webfaction and have to set an [SSH tunnel](http://docs.webfaction.com/user-guide/databases.html?highlight=mysql#starting-an-ssh-tunnel-with-ssh), make sure to make the hostname (`127.0.0.1`) explicit, otherwise MySQL may block your access based on localhost and `127.0.0.1` not being equivalent in its authentication system:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/wordpress";
Jekyll::WordPress.process("database", "user", "pass", "127.0.0.1")'
{% endhighlight %}
### Further Wordpress migration alternatives
While the above methods work, they do not import much of the metadata that is usually stored in Wordpress posts and pages. If you need to export things like pages, tags, custom fields, image attachments and so on, the following resources might be useful to you:
- [Exitwp](https://github.com/thomasf/exitwp) is a configurable tool written in Python for migrating one or more Wordpress blogs into Jekyll (Markdown) format while keeping as much metadata as possible. Exitwp also downloads attachments and pages.
- [A great article](http://vitobotta.com/how-to-migrate-from-wordpress-to-jekyll/) with a step-by-step guide for migrating a Wordpress blog to Jekyll while keeping most of the structure and metadata.
- [wpXml2Jekyll](https://github.com/theaob/wpXml2Jekyll) is an executable windows application for creating Markdown posts from your Wordpress XML file.
## Drupal
If youre migrating from [Drupal](), there is [a migrator](https://github.com/mojombo/jekyll/blob/master/lib/jekyll/migrators/drupal.rb) for you too:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/drupal";
Jekyll::Drupal.process("database", "user", "pass")'
{% endhighlight %}
<div class="note warning">
<h5>Warning: Drupal Version Compatibility</h5>
<p>This migrator was written for Drupal 6.1 and may not work as expected on future versions of Drupal. Please update it and send us a pull request if necessary.</p>
</div>
## Movable Type
To import posts from Movable Type:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/mt";
Jekyll::MT.process("database", "user", "pass")'
{% endhighlight %}
## Typo
To import posts from Typo:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/typo";
Jekyll::Typo.process("database", "user", "pass")'
{% endhighlight %}
This code also has only been tested with Typo version 4+.
## TextPattern
To import posts from TextPattern:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/textpattern";
Jekyll::TextPattern.process("database_name", "username", "password", "hostname")'
{% endhighlight %}
You will need to run the above from the parent directory of your `_import` folder. For example, if `_import` is located in `/path/source/_import`, you will need to run this code from `/path/source`. The hostname defaults to `localhost`, all other variables are required. You may need to adjust the code used to filter entries. Left alone, it will attempt to pull all entries that are live or sticky.
## Mephisto
To import posts from Mephisto:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/mephisto";
Jekyll::Mephisto.process("database", "user", "password")'
{% endhighlight %}
If your data is in Postgres, you should do this instead:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/mephisto";
Jekyll::Mephisto.postgres({:database => "database", :username=>"username", :password =>"password"})'
{% endhighlight %}
## Blogger (Blogspot)
To import posts from Blogger, see [this post about migrating from Blogger to Jekyll](http://coolaj86.info/articles/migrate-from-blogger-to-jekyll.html). If that doesnt work for you, you might want to try some of the following alternatives:
- [@kennym](https://github.com/kennym) created a [little migration script](https://gist.github.com/1115810), because the solutions in the previous article didn't work out for him.
- [@ngauthier](https://github.com/ngauthier) created [another importer](https://gist.github.com/1506614) that imports comments, and does so via bloggers archive instead of the RSS feed.
- [@juniorz](https://github.com/juniorz) created [yet another importer](https://gist.github.com/1564581) that works for [Octopress](http://octopress.org). It is like [@ngauthiers version](https://gist.github.com/1506614) but separates drafts from posts, as well as importing tags and permalinks.
## Posterous
To import posts from your primary Posterous blog:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/posterous";
Jekyll::Posterous.process("my_email", "my_pass")'
{% endhighlight %}
For any other Posterous blog on your account, you will need to specify the `blog_id` for the blog:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/posterous";
Jekyll::Posterous.process("my_email", "my_pass", "blog_id")'
{% endhighlight %}
There is also an [alternative Posterous migrator](https://github.com/pepijndevos/jekyll/blob/patch-1/lib/jekyll/migrators/posterous.rb) that maintains permalinks and attempts to import images too.
## Tumblr
To import posts from Tumblr:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/tumblr";
Jekyll::Tumblr.process("http://www.your_blog_url.com", true)'
{% endhighlight %}
There is also [a modified Tumblr migrator](https://github.com/stephenmcd/jekyll/blob/master/lib/jekyll/migrators/tumblr.rb) that exports posts as Markdown and preserves post tags.
The migrator above requires the `json` gem and Python's `html2text` to be installed as follows:
{% highlight bash %}
$ gem install json
$ pip install html2text
{% endhighlight %}
Once installed, simply use the format argument:
{% highlight bash %}
$ ruby -rubygems -e 'require "jekyll/migrators/tumblr";
Jekyll::Tumblr.process("http://www.your_blog_url.com", format="md")'
{% endhighlight %}
## Other Systems
If you have a system that there isnt currently a migrator for, you should consider writing one and sending us a pull request.

View File

@ -0,0 +1,62 @@
---
layout: docs
title: Creating pages
prev_section: posts
next_section: variables
---
As well as [writing posts](../posts), the other thing you may want to do with your Jekyll site is create static pages. This is pretty simple to do, simply by taking advantage of the way Jekyll copies files and directories.
## Homepage
Just about every web server configuration youll come across will look for a HTML file called `index.html` (by convention) in the site root folder and display that as the homepage. Unless the web server youre using is configured to look for some different filename as the default, this file will turn into the homepage of your Jekyll-generated site.
<div class="note">
<h5>ProTip™: Use layouts on your homepage</h5>
<p>Any HTML file on your site can make use of layouts and includes, even the homepage. Its usually a good idea to extract everything that is the same across all your pages into an included file in a layout.</p>
</div>
## Where additional pages live
Where you put HTML files for pages depends on how you want the pages to work, since there are two main ways of creating pages:
- By placing named HTML files for each page in the site root folder.
- Create a folder in the site root for each page, and placing an index.html file in each page folder.
Both methods work fine (and can be used in conduction with each other), with the only real difference being the resulting URLs each page has.
### Named HTML files
The simplest way of adding a page is just to add a HTML file in the root directory with a suitable name for the page you want to create. For a site with a homepage, an about page, and a contact page, heres what the root directory and associated URLs might look like.
{% highlight bash %}
.
|-- _config.yml
|-- _includes
|-- _layouts
|-- _posts
|-- _site
|-- about.html #=> http://yoursite.com/about.html
|-- index.html #=> http://yoursite.com/
└── contact.html #=> http://yoursite.com/contact.html
{% endhighlight %}
### Named folders containing index HTML files
There is nothing wrong with the above method, however some people like to keep their URLs free from things like filename extensions. To achieve clean URLs for pages using Jekyll, you simply need to create a folder for each top-level page you want, and then place an `index.html` file in each pages folder. This way the page URL ends up being the folder name, and the web server will serve up the respective `index.html` file. An example of what this structure would look like is as follows:
{% highlight bash %}
.
├── _config.yml
├── _includes
├── _layouts
├── _posts
├── _site
├── about
| └── index.html #=> http://yoursite.com/about/
├── contact
| └── index.html #=> http://yoursite.com/contact/
└── index.html #=> http://yoursite.com/
{% endhighlight %}
This approach may not suit everyone, but for people who like clear URLs its simple and it works. In the end the decision is yours!

View File

@ -0,0 +1,116 @@
---
layout: docs
title: Pagination
prev_section: permalinks
next_section: plugins
---
With many websites—especially blogs—its very common to break the main listing of posts up into smaller lists and display them over multiple pages. Jekyll has pagination built-in, so you can automatically generate the appropriate files and folders you need for paginated post listings.
<div class="note info">
<h5>Pagination only works within HTML files</h5>
<p>Pagination does not work with Markdown or Textile files in your Jekyll site. It will only work when used within HTML files. Since youll likely be using this for the list of posts, this probably wont be an issue.</p>
</div>
## Enable pagination
The first thing you need to do to enable pagination for your blog is add a line to the `_config.yml` Jekyll configuration file that specifies how many items should be displayed per page. Here is what the line should look like:
{% highlight yaml %}
paginate: 5
{% endhighlight %}
The number should be the maximum number of posts youd like to be displayed per-page in the generated site.
## Render the paginated posts
The next thing you need to do is to actually display your posts in a list using the `paginator` variable that will now be available to you. Youll probably want to do this in one of the main pages of your site. Heres one example of a simple way of rendering paginated posts in a HTML file:
{% highlight html %}
---
layout: default
title: My Blog
---
<!-- This loops through the paginated posts -->
{{ "{% for post in paginator.posts " }}%}
<h1><a href="{{ "{{ post.url " }}}}">{{ "{{ post.title " }}}}</a></h1>
<p class="author">
<span class="date">{{ "{{post.date" }}}}</span>
</p>
<div class="content">
{{ "{{ post.content " }}}}
</div>
{{ "{% endfor " }}%}
<!-- Pagination links -->
<div class="pagination">
{{ "{% if paginator.previous_page " }}%}
<a href="/page{{ "{{paginator.previous_page" }}}}" class="previous">Previous</a>
{{ "{% else " }}%}
<span class="previous">Previous</span>
{{ "{% endif " }}%}
<span class="page_number ">Page: {{ "{{paginator.page" }}}} of {{ "{{paginator.total_pages" }}}}</span>
{{ "{% if paginator.next_page " }}%}
<a href="/page{{ "{{paginator.next_page" }}}}" class="next ">Next</a>
{{ "{% else " }}%}
<span class="next ">Next</span>
{{ "{% endif " }}%}
</div>
{% endhighlight %}
<div class="note warning">
<h5>Beware the page one edge-case</h5>
<p>Jekyll does not generate a page1 folder, so the above code will not work when a <code>/page1</code> link is produced. See below for a way to handle this if its a problem for you.</p>
</div>
The following HTML snippet should handle page one, and render a list of each page with links to all but the current page.
{% highlight html %}
<div id="post-pagination" class="pagination">
{{ "{% if paginator.previous_page " }}%}
<p class="previous">
{{ "{% if paginator.previous_page == 1 " }}%}
<a href="/">Previous</a>
{{ "{% else " }}%}
<a href="/page{{ "{{paginator.previous_page" }}}}">Previous</a>
{{ "{% endif " }}%}
</p>
{{ "{% else " }}%}
<p class="previous disabled">
<span>Previous</span>
</p>
{{ "{% endif " }}%}
<ul class="pages">
<li class="page">
{{ "{% if paginator.page == 1 " }}%}
<span class="current-page">1</span>
{{ "{% else " }}%}
<a href="/">1</a>
{{ "{% endif " }}%}
</li>
{{ "{% for count in (2..paginator.total_pages) " }}%}
<li class="page">
{{ "{% if count == paginator.page " }}%}
<span class="current-page">{{ "{{count" }}}}</span>
{{ "{% else " }}%}
<a href="/page{{ "{{count" }}}}">{{ "{{count" }}}}</a>
{{ "{% endif " }}%}
</li>
{{ "{% endfor " }}%}
</ul>
{{ "{% if paginator.next_page " }}%}
<p class="next">
<a href="/page{{ "{{paginator.next_page" }}}}">Next</a>
</p>
{{ "{% else " }}%}
<p class="next disabled">
<span>Next</span>
</p>
{{ "{% endif " }}%}
</div>
{% endhighlight %}

View File

@ -0,0 +1,163 @@
---
layout: docs
title: Permalinks
prev_section: templates
next_section: pagination
---
Jekyll supports a flexible way to build your sites URLs. You can
specify the permalinks for your site through the [Configuration](../configuration) or on the [YAML Front Matter](../frontmatter) for each post. Youre free to choose one of the built-in styles to create your links or craft your own. The default style is always `date`.
## Template variables
<table>
<thead>
<tr>
<th>Variable</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>year</code></p>
</td>
<td>
<p>Year from the posts filename</p>
</td>
</tr>
<tr>
<td>
<p><code>month</code></p>
</td>
<td>
<p>Month from the posts filename</p>
</td>
</tr>
<tr>
<td>
<p><code>day</code></p>
</td>
<td>
<p>Day from the posts filename</p>
</td>
</tr>
<tr>
<td>
<p><code>title</code></p>
</td>
<td>
<p>Title from the posts filename</p>
</td>
</tr>
<tr>
<td>
<p><code>categories</code></p>
</td>
<td>
<p>The specified categories for this post. Jekyll automatically parses out double slashes in the URLs, so if no categories are present, it basically ignores this.</p>
</td>
</tr>
<tr>
<td>
<p><code>i_month</code></p>
</td>
<td>
<p> Month from the posts filename without leading zeros.</p>
</td>
</tr>
<tr>
<td>
<p><code>i_day</code></p>
</td>
<td>
<p>Day from the posts filename without leading zeros.</p>
</td>
</tr>
</tbody>
</table>
## Built-in permalink styles
<table>
<thead>
<tr>
<th>Permalink Style</th>
<th>URL Template</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>date</code></p>
</td>
<td>
<p><code>/:categories/:year/:month/:day/:title.html</code></p>
</td>
</tr>
<tr>
<td>
<p><code>pretty</code></p>
</td>
<td>
<p><code>/:categories/:year/:month/:day/:title/</code></p>
</td>
</tr>
<tr>
<td>
<p><code>none</code></p>
</td>
<td>
<p><code>/:categories/:title.html</code></p>
</td>
</tr>
</tbody>
</table>
## Permalink style examples
Given a post named: `/2009-04-29-slap-chop.textile`
<table>
<thead>
<tr>
<th>Permalink Setting</th>
<th>Resulting Permalink URL</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>None specified, or <code>permalink: date</code></p>
</td>
<td>
<p><code>/2009/04/29/slap-chop.html</code></p>
</td>
</tr>
<tr>
<td>
<p><code>permalink: pretty</code></p>
</td>
<td>
<p><code>/2009/04/29/slap-chop/index.html</code></p>
</td>
</tr>
<tr>
<td>
<p><code>permalink: /:month-:day-:year/:title.html</code></p>
</td>
<td>
<p><code>/04-29-2009/slap-chop.html</code></p>
</td>
</tr>
<tr>
<td>
<p><code>permalink: /blog/:year/:month/:day/:title</code></p>
</td>
<td>
<p><code>/blog/2009/04/29/slap-chop/index.html</code></p>
</td>
</tr>
</tbody>
</table>

View File

@ -0,0 +1,384 @@
---
layout: docs
title: Plugins
prev_section: assets
next_section: extras
---
Jekyll has a plugin system with hooks that allow you to create custom generated
content specific to your site. You can run custom code for your site
without having to modify the Jekyll source itself.
<div class="note info">
<h5>Plugins on GitHub Pages</h5>
<p>GitHub Pages are powered by Jekyll, however all Pages sites are generated using the <code>--safe</code> option to disable custom plugins for security reasons. Unfortunately, this means your plugins wont work if youre deploying to GitHub Pages.</p>
</div>
## Installing a plugin
In your site source root, make a `_plugins` directory. Place your plugins
here. Any file ending in `*.rb` inside this directory will be required
when Jekyll generates your site.
In general, plugins you make will fall into one of three categories:
1. Generators
2. Converters
3. Tags
## Generators
You can create a generator when you need Jekyll to create additional
content based on your own rules. For example, a generator might look
like this:
{% highlight ruby %}
module Jekyll
class CategoryPage < Page
def initialize(site, base, dir, category)
@site = site
@base = base
@dir = dir
@name = 'index.html'
self.process(@name)
self.read_yaml(File.join(base, '_layouts'), 'category_index.html')
self.data['category'] = category
category_title_prefix = site.config['category_title_prefix'] || 'Category: '
self.data['title'] = "#{category_title_prefix}#{category}"
end
end
class CategoryPageGenerator < Generator
safe true
def generate(site)
if site.layouts.key? 'category_index'
dir = site.config['category_dir'] || 'categories'
site.categories.keys.each do |category|
site.pages << CategoryPage.new(site, site.source, File.join(dir, category), category)
end
end
end
end
end
{% endhighlight %}
In this example, our generator will create a series of files under the
`categories` directory for each category, listing the posts in each
category using the `category_index.html` layout.
Generators are only required to implement one method:
<table>
<thead>
<tr>
<th>Method</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>generate</code></p>
</td>
<td>
<p>String output of the content being generated.</p>
</td>
</tr>
</tbody>
</table>
## Converters
If you have a new markup language youd like to include in your site,
you can include it by implementing your own converter. Both the markdown
and textile markup languages are implemented using this method.
<div class="note info">
<h5>Remember your YAML front-matter</h5>
<p>Jekyll will only convert files that have a YAML header at
the top, even for converters you add using a plugin. If there is no YAML header, Jekyll will ignore the file and not send it through the converter.</p>
</div>
Below is a converter that will take all posts ending in .upcase and
process them using the UpcaseConverter:
{% highlight ruby %}
module Jekyll
class UpcaseConverter < Converter
safe true
priority :low
def matches(ext)
ext =~ /upcase/i
end
def output_ext(ext)
".html"
end
def convert(content)
content.upcase
end
end
end
{% endhighlight %}
Converters should implement at a minimum 3 methods:
<table>
<thead>
<tr>
<th>Method</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>matches</code></p>
</td>
<td>
<p>Called to determine whether the specific converter will
run on the page.</p>
</td>
</tr>
<tr>
<td>
<p><code>output_ext</code></p>
</td>
<td>
<p>The extension of the outputted file, usually this will be <code>.html</code></p>
</td>
</tr>
<tr>
<td>
<p><code>convert</code></p>
</td>
<td>
<p>Logic to do the content conversion</p>
</td>
</tr>
</tbody>
</table>
In our example, UpcaseConverter-matches checks if our filename extension is `.upcase`, and will render using the converter if it is. It will call UpcaseConverter-convert to process the content - in our simple converter were simply capitalizing the entire content string. Finally, when it saves the page, it will do so with the `.html` extension.
## Tags
If youd like to include custom liquid tags in your site, you can do so
by hooking into the tagging system. Built-in examples added by Jekyll
include the `{{"{% highlight "}}%}` and `{{"{% include "}}%}` tags. Below is an example custom liquid tag that will output the time the page was rendered:
{% highlight ruby %}
module Jekyll
class RenderTimeTag < Liquid::Tag
def initialize(tag_name, text, tokens)
super
@text = text
end
def render(context)
"#{@text} #{Time.now}"
end
end
end
Liquid::Template.register_tag('render_time', Jekyll::RenderTimeTag)
{% endhighlight %}
At a minimum, liquid tags must implement:
<table>
<thead>
<tr>
<th>Method</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>render</code></p>
</td>
<td>
<p>Outputs the content of the tag.</p>
</td>
</tr>
</tbody>
</table>
You must also register the custom tag with the Liquid template engine as follows:
{% highlight ruby %}
Liquid::Template.register_tag('render_time', Jekyll::RenderTimeTag)
{% endhighlight %}
In the example above, we can place the following tag anywhere in one of our pages:
{% highlight ruby %}
<p>{{"{% render_time page rendered at: "}}%}</p>
{% endhighlight %}
And we would get something like this on the page:
{% highlight html %}
<p>page rendered at: Tue June 22 23:38:47 0500 2010</p>
{% endhighlight %}
### Liquid filters
You can add your own filters to the Liquid template system much like you can add tags above. Filters are simply modules that export their methods to liquid. All methods will have to take at least one parameter which represents the input of the filter. The return value will be the output of the filter.
{% highlight ruby %}
module Jekyll
module AssetFilter
def asset_url(input)
"http://www.example.com/#{input}?#{Time.now.to_i}"
end
end
end
Liquid::Template.register_filter(Jekyll::AssetFilter)
{% endhighlight %}
<div class="note">
<h5>ProTip™: Access the site object using Liquid</h5>
<p>Jekyll lets you access the <code>site</code> object through the <code>context.registers</code> feature of liquid. For example, you can access the global configuration file <code>_config.yml</code> using <code>context.registers.config</code>.</p>
</div>
### Flags
There are two flags to be aware of when writing a plugin:
<table>
<thead>
<tr>
<th>Flag</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>safe</code></p>
</td>
<td>
<p>A boolean flag that allows a plugin to be safely included in
Jekyll core for exclusion from use with GitHub Pages. In general, set
this to <code>true</code>.</p>
</td>
</tr>
<tr>
<td>
<p><code>priortiy</code></p>
</td>
<td>
<p>This flag determines what order the plugin is loaded in. Valid
values are: <code>:lowest</code>, <code>:low</code>, <code>:normal</code>, <code>:high</code>, and <code>:highest</code>.</p>
</td>
</tr>
</tbody>
</table>
To use one of the example plugins above as an illustration, here is how youd specify these two flags:
{% highlight ruby %}
module Jekyll
class UpcaseConverter < Converter
safe true
priority :low
...
end
end
{% endhighlight %}
## Available Plugins
There are a few useful, prebuilt plugins at the following locations:
- [Truncate HTML while preserving markup structure](https://github.com/MattHall/truncatehtml) by [Matt Hall](http://codebeef.com)
- [Generic Blog Plugins by Jose Diaz-Gonzalez](https://github.com/josegonzalez/josediazgonzalez.com/tree/master/_plugins): Contains plugins for tags, categories, archives, as well as a few liquid extensions
- [Domain Name Filter by Lawrence Woodman](https://github.com/LawrenceWoodman/domain_name-liquid_filter): Filters the input text so that just the domain name is left
- [Jekyll Plugins by Recursive Design](http://recursive-design.com/projects/jekyll-plugins/): Plugin to generate Project pages from github readmes, a Category page plugin, and a Sitemap generator
- [Tag Cloud Plugin from a Jekyll walk-through](http://vitobotta.com/how-to-migrate-from-wordpress-to-jekyll/): Plugin to generate a Tag Cloud
- [Pygments Cache Path by Raimonds Simanovskis](https://github.com/rsim/blog.rayapps.com/blob/master/_plugins/pygments_cache_patch.rb): Plugin to cache syntax-highlighted code from Pygments
- [Delicious Plugin by Christian Hellsten](https://github.com/christianhellsten/jekyll-plugins): Fetches and renders bookmarks from delicious.com.
- [Ultraviolet plugin by Steve Alex](https://gist.github.com/480380): Jekyll Plugin for Ultraviolet
- [HAML plugin by Sam Z](https://gist.github.com/517556): HAML plugin for jekyll
- [ArchiveGenerator by Ilkka Laukkanen](https://gist.github.com/707909): Uses [this archive page](https://gist.github.com/707020) to generate archives
- [Tag Cloud Plugin by Ilkka Laukkanen](https://gist.github.com/710577): Jekyll tag cloud / tag pages plugin
- [HAML/SASS Converter by Adam Pearson](https://gist.github.com/481456): Simple haml-sass conversion for jekyll. [Fork](https://gist.github.com/528642) by Sam X
- [SASS scss Converter by Mark Wolfe](https://gist.github.com/960150): Jekyll Converter which uses the new css compatible syntax, based on the one written by Sam X.
- [GIT Tag by Alexandre Girard](https://gist.github.com/730347): Jekyll plugin to add Git activity inside a list
- [Draft/Publish Plugin by Michael Ivey](https://gist.github.com/49630)
- [Less.js generator by Andy Fowler](https://gist.github.com/642739): Jekyll plugin to render less.js files during generation.
- [Less Converter by Jason Graham](https://gist.github.com/639920): A Jekyll plugin to convert a .less file to .css
- [Less Converter by Josh Brown](https://gist.github.com/760265)
- [MathJax Liquid Tags by Jessy Cowan-Sharp](https://gist.github.com/834610): A simple liquid tag for Jekyll that converts and into inline math, and and into block equations, by replacing with the appropriate MathJax script tags.
- [Non-JS Gist Tag by Brandon Tilley](https://gist.github.com/1027674) A Liquid tag for Jekyll sites that allows embedding Gists and showing code for non-JavaScript enabled browsers and readers.
- [Growl Notification Generator by Tate Johnson](https://gist.github.com/490101)
- [Growl Notification Hook by Tate Johnson](https://gist.github.com/525267): Better alternative to the above, but requires his “hook” fork.
- [Version Reporter by Blake Smith](https://gist.github.com/449491)
- [Upcase Converter by Blake Smith](https://gist.github.com/449463)
- [Render Time Tag by Blake Smith](https://gist.github.com/449509)
- [Summarize Filter by Mathieu Arnold](https://gist.github.com/731597)
- [Status.net/OStatus Tag by phaer](https://gist.github.com/912466)
- [CoffeeScript converter by phaer](https://gist.github.com/959938): Put this file in `plugins` and write a YAML header to your .coffee files. See [http://coffeescript.org](http://coffeescript.org) for more info
- [Raw Tag by phaer.](https://gist.github.com/1020852): Keeps liquid from parsing text betweeen `{{ "{% raw " }}%}` and `{{ "{% endraw " }}%}`
- [URL encoding by James An](https://gist.github.com/919275)
- [Sitemap.xml Generator by Michael Levin](http://www.kinnetica.com/projects/jekyll-sitemap-generator/)
- [Markdown references by Olov Lassus](https://gist.github.com/961336): Keep all your markdown reference-style link definitions in one file (_references.md)
- [Full-text search by Pascal Widdershoven](https://github.com/PascalW/jekyll_indextank): Add full-text search to your Jekyll site with this plugin and a bit of JavaScript.
- [Stylus Converter](https://gist.github.com/988201) Convert .styl to .css.
- [Embed.ly client by Robert Böhnke](https://github.com/robb/jekyll-embedly-client) Autogenerate embeds from URLs using oEmbed.
- [Logarithmic Tag Cloud](https://gist.github.com/2290195): Flexible. Logarithmic distribution. Usage eg: `{{ "{% tag_cloud font-size: 50 - 150%, threshold: 2 " }}%}`. Documentation inline.
- [Related Posts by Lawrence Woodman](https://github.com/LawrenceWoodman/related_posts-jekyll_plugin): Overrides `site.related_posts` to use categories to assess relationship
- [AliasGenerator by Thomas Mango](https://github.com/tsmango/jekyll_alias_generator): Generates redirect pages for posts when an alias configuration is specified in the YAML Front Matter.
- [FlickrSetTag by Thomas Mango](https://github.com/tsmango/jekyll_flickr_set_tag): Generates image galleries from Flickr sets.
- [Projectlist by Frederic Hemberger](https://github.com/fhemberger/jekyll-projectlist): Loads all files from a directory and renders the entries into a single page, instead of creating separate posts.
- [Tiered Archives by Eli Naeher](https://gist.github.com/88cda643aa7e3b0ca1e5): creates a tiered template variable that allows you to create archives grouped by year and month.
- [Jammit generator by Vladimir Andrijevik](https://gist.github.com/1224971): enables use of [Jammit](http://documentcloud.github.com/jammit/) for JavaScript and CSS packaging.
- [oEmbed Tag by Tammo van Lessen](https://gist.github.com/1455726): enables easy content embedding (e.g. from YouTube, Flickr, Slideshare) via oEmbed.
- [Company website and blog plugins](https://github.com/flatterline/jekyll-plugins) by Flatterline, a [Ruby on Rails development company](http://flatterline.com/): portfolio/project page generator, team/individual page generator, author bio liquid template tag for use on posts and a few other smaller plugins.
- [Transform Layouts](https://gist.github.com/1472645) Monkey patching allowing HAML layouts (you need a HAML Converter plugin for this to work)
- [ReStructuredText converter](https://github.com/xdissent/jekyll-rst): Converts ReST documents to HTML with Pygments syntax highlighting.
- [Tweet Tag by Scott W. Bradley](https://github.com/scottwb/jekyll-tweet-tag): Liquid tag for [Embedded Tweets](https://dev.twitter.com/docs/embedded-tweets) using Twitters shortcodes
- [jekyll-localization](https://github.com/blackwinter/jekyll-localization): Jekyll plugin that adds localization features to the rendering engine.
- [jekyll-rendering](https://github.com/blackwinter/jekyll-rendering): Jekyll plugin to provide alternative rendering engines.
- [jekyll-pagination](https://github.com/blackwinter/jekyll-pagination): Jekyll plugin to extend the pagination generator.
- [jekyll-tagging](https://github.com/pattex/jekyll-tagging): Jekyll plugin to automatically generate a tag cloud and tag pages.
- [Generate YouTube Embed (tag)](https://gist.github.com/1805814) by [joelverhagen](https://github.com/joelverhagen): Jekyll plugin which allows you to embed a YouTube video in your page with the YouTube ID. Optionally specify width and height dimensions. Like “oEmbed Tag” but just for YouTube.
- [JSON Filter](https://gist.github.com/1850654) by [joelverhagen](https://github.com/joelverhagen): filter that takes input text and outputs it as JSON. Great for rendering JavaScript.
- [jekyll-beastiepress](https://github.com/okeeblow/jekyll-beastiepress): FreeBSD utility tags for Jekyll sites.
- [jsonball](https://gist.github.com/1895282): reads json files and produces maps for use in jekylled files
- [redcarpet2](https://github.com/nono/Jekyll-plugins): use Redcarpet2 for rendering markdown
- [bibjekyll](https://github.com/pablooliveira/bibjekyll): render BibTeX-formatted bibliographies/citations included in posts/pages using bibtex2html
- [jekyll-citation](https://github.com/archome/jekyll-citation): render BibTeX-formatted bibliographies/citations included in posts/pages (pure Ruby)
- [jekyll-scholar](https://github.com/inukshuk/jekyll-scholar): Jekyll extensions for the blogging scholar
- [jekyll-asset_bundler](https://github.com/moshen/jekyll-asset_bundler): bundles and minifies JavaScript and CSS
- [Jekyll Dribbble Set Tag](https://github.com/ericdfields/Jekyll-Dribbble-Set-Tag): builds Dribbble image galleries from any user
- [debbugs](https://gist.github.com/2218470): allows posting links to Debian BTS easily
- [refheap_tag](https://github.com/aburdette/refheap_tag): Liquid tag that allows embedding pastes from [refheap](https://refheap.com)
- [i18n_filter](https://github.com/gacha/gacha.id.lv/blob/master/_plugins/i18n_filter.rb): Liquid filter to use I18n localization.
- [singlepage-jekyll](https://github.com/JCB-K/singlepage-jekyll) by [JCB-K](https://github.com/JCB-K): turns Jekyll into a dynamic one-page website.
- [flickr](http://jonasforsberg.se/2012/04/15/flickr-plugin-for-jekyll/): Embed photos from flickr right into your posts.
- [jekyll-devonly_tag](https://gist.github.com/2403522): A block tag for including markup only during development.
- [Jekyll plugins by Aucor](https://github.com/aucor/jekyll-plugins): Plugins for eg. trimming unwanted newlines/whitespace and sorting pages by weight attribute.
- [Only first paragraph](https://github.com/sebcioz/jekyll-only_first_p): Show only first paragrpaph of page/post.
- [jekyll-pandoc-plugin](https://github.com/dsanson/jekyll-pandoc-plugin): use pandoc for rendering markdown.
- [File compressor](https://gist.github.com/2758691) by [mytharcher](https://github.com/mytharcher): Compress HTML (\*.html) and JavaScript(\*.js) files when output.
- [smilify](https://github.com/SaswatPadhi/jekyll_smilify) by [SaswatPadhi](https://github.com/SaswatPadhi): Convert text emoticons in your content to themeable smiley pics. [Demo](http://saswatpadhi.github.com/)
- [excerpts](http://blog.darkrefraction.com/2012/jekyll-excerpt-plugin.html) by [drawoc](https://github.com/drawoc): provides a nice way to implement page excerpts.
<div class="note info">
<h5>Jekyll Plugins Wanted</h5>
<p>If you have a Jekyll plugin that you would like to see added to this list, you should <a href="../contributing">read the contributing page</a> to find out how to make that happen.</p>
</div>

View File

@ -0,0 +1,106 @@
---
layout: docs
title: Writing posts
prev_section: frontmatter
next_section: pages
---
One of Jekylls best aspects is that it is “blog aware”. What does that mean, exactly? Well, simply put it means that blogging is baked into Jekylls functionality by default. For people who write articles and publish them online, this means that you can publish and maintain a blog simply by managing a folder full of text-files on your computer. Compared to the hassle of configuring and maintaining databases and web-based CMS systems, this will be a welcome change for many.
## The Posts Folder
As detailed on the [directory structure](../structure) page, the `_posts` folder in any Jekyll site is where the files for all your articles will live. These files can be either [Markdown](http://daringfireball.net/projects/markdown/) or [Textile](http://textile.sitemonks.com/) formatted text files, and as long as they have [YAML front-matter](../frontmatter) defined, they will be converted from their source format into a HTML page that is part of your static site.
### Creating Post Files
To create a new post, all you need to do is create a new file in the `_posts` folder. The filename structure used for files in this folder is important—Jekyll requires the file to be named in the following format:
{% highlight bash %}
YEAR-MONTH-DAY-title.MARKUP
{% endhighlight %}
Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is an appropriate file extension for the format your post is written in. For example, the following are examples of excellent post filenames:
{% highlight bash %}
2011-12-31-new-years-eve-is-awesome.markdown
2012-09-12-how-to-write-a-blog.textile
{% endhighlight %}
### Content Formats
The first thing you need to put in any post is a section for [YAML front-matter](../frontmatter), but after that, it's simply a case of deciding which format you prefer to write in. Jekyll supports two popular content markup formats: [Markdown](http://daringfireball.net/projects/markdown/) or [Textile](http://textile.sitemonks.com/). These formats each have their own way of signifying different types of content within a post, so you should read up on how these formats work and decide which one suits your needs best.
## Including images and resources
For people who publish articles on a regular basis, its quite common to need to include things like images, links, downloads, and other resources along with their text-based content. While the ways to link to these resources differ between Markdown and Textile, the problem of working out where to store these files in your site is something everyone will face.
Because of Jekylls flexibility, there are many solutions to how to do this. One common solution is to create a folder in the root of the project directory called something like `assets` or `downloads`, into which any images, downloads or other resources are placed. Then, from within any post, they can be linked to using the sites root as the path for the asset to include. Again, this will depend on the way your sites (sub)domain and path are configured, but here some examples (in Markdown) of how you could do this using the `{{ "{{ site.url " }}}}` variable in a post.
Including an image asset in a post:
{% highlight bash %}
… which is shown in the screenshot below:
![My helpful screenshot]({{ "{{ site.url " }}}}/assets/screenshot.jpg)
{% endhighlight %}
Linking to a PDF for readers to download:
{% highlight bash %}
… you can [get the PDF]({{ "{{ site.url " }}}}/assets/mydoc.pdf) directly.
{% endhighlight %}
<div class="note">
<h5>ProTip™: Link using just the site root URL</h5>
<p>You can skip the <code>{{ "{{ site.url " }}}}</code> variable if you <strong>know</strong> your site will only ever be displayed at the root URL of your domain. In this case you can reference assets directly with just <code>/path/file.jpg</code>.</p>
</div>
## Displaying an index of posts
Its all well and good to have posts in a folder, but a blog is no use unless you have a list of posts somewhere for people. Creating an index of posts on another page (or in a [template](../templates)) is easy, thanks to the [Liquid template language](http://liquidmarkup.org/) and its tags. Heres a basic example of how to create an unordered list of links to posts for a Jekyll site:
{% highlight html %}
<ul>
{{ "{% for post in site.posts " }}%}
<li>
<a href="{{ "{{ post.url "}}}}">{{ "{{ post.title "}}}}</a>
</li>
{{ "{% endfor " }}%}
</ul>
{% endhighlight %}
Of course, you have full control over how (and where) you display your posts, and how you structure your site. You should read more about [how templates work](../templates) with Jekyll if youre interested in these kinds of things.
## Highlighting code snippets
Jekyll also has built-in support for syntax highlighting of code snippets using [Pygments](../extras), and including a code snippet in any post is easy. Just use the dedicated Liquid tag as follows:
{% highlight ruby %}
{{ "{% highlight ruby"}} %}
def show
@widget = Widget(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @widget }
end
end
{{ "{% endhighlight"}} %}
{% endhighlight %}
And the output will look like this:
{% highlight ruby %}
def show
@widget = Widget(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @widget }
end
end
{% endhighlight %}
<div class="note">
<h5>ProTip™: Show line numbers</h5>
<p>You can make code snippets include line-numbers easily, simply add the word <code>linenos</code> to the end of the opening highlight tag like this: <code>{{ "{% highlight ruby linenos " }}%}</code>.</p>
</div>
Those basics should be more than enough to get you started writing your first posts. When youre ready to dig into what else is possible, you might be interested in doing things like [customizing post permalinks](../permalinks) or using [custom variables](../variables) in your posts and elsewhere on your site.

View File

@ -0,0 +1,49 @@
---
layout: docs
title: Resources
prev_section: sites
---
Jekylls growing use is producing a wide variety of tutorials, frameworks, extensions, examples, and other resources that can be very helpful. Below is a collection of links to some of the most popular Jekyll resources.
### Jekyll tips & tricks, and examples
- [A simple way to add draft posts](https://gist.github.com/2870636)
No plugins required.
- [Tips for working with GitHub Pages Integration](https://gist.github.com/2890453)
Code example reuse, and keeping documentation up to date.
- [Use Simple Form to integrate a simple contact
form](http://getsimpleform.com/)
- [JekyllBootstrap.com](http://jekyllbootstrap.com)
Provides detailed explanations, examples, and helper-code to make
getting started with Jekyll easier.
### Tutorials
#### Integrating Jekyll with Git
- [Blogging with Git, Emacs and Jekyll](http://metajack.im/2009/01/23/blogging-with-git-emacs-and-jekyll/)
- [Using Git to maintain your blog](http://matedriven.com.ar/2009/04/28/using-git-to-maintain-your-blog.html) (step by step guide)
#### Other hacks
- [Integrating Twitter with Jekyll](http://www.justkez.com/integrating-twitter-with-jekyll/)
> “Having migrated Justkez.com to be based on Jekyll, I was pondering how I might include my recent twitterings on the front page of the site. In the Wordpress world, this would have been done via a plugin which may or may not have hung the loading of the page, might have employed caching, but would certainly have had some overheads. … Not in Jekyll.”
- [My Jekyll Fork, by Mike West](http://mikewest.org/2009/11/my-jekyll-fork)
> “Jekyll is a well-architected throwback to a time before Wordpress, when men were men, and HTML was static. I like the ideas it espouses, and have made a few improvements to its core. Here, Ill point out some highlights of my fork in the hopes that they see usage beyond this site.”
- [About this Website, by Carter Allen](http://cartera.me/2010/08/12/about-this-website/)
> “Jekyll is everything that I ever wanted in a blogging engine. Really. It isnt perfect, but whats excellent about it is that if theres something wrong, I know exactly how it works and how to fix it. It runs on the your machine only, and is essentially an added”build" step between you and the browser. I coded this entire site in TextMate using standard HTML5 and CSS3, and then at the end I added just a few little variables to the markup. Presto-chango, my site is built and I am at peace with the world.”
- [Generating a Tag Cloud in Jekyll](http://www.justkez.com/generating-a-tag-cloud-in-jekyll/)
A guide to implementing a tag cloud and per-tag content pages using Jekyll.
- [Jekyll Extensions -= Pain](http://rfelix.com/2010/01/19/jekyll-extensions-minus-equal-pain/)
A way to [extend Jekyll](http://github.com/rfelix/jekyll_ext) without forking and modifying the Jekyll gem codebase and some [portable Jekyll extensions](http://wiki.github.com/rfelix/jekyll_ext/extensions) that can be reutilized and shared.
- [Using your Rails layouts in Jekyll](http://numbers.brighterplanet.com/2010/08/09/sharing-rails-views-with-jekyll)

View File

@ -0,0 +1,991 @@
---
layout: docs
title: Sites using Jekyll
prev_section: troubleshooting
next_section: resources
---
Its interesting to see what designs and features others have come up
with. Link to Jekyll-powered blogs and other sites here.
- [Tom Preston-Werner](http://tom.preston-werner.com/)
([source](http://github.com/mojombo/mojombo.github.com))
- [Koliseo Help Site](http://help.koliseo.com) - Help site of a
ticketing platform
- [Magpie Lab](http://www.magpielab.com)
([source](https://github.com/magpielab/magpielab.com))
- [Litany Against Fear](http://litanyagainstfear.com/)
([source](https://github.com/qrush/qrush.github.com))
- [Git Ready](http://gitready.com/)
([source](http://github.com/gitready/gitready))
- [Bilal Hussain](http://bilalh.github.com/)
([source](https://github.com/Bilalh/bilalh.github.com/tree/source))
- Personal site and blog and projects details.
- [m8ck](http://m8ck.us.to) - Personal blog about technology and web
development.
- [Ping My Geek](http://pingmygeek.com)
([source](http://github.com/pranavk/pranavk.github.com/)) - Personal
blog on computers, hacking, technology and experimentation.
- [Richard Huang](http://www.huangzhimin.com/)
([source](https://github.com/flyerhzm/flyerhzm.github.com)) - Blog
about ruby/rails and other web develop technology.
- [Michael Ebens](http://nova-fusion.com/)
([source](http://github.com/BlackBulletIV/blackbulletiv.github.com))
- Personal site with a tech blog on various topics, usually related
to programming and web development, pages for Michaels projects,
and other pages. Check out the source, its got a lot in it.
- [devsundar](http://devsundar.github.com/)
([source](http://github.com/devsundar/devsundar.github.com))
- [metajack.im](http://metajack.im/)
([source](http://github.com/metajack/metajack.im) / [Jekyll
fork](http://github.com/metajack/jekyll)) - Custom fork with support
for times, archives, custom script output etc. Tags implemented with
Google search.
- [Julian Yap](http://julianyap.com/?pk_campaign=github)
([source](https://github.com/jyap808/jyap808.github.com)) - Personal
blog and web site. Theme is based off of and customized from Tom
Preston-Werners.
- [Corey Smith](http://www.coreynsmith.com/) - Personal blog, made
with Octopress.
- [GitHub Rebase](http://rebase.github.com/)
([source](http://github.com/rebase/rebase.github.com))
- [User Obsessed](http://userobsessed.net/)
([source](http://github.com/joefiorini/userobsessed)) - Link (and
non-link) blog with some nice automation and rsync deployment
script.
- [überduper](http://danhixon.github.com/)
([source](http://github.com/danhixon/danhixon.github.com))
- [The Pug Automatic](http://henrik.nyh.se/)
([source](http://github.com/henrik/henrik.nyh.se) / [Jekyll
fork](http://github.com/henrik/jekyll)) - Custom fork with Haml,
Sass etc. Single page for tags with per-tag anchors. Single page
archive by year/month.
- [Paperplanes](http://www.paperplanes.de/)
([source](http://github.com/mattmatt/paperplanes) / [Jekyll
fork](http://github.com/mattmatt/jekyll/))
- [Development Seed](http://developmentseed.org/)
([source](http://developmentseed.org/blog/2011/09/09/jekyll-github-pages/))
- [My Thoughts Are Yours](http://mythoughtsareyours.yolk.cc/)
([source](http://github.com/yyolk/mythoughtsareyours)) - My Thoughts
Are Yours - a project by [YOLK](http://yolk.cc/).
- [Rails Developer
London](http://www.jackkinsella.ie/rails-developer-london.html)
([source](git://github.com/jackkinsella/Personal-Site-of-Jack-Kinsella.git))
- Heroku ready and search engine optimised portfolio site and blog
of Jack Kinsella.
- [Tagaholic](http://tagaholic.me/)
([source](http://github.com/cldwalker/cldwalker.github.com)) -
Machine tags and js are used to organize posts and calculate related
posts.
- [Kismetik Interactive](http://www.kismetik.com/)
([source](http://github.com/spo11/kismetik-jekyll)) - Jekyll-managed
site deployed on Amazon S3 with tag pages, pagination, custom
layouts.
- [Thomas Glasgow](http://www.thomasglasgow.com/) - Personnal website
of a french engineer and entrepreneur.
- [favrik.com](http://favrik.com/)
([source](http://github.com/favrik/favrik.com/))
- [Mark Reid](http://mark.reid.name/)
([source](http://github.com/mreid/mark.reid.name/tree)) - Jekyll
used as CMS for personal site and running two blogs: [Inductio Ex
Machina](http://mark.reid.name/iem/) (machine learning research) and
[Structure & Process](http://mark.reid.name/sap/) (programming).
- [tychoish](http://www.tychoish.com/) - Large scale Jekyll site,
based on metajack.ims fork, and using themes from Mark Reids site
(with a few modifications). 1300+ entries.
- [Cyborg Institute](http://www.cyborginstitute.com/)
([source](http://cyborginstitute.net/git/?p=cyborginstitute.com.git;a=summary))
- Uses Jekyll to power the whole site (save the wiki). Uses the same
version of the code as tychoish, above.
- [Buildr](http://buildr.apache.org/)
([source](http://github.com/assaf/buildr/tree/master)) - Generate
the site with Jekyll, and use PrinceXML to [generate PDF out of
it](http://blog.labnotes.org/2009/03/14/buildr-how-we-generate-the-documentation-web-site-and-pdf/).
- [Anil Wadghule](http://www.anilwadghule.com/)
([source](http://github.com/anildigital/anildigital.github.com/))
- [Basil Shkara](http://oiledmachine.com/posts) - Running Jekyll with
a tag structure.
- [Elijah Miller / jqr](http://jqr.github.com/)
([source](http://github.com/jqr/jqr.github.com))
- [PseudoWeb.Net](http://pseudoweb.net/)
([source](http://github.com/icco/pseudoweb))
- [Tate Johnson](http://tatey.com/)
([source](http://github.com/tatey/tatey.com/))
- [Jens Neuhalfen](http://neuhalfen.name/)
- [zegoggl.es](http://zegoggl.es)
([source](http://github.com/jberkel/zegoggl.es) / [Jekyll
fork](http://github.com/jberkel/jekyll/)) - Based on Henriks
[fork](http://github.com/henrik/jekyll) and
[blog](http://henrik.nyh.se/).
- [Noah Watkins](http://noahdesu.com/)
([source](https://github.com/noahdesu/noahdesu.github.com)) -
Personal/academic blog.
- [Crantastic Blog](http://blog.crantastic.org/)
([source](http://github.com/hadley/crantastic/tree/gh-pages))
- [Tom Ward](http://tomafro.net/)
([source](http://github.com/tomafro/tomafro.net)) - Fully featured
blog using a Rakefile to generate index pages (of tags, years and
months), custom tags to help display posts, and capistrano to
publish.
- [koraktor](http://koraktor.github.com/)
([source](http://github.com/koraktor/koraktor.github.com))
- [Cory Ondrejka](http://cory.github.com/)
([source](http://github.com/cory/cory.github.com/tree/master)) - My
regularly updated personal blog, talks, open source projects, etc…
- [Alex Payne](http://al3x.net/)
([source](http://github.com/al3x/al3x.github.com/tree/master))
- [Thomas Kollbach](http://thomas.kollba.ch/)
- [iPhone Plazer Application Page](http://plazer.bits.io/)
- [Tomasz Tomash Stachewicz](http://tomash.wrug.eu/)
- [Dans Blog](http://caffeine.cc/) - Regular blog, updated through
Capistrano.
- [IS Development Blog](http://isdevelopment.weblog.glam.ac.uk/) - Uni
of Glamorgan Development blog (in development!).
- [Bernard Imanel Potocki](http://imanel.org/) (Using [Henriks
Jekyll fork](http://github.com/henrik/jekyll))
- [Matías
Flores](http://matflores.com/([fork](http://github.com/matflores/jekyll)))- [Stefan Saasen](http://www.juretta.com/)
- [Jason Rudolph](http://jasonrudolph.com/)
([source](http://github.com/jasonrudolph/jasonrudolph.com)) - Tags
implemented with JavaScript to build URL for Google Custom Search
Engine.
- [Eric Johnson](http://el-studio.com/)
([fork](http://github.com/elstudio/jekyll)) - Fork sorts tags
alphabetically by key.
- [Michael Nhat](http://michaelnhat.com/) - Great music, simple
design.
- [Superfeedrs Blog](http://superfeedr.com/) - Real-time cloudy
thoughts from a super-hero.
- [Jason Toy](http://jtoy.net/)
([source](http://github.com/jtoy.net/jtoyblog))
- [Paolo Dona: not (yet) entrepreneur](http://paolodona.com/)
([source](http://github.com/paolodona/paolodona.com))
- [Joel Bradbury](http://joelbradbury.net/)
([source](http://github.com/joelbradbury/joelbradbury.github.com)) -
My personal blog, things on software and web development.
- [morten lieba.ch](http://m.lieba.ch/)
([source](http://github.com/Liebach/liebach.github.com)) - Personal
blog & website on [github pages](http://pages.github.com/).
- [Andrew Benton](http://hellosorld.com/)
([source](http://github.com/stanleydrew/hellosorld.git)) - Personal
blog on software, development, web technologies, general startup
stuff.
- [Mike Champion](http://graysky.org/)
- [Brandon Mathis](http://brandonmathis.com/)
([source](http://github.com/imathis/design-enthusiast/) using
[Octopress blogging framework](http://github.com/imathis/octopress))
- Personal blog on interactive design and my work portfolio.
- [80KV](http://80kv.com/)
([source](http://github.com/crossblaim/80kv-jekyll/tree/master)) -
Personal blog of Claudio Perez Gamayo, english and spanish.
- [George Ornbo](http://shapeshed.github.com/)
([source](http://github.com/shapeshed/shapeshed.github.com/)) - An
experimental site for George Ornbos open source code using HTML5,
CSS3 and JSON. Integrates with Lighthouse for ticketing.
- [BinaryAge](http://binaryage.com/) - Various open-source tools for
web developers (uses submodules for shared content).
- [jekyll.atog.be](http://jekyll.atog.be/) - Personal blog of Koen Van
der Auwera (prev version).
- [Relatively Early Development](http://relativelyearly.com/)
([source](http://github.com/relativelyearly/relativelyearly.github.com/tree))
- [Ali Polatel](http://alip.github.com/)
([source](http://github.com/alip/alip.github.com/tree/master))
- [Under the hat, a weblog written by 10to1](http://blog.10to1.be)
([source](http://github.com/10to1/10to1.github.com))
- [Dmitry Belitsky](http://belitsky.info/)
([source](http://github.com/dab/belitsky.info/tree/master)) - Worked
on Jekyll with Compass.
- [Michael Dwan](http://michaeldwan.com/)
([source](http://github.com/michaeldwan/michaeldwan.github.com)) -
Personal site and blog of Michael Dwan.
- [Marc Chung](http://blog.marcchung.com/)
([source](https://github.com/mchung/blog/tree))
- [AppDen](http://appden.com/)
([source](http://github.com/appden/appden.github.com))
- [Brandon Philips](http://ifup.org/)
([source](http://ifup.org/git/?p=ifup.git;a=summary))
- [Kaspar Schiess](http://blog.absurd.li/)
([source](http://github.com/kschiess/blog.absurd.li)) - Very minimal
theme, using a haml/sass enabled fork.
- [Joshua Poehls](http://www.zduck.com/)
([source](http://github.com/jpoehls/zduck-web))
- [Ben Ubois](http://benubois.com/)
([source](https://github.com/benubois/benubois.github.com))
- [Lukas Rieder](http://overbryd.github.com/)
([source](http://github.com/Overbryd/overbryd.github.com))
- [Claudio Baccigalupo](http://claudiob.github.com/)
([source](http://github.com/claudiob/claudiob.github.com/tree/master))
- My portfolio of Github source code projects.
- [Mislav Marohnić](http://mislav.uniqpath.com/)
([source](http://github.com/mislav/mislav.github.com)) - Programming
blog.
- [John Duff](http://jduff.github.com/)
([source](http://github.com/jduff/jduff.github.com))
- [iruel.net](http://iruel.net/) personal site and blog, fork of John
Duffs config ([source](http://github.com/sardaukar/iruel.net))
- [johng Blog](http://www.johng.co.uk)
([source](http://github.com/john-griffin/johng.co.uk/tree/gh-pages))
- Based on Toms original Jekyll with added compass+sass.
- [Benjamin Thomas](http://benjaminthomas.org/)
([source](http://github.com/bentomas/benjaminthomas-dot-org))
- [Mark Wunsch](http://markwunsch.com/)
- [Mark Olesen](http://olesenm.github.com/)
([source](http://github.com/olesenm/olesenm.github.com)) - Simple
blog with links to other github project pages.
- [Shape Shed](http://shapeshed.com/) - Portfolio and blog for
freelance web developer George Ornbo.
- [Sam Rosen](http://www.sammyrosen.com/) - Portfolio Website.
- [Kneatoh](http://eturk.github.com/)
([source](http://github.com/eturk/eturk.github.com)) - Ethan
Turkeltaubs Journal.
- [The Hypsometry Blog](http://blog.hypsometry.com/) - Christopher
Boones design and typography blog.
- [Domain51](http://domain51.com/)
([source](http://github.com/tswicegood/domain51.com/)) - Site for
tswicegoods business.
- [David Parker](http://davidwparker.com/) - Portfolio and Blog.
- [Mottr.am](http://mottr.am/)
([source](http://github.com/mottram/mottram)) - A weblog with
comments via Twitter hashtags.
- [kle•pas](http://klepas.org/)
([source](http://github.com/klepas/klepas.org/)) - Personal site of
Simon Pascal Klein.
- [Avand](http://avandamiri.com/) - Personal site and blog of Avand
Amiri.
- [m4n](http://m4n.github.com/)
([source](http://github.com/m4n/m4n.github.com/))
- [Aaron Kalin](http://www.martinisoftware.com/)
([source](http://github.com/martinisoft/martinisoft.github.com))
- [Bryan Goines](http://bry4n.ffiirree.com/)
([source](http://github.com/bry4n/bry4n.github.com))
- [Mutelight](http://mutelight.org/)
([source](http://github.com/fyrerise/mutelight)) - Blog for
engineer/developer Brandur Leach.
- [Vanity](http://vanity.labnotes.org/) - Experiment Driven
Development framework for Rails.
- [Alex Coles](http://alexbcoles.com/)
([source](http://github.com/myabc/myabc.github.com/))
- [Damien Mathieu](http://42.dmathieu.com/)
([source](http://github.com/dmathieu/dmathieu.github.com/))
- [Ruby on ZiGzAg](http://zigzag.github.com/)
([source](http://github.com/zigzag/zigzag.github.com/))
- [wulfovitch.net](http://wulfovitch.net/)
([source](http://github.com/wulfovitch/wulfovitch.net) /
[fork](http://github.com/tatey/jekylless)) - Personal blog covering
programming topics
- [SaForge](http://www.saforge.com/) - Personal blog of Emanuel-S (in
German).
- [Rack-Jekyll](http://github.com/bry4n/rack-jekyll) - Transform your
Jekyll application into Rack application ([Heroku
Demo](http://bry4n.heroku.com/)).
- [Drivemeup carpooling](http://drivemeup.github.com/)
([source](http://github.com/drivemeup/drivemeup.github.com)) -
Drivemeup Blog (English and French).
- [mojobojo](http://boj.github.com/)
([source](http://github.com/boj/boj.github.com)) - Simple personal
blog.
- [jouire.com](http://jouire.com/) - Personal blog.
- [algorithmique.net](http://algorithmique.net/) - Personal blog
(French).
- [senoj.net](http://www.senoj.net/)
([source](http://github.com/stephenjones/stephenjones.github.com)) -
Stephen Joness personal blog.
- [Levent Ali](http://purebreeze.com/) - Business and blog for
freelance technologist Levent Ali.
- [Codigo Ergo Sum](http://codigoergosum.com/)
([source](http://github.com/balinterdi/balinterdi.github.com)) -
Balint Erdis personal tech blog.
- [alpinegizmo.com](http://alpinegizmo.com/)
([source](http://github.com/alpinegizmo/alpinegizmo.com)) - David
Andersons personal blog.
- [Neil Grogan](http://neil.grogan.ie/)
([source](http://github.com/dueyfinster/dueyfinster.github.com)) -
Neil Grogans personal blog.
- [Golf Application Server Documentation](http://golf.github.com/)
([source](http://github.com/golf/golf.github.com)) - Documentation
for Golf app developers.
- [Jim Hansson](http://jimhansson.github.com/)
([source](http://github.com/jimhansson/jimhansson.github.com)) -
Personal blog.
- [Passing Curiosity](http://passingcuriosity.com/)
([source](http://github.com/thsutton/passingcuriosity.com/)) -
Personal blog with content about development and a smattering of
scepticism, reading, and education.
- [Michael Bensoussan](http://mickeyben.com/)
([source](http://github.com/mickey/mickeyben)) - Personal blog.
- [Jesse Storimers Bloggings](http://jstorimer.com/)
([source](http://github.com/jstorimer/jstorimer.com)) - Tech Blog.
- [DigitalSanctum.com](http://www.digitalsanctum.com/)
([source](http://github.com/digitalsanctum/ds)) - Software
development and other square topics.
- [Jekyll + 960.gs](http://code.btbytes.com/jekyll_960/index.html)
([source](http://github.com/btbytes/jekyll_960)) - 960.gs based
template for Jekyll. Uses good default fonts (Inconsolata for
monospace and Droid for headings).
- [Datakrup.com](http://www.datakrup.com/) - Ferhat Zibas personal
blog ([source](http://github.com/fero46/datakrup.com)) - Theme
inspired by textmate theme midnight.
- [Marko Anastasov](http://www.marko.anastasov.name/) - Personal site
and blog.
- [Juan Reyero](http://juanreyero.com/) - Site and blog written in
[Org-mode](http://orgmode.org/). The blog is exported to Jekyll
using [Org-jekyll](http://juanreyero.com/open/org-jekyll) .
- [Greater Skies](http://greaterskies.com/) - Multi-language
educational site written in [Org-mode](http://orgmode.org/).
[Source](http://github.com/juanre/Greater-Skies) .
- [Junto al camino](http://juntoalcamino.com/) - Personal blog in
Spanish.
- [dumb-bunny.com](http://www.dumb-bunny.com/)
([source](http://github.com/pui/pui.github.com)) - Erica Kwans
personal blog.
- [The Ruby Reflector - Jekyll](http://rubyreflector.com/Jekyll) -
Jekyll News.
- [Christopher Sexton](http://fuzzymonk.com/)
([source](http://github.com/csexton/bai_si_bu_jie))
- [Codeography.com](http://codeography.com/)
([source](http://github.com/csexton/csexton.github.com))
- [Jim Myhrberg](http://jimeh.me/)
([source](http://github.com/jimeh/jimeh.me)) - Personal site and
blog, using two jekyll projects together. One for the site, and one
for the blog. Building and deployment done via a few simple rake
tasks.
- [Sven Dahlstrand](http://svendahlstrand.se/) - Sven Dahlstrands
personal blog in Swedish.
- [skim](http://skim.la/) ([source](http://sl4m.github.com/)) - Ruby,
rails on windows environment.
- [Zach Holman](http://zachholman.com/)
([source](http://github.com/holman/holman.github.com)) -
holman blogs on Apple, Ruby, and startups. And bank robberies.
- [MHFS](http://mhfs.com.br/) - Marcelo Silveiras personal website/blog.
- [Antis World](http://anti.cute-ninjas.com/) ([source](http://github.com/AndreasOM/anti.cute-ninjas.com)) - andreasOM is slowly importing 10 years worth of random blabbering to jekyll.
- [GnuVision Blog](http://pramode.net/) - Pramode C.Es personal
website/blog.
- [AudioBox.fm](http://www.audiobox.fm/) - Your media library in the
cloud.
- [Sideburns.eu](http://www.sideburns.eu/)
([source](http://github.com/julienXX/Sideburns.eu)) -
julienXX blog on Ruby, NoSQL and random whatnot.
- [Study Deutsch](http://studydeutsch.com/) - Resources to teach yourself German.
- [Travis Jeffery](http://travisjeffery.com/) - Personal weblog.
- [27smiles](http://27smiles.com/) ([source](http://github.com/RichGuk/27smiles) and [fork](http://github.com/RichGuk/jekyll)) - Personal blog of RichGuk.
- [Ryan Clough](http://becomingaweso.me/)
([source](http://github.com/RyanCacophony/becomingaweso.me)) -
Personal Website and blog of Ryan Clough (on code, linux, music, and
dance).
- [Andrew Heiss](http://www.andrewheiss.com/)
([source](http://github.com/andrewheiss/ah-jekyll) / [Jekyll
fork](http://github.com/andrewheiss/jekyll)) - Custom fork that
allows for custom Ruby filters in /\_lib/, making tag pages simple.
Also has support for caching Pygments.Uses a rakefile for deploying
and building.
- [Which Ruby CMS Should I Use?](http://whichrubycmsshouldiuse.com/)
([source](http://github.com/ychaker/whichrubycmsshouldiuse.com)) - A
project to help understand the Ruby CMS ecosystem.
- [Ronin](http://ronin-ruby.github.com/)
([source](http://github.com/ronin-ruby/ronin-ruby.github.com/)) -
Project website for Ronin, a Ruby platform for exploit development
and security research.
- [Youssef Chaker](http://www.youhhoo.com/)
([source](http://github.com/ychaker/youhhoo.com)) - Personal Site
and Blog.
- [Kodfabrik Blog](http://io.kodfabrik.com/)
([source](http://github.com/azer/io.kodfabrik.com),
[posts](http://github.com/azer/posts))
- [Anthony Short](http://anthonyshort.com.au)
([source](http://github.com/anthonyshort/anthonyshort.com.au)) -
Personal blog. Uses Compass.
- [Wael Nasreddine](http://wael.nasreddine.com/) (forked from George
Ombo)
- [ESWAT](http://eswat.ca/)
([source](http://github.com/eswat/eswat.github.com)) - Simple blog
and stuff about me.
- [testomatic.co.uk](http://testomatic.co.uk/)
([source](http://github.com/testomatic/site)) - Blog on web
development and programming.
- [Bike to work](http://biketowork.org.uk/) - Site about cycle
commuting.
- [Aktagon Ltd.](http://aktagon.com/) - Aktagon Ltd. (Uses this
[Jekyll delicious
plugin](http://github.com/christianhellsten/jekyll-plugins)).
- [sem4r](http://www.sem4r.com/) - Site about sem4r ruby library.
- [iZ-smart.net IRC Network](http://www.iZ-smart.net/) - Websites of
the 2nd largest German IRC Network.
- [Provence Linux User Group](http://plugfr.org/)
([source](http://github.com/plug/plugfr.org/)) - Website of a french
LUG with posts, categories, RSS feed, sitemap, Googe CSE…
- [Squeryl](http://squeryl.org/)
([source](http://github.com/max-l/Squeryl/tree/gh-pages)) - A Scala
DSL for interacting with databases (Scala Query Language)
- [Jeff Kreeftmeijer](http://jeffkreeftmeijer.com/)
([source](http://github.com/jeffkreeftmeijer/jeffkreeftmeijer.com))
- [Snort a Sprocket](http://smerpology.org/sprocket/)
([source](http://bitbucket.org/smerp/snort_a_sprocket/)) - personal
blog of smerp.
- [The iNK blot](http://novemberkilo.com/)([source](http://github.com/novemberkilo/novemberkilo.github.com))- personal blog of novemberkilo.
- [Coding in the Rain](http://ascarter.net/)
([source](http://github.com/ascarter/ascarter.github.com/)) -
personal blog of ascarter.
- [Al3xandr3](http://al3xandr3.github.com/)([source](http://github.com/al3xandr3/al3xandr3.github.com))
- [ruddzw.com](http://www.ruddzw.com/)([source](http://github.com/ruddzw/ruddzw.com))- personal blog of ruddzw.
- [Seattle Xcoders](http://seattlexcoders.org/)
([source](http://github.com/xcoders/xcoders.github.com)) - Seattle
Xcoders Mac developer group web site.
- [Ginzametrics SEO Dashboard](http://ginzametrics.com/) - SEO
Dashboard for marketing reporting and analytics.
- [listbot.org](http://listbot..org/) - personal blog of polera.
- [Developing Ego](http://developingego.com/)- personal and dev blog of ltw.
- [jain basil aliyas.](http://jainbasil.net/)
([source](http://github.com/jainbasil/jain.basil.aliyas.blog)) -
Jain Basil Aliyass personal blog/website.
- [Piotr Sarnacki](http://piotrsarnacki.com/) - Blog of Piotr
Sarnacki, [hosted on
github](http://github.com/drogus/drogus.github.com) .
- [Infochimps Data API](http://api.infochimps.com/) - Front-end and
documentation for the API of infochimps.
- [Realized: A blog about stock portfolio management](http://blog.realized-app.com/)- Based on Henriks fork; blog for [realized-app.com](http://realized-app.com/.)
- [Utilise.ca](http://utilise.ca/)([source](http://github.com/remiprev/utilise.ca))- A french-canadian version of [_The Setup_](http://usesthis.com/.)
- [Dan Loewenherz](http://dlo.github.com/)([source](http://github.com/dlo/dlo.github.com))- Personal blog of dwlz,
influenced by [mojombo.github.com](http://mojombo.github.com/).
- [Tony Landis](http://tonylandis.com/)
([source](http://github.com/tony-landis/tony-landis.github.com)) -
Personal blog of
tony_landis based on [mojombo.github.com](http://mojombo.github.com/)for now.
- [Michael Monteleone](http://michaelmonteleone.net/) ([source](http://github.com/mmonteleone/michaelmonteleone.net))- Personal site of Michael Monteleone, standing on all kinds of shoulders of jekyll giants.
- [dhatNyeng blog](http://alinux.web.id)([source](http://github.com/alinuxwebid/alinuxwebid.github.com))- Personal blog of alinuxwebid
- based on Ascarters
[fork](http://github.com/ascarter/ascarter.github.com/).
- [grepthepipe](http://grepthepipe.com/) - Personal blog of leifg.
- [NiftySchool language school administration software blog](http://blog.niftyschool.com/)- Blog of the NiftySchool platform, includes disqus comments.
- [Skroutz.gr Developer blog](http://team.skroutz.gr/)- Developer Blog of Skroutz.gr, the greek price comparison site.
- [Fabrizio Fantini](http://www.fantini.name)- Personal website and blog of Fabrizio Fantini.
- [Ben Vinegar](http://benv.ca/)
- [Mihail Szabolcs](http://szabster.net/)([source](http://github.com/icebreaker/icebreaker.github.com))
- [Harlan T Wood](http://www.harlantwood.net/)- Enlightened technology, spiritual transhumanism, open source screenplays...
- [Lake Denman](http://lakedenman.com/)([source](http://github.com/ldenman/lakedenman.com))
- [Ben Hoskings](http://benhoskin.gs/)([source](http://github.com/benhoskings/benhoskin.gs))
- [Johnson Page](http://johnsonpage.org/)([source](http://github.com/jwpage/johnsonpage-blog))
- [Atompad](http://atompad.com/)([source](http://github.com/johnantoni/johnantoni.github.com))- Based on mojombo's site, slowly adding to it other stuff, ported from red91.com.
- [Flood Magazine](http://floodmagazine.com/)
- [Brighter Planet](http://brighterplanet.com/)- Runs its blog [Safety in Numbers](http://numbers.brighterplanet.com/)([source](http://github.com/brighterplanet/numbers))and its static [developer site](http://brighterplanet.github.com/)([source](http://github.com/brighterplanet/brighterplanet.github.com))with Jekyll.
- [Emanuel Sprosec](http://www.emanuel-s.com/)- Personal portfolio.
- [unwiredcouch.com](http://unwiredcouch.com/)([source](http://github.com/mrtazz/blog))
- [Scott Tesoriere](http://tesoriere.com/)([source](http://github.com/scottkf/tesoriere.com))- Tags with spaces.
- [Journal-S](http://muli.cc/)- Personal blog by Emanuel-S / german.
- [Danish Khan](http://danishkhan.org/)([source](http://github.com/danishkhan/danishkhan.github.com))- I blog about ruby, rails, sinatra and startup culture. I am using the octopress blogging framework.
- [Amin Astaneh](http://aminastaneh.net/)- Personal site and weblog. Formerly Wordpress.
- [Develop With Passion® - Jean-Paul S. Boodhoo](http://blog.developwithpassion.com/)- I blog about coding, family, faith, and how to encourage others to develop with passion!!.
- [Crowd Interactive's Tech Blog](http://blog.crowdint.com/)- ([source](http://github.com/crowdint/blog.crowdint.com))- A Blog about Ruby, Rails, gems and git.
- [Brilliant Corners](http://brilliantcorners.org/)- ([source](http://github.com/billturner/brilliantcorners.org))
- [Hundefutter](http://www.zoo-keller.de/)- Hundefutter - weblog with jekyll & fastercsv)
- [Auto Ersatzteile](http://autoersatzteile.vehicle-data-processor.de/)- Car parts -> jekyll, fastercsv & ar.
- [GeekUp](http://geekup.org/)([source](http://github.com/AndrewDisley/GeekUp))- Events.
- [Peter Hajdu](http://peterhajdu.github.com/)([source](http://github.com/peterhajdu/peterhajdu.github.com))- Personal blog.
- [yeban's weblog](http://yeban.in/)([source](http://github.com/yeban/weblog))- Personal blog.
- [David Sanson](http://www.davidsanson.com/)([source](http://github.com/dsanson/dsanson.github.com))- Personal website and course webpages.
- [Bauria](http://www.bauria.com/en/)- Small startup website.
- [Tigraine's weblog](http://www.tigraine.at/)([source](http://github.com/tigraine/www.tigraine.at))- My weblog about programming.
- [BetterVPS.net](http://www.bettervps.net/)([source](http://repo.no/better/site.git).)Xen VPS hosting for geeks.
- [Bullshit mode on](http://zahardzhan.github.com/)- Russian blog about Emacs and dynamic languages.
- [Jon Buys](http://ibuys.github.com/)- ([source](http://github.com/ibuys/ibuys.github.com))
- [zerothabhishek](http://zerothabhishek.github.com/)- ([source](http://github.com/zerothabhishek/zerothabhishek.github.com))
- [Monkey Snatch Banana](http://www.monkeysnatchbanana.com/)- ([source](http://github.com/SeanTAllen/MonkeySnatchBanana.com))- Personal blog that integrates compass via rake.
- [Justin Woodbridge](http://siberianfaucet.com/)- ([source](http://github.com/glitterfang/glitterfang.github.com))
- [Greg Heartsfield](http://gregheartsfield.com/)- Personal blog.
- [Matthias Endler](http://www.matthias-endler.de/)([source](http://github.com/mre/mre.github.com))- Blog created by purple unicorns with lots of open source love.
- [Jason West](http://jlwestsr.com/)([source](http://github.com/jlwestsr/jlwestsr.github.com))- A technical blog by Jason L. West, Sr. that uses Jekyll-Bootstrap for it's layout.
- [dotlesscss Project Site](http://www.dotlesscss.org/)
- [Romain Dorgueil](http://romain.dorgueil.net/)- Technical blog migrated to jekyll to keep control on my content.
- [Mark Szymanski](http://mrminimalist.nfshost.com/)
- [Pradeep Gowda's Code Blog](http://code.btbytes.com/)
- [Hacker News Resources](http://hnresources.com/)([source](http://github.com/yatsyk/HNResources/tree/gh-pages))- Directory of resources related to Hacker News.
- [Ryan McGeary](http://ryan.mcgeary..org/)([source](https://github.com/rmm5t/ryan.mcgeary.org))- Personal site and programming blog.
- [宋文强](http://mochidino.github.com/)([source](https://github.com/mochidino/mochidino.github.com))- CODING MACHINE.
- [The prometheus Image Archive](http://prometheus-bildarchiv.de)([source](https://github.com/prometheus-ev/promhp))
- [Bjorn Arneson](http://bjornarneson.com/)([source](https://github.com/bjornarneson/bjornarneson.github.com))- Personal website
- [Nutshell.com](http://www.nutshell.com/)- Nutshell CRM's company website. Uses Nutshell's [Less.js Jekyll Plugin](https://gist.github.com/642739).
- [Jason Graham](http://jason.the-graham.com/)([source](https://github.com/jasongraham/blog))- Personal blog. Uses the [kramdown](http://kramdown.rubyforge.org/)Markdown interpreter. Color scheme based on [Zenburn](http://slinky.imukuppi.org/zenburnpage/.)
- [Christopher H. Laco](http://chrislaco.com/)([source](https://github.com/claco/claco.github.com))- Converted from MT txt file w/converted comments to Disqus + Jekyll/Jekyll.vim/Liquid patches.
- [A Developer's Diary](http://foobarnbaz.com/)([source](https://github.com/semk/semk.github.com))- A jekyll powered blog by Sreejith Kesavan
- [Brian Clapper's blog](http://brizzled.clapper.org/)([source](https://github.com/bmc/brizzled))- [personal web site](http://www.clapper.org/)and [company web site](http://www.ardentex.com/.)
- [MxS' area](http://mxs.buffout..org/)([source](https://github.com/aimxhaisse/mxs-area))- Personal blog.
- [saberma](http://saberma.me/)([source](https://github.com/saberma/saberma.github.com))- (马海波) Personal blog in China.
- [Clint Shryock's super awesome 'site/blog'](http://ctshryock.com/)([source](https://github.com/ctshryock/ctshryock.com))
- [G33k](http://gauthamponnu.com/g33k)- Gautham Ponnu's geek blog.
- [Some Ruby Stuff](http://somerubystuff.com/)([source](https://github.com/guilleiguaran/somerubystuff.com))- Personal and Programming Blog.
- [derrickj's website](http://www.hillcrestlab.com/)([source](https://github.com/derrickj/hillcrestlab.com))- My site/blog. Has an Atom feed and has a few posts with published time specified.
- [MetaSkills.net](http://metaskills.net/)([source](https://github.com/metaskills/metaskills.net))
- [Corin Cole](http://www.corincole.com/)([source](https://github.com/corincole/corincole.com))- Personal blog/profile.
- [Budi Dharmawan](http://log.budi.ca)- Life Log.
- [Alan Hecht](http://alanhecht.me/)([source](https://github.com/aghecht/alanhecht.me))- Personal site and technical blog.
- [Veraisvoboda.info](http://veraisvoboda.info/)- The project in witness for Freedom of Conscience in Russia. Powered by Jekyll/Sinatra/Rack/Heroky combination.
- [\_layout - themes for jekyll](http://www.layouts-the.me/)([source](https://github.com/studiomohawk/_layouts))- A theme gallery for jekyll powered websites. You can download themes for jekyll via github for free.
- [Luca Pette](http://lucapette.com/)([source](http://github.com/lucapette/lucapette.github.com))
- [Seyi Ogunyemi](http://micrypt.com/)([source](http://github.com/micrypt/micrypt.github.com))
- [PaulStamatiou.com](http://paulstamatiou.com/)- Blog about technology, startups and gadgets.
- [TJ Stein](http://tjstein.com/)([source](https://github.com/bummercloud/tjstein.com))
- [Dave Lim](http://dlimiter.net/)([source](https://github.com/dlimiter/dlimiter.net))
- [Oto Brglez FERI](http://feri-faks.opalab.com/)([source](https://github.com/otobrglez/feri-faks.opalab.com))- Personal collage projects and assignments.
- [Neil Ang](http://neilang.com/)- Personal blog.
- [Open Source Life](http://www.juev.ru/)([source](https://github.com/Juev/juev.ru))- Personal site and technical blog in Russian.
- [Denis Evsyukov](http://denis.evsyukov.org/)([source](https://github.com/Juev/denis.evsyukov.org))- Personal Page.
- [Satori Tea](http://satori-tea.ru/)- Tea Satori project.
- [Victor Diaz](http://victordiaz.github.com/)- Portfolio.
- [David Collantes](http://collantes.us/)- Personal weblog.
- [Adam Coffman](http://thecoffman.com/)([source](https://github.com/thecoffman/thecoffman.github.com))- Personal and technical blog.
- [Sparanoid](http://sparanoid.com/)([source](https://github.com/sparanoid/sparanoid.com))- Tunghsiao Liu (劉通曉) personal blog about web designs, freehand drawings and other interesting gadgets.
- [Kws Blog](http://kwpolska.co.cc/)([source](https://github.com/Kwpolska/kwsblog))- The weblog of a Pole.
- [Gueorgui Tcherednitchenko](http://gueorgui.net/)- Photographer, Web designer & developer.
- [Russell Harmon](http://eatnumber1.com/)([source](https://github.com/eatnumber1/eatnumber1.com))- Personal site and technical blog.
- [Tom Bell](http://tomb.io)([source](http://github.com/tombell/tombell.github.com))- Personal site and blog.
- [Mariusz Nosiński](http://marioosh.5dots.pl)- Developer's blog (in polish).
- [AtlasHost techblog](http://blog.atlashost.eu/)- On JIRA, Java, FreeBSD and open source.
- [Gonzalo Rodríguez](http://nerian.es)([source](https://github.com/Nerian/nerian.github.com))- Freelance Ruby Developer.
- [Danny Bartlett](http://dannybartlett.co.uk/)- Personal site and Mobile / Web Technology blog.
- [Coffee Comrade](http://coffeecomrade.com/)([source](https://github.com/haircut/coffeecomrade.com))- Coffee reviews, tasting notes and commentary.
- [Exolucere](http://exolucere.ca/)([source](https://github.com/robru/robru.github.com))- Robert Park's photography portfolio.
- [redbluemagenta](http://redbluemagenta.com/)([source](https://github.com/cparedes/redbluemagenta-new))- Christian Paredes's system administration blog.
- [yelyah](http://yelyah.com/)([source](https://github.com/hayley/yelyah.com))- singer/songwriter posting new music everyday.
- [Vern's Blog](http://du1abadd.org/)([source](https://github.com/s5unty/du1abadd.org))- Based on Alip's [fork](https://github.com/alip/alip.github.com.)
- [c00kiemon5ter's masterplan](http://c00kiemon5ter.github.com/)([source](https://github.com/c00kiemon5ter/c00kiemon5ter.github.com))- The life of a cookie.
- [PHPTracker - seed server](http://php-tracker.org/)([source](https://github.com/tcz/PHPTracker/tree/gh-pages))
- [Aaron Beckerman](http://www.aaronbeckerman.com/)([source](https://github.com/ab9/www.aaronbeckerman.com))- Personal site and blog.
- [Miloš Hadžić](http://miloshadzic.com/)([source](http://github.com/miloshadzic/miloshadzic.github.com))- Blog and personal site.
- [Swedish Pixels](http://swedishpixels.com/)- Writings.
- [Georges Auberger](http://auberger.com/)([source](https://github.com/georges/auberger.com))- Blog and personal site.
- [scheibo.com](http://scheibo.com/)([source](https://github.com/scheibo/scheibo.github.com))and [kirkscheibelhut.com](http://kirkscheibelhut.com)- Both blogs built upon the basic structure provided by [static](https://github.com/scheibo/static)and inspired heavily by [jeffkreeftmeijer.com](http://jeffkreeftmeijer.com/.)
- [sparkjs.co.uk](http://sparkjs.co.uk)([source](https://github.com/Wolfy87/sparkjs.co.uk))- Documentation and downloads for the Spark JavaScript library.
- [Rioki's Corner](http://www.rioki.org/)([source](https://github.com/rioki/www.rioki.org))- Sean “Rioki” Farrell's personal website and blog.
- [Jtalk Smalltalk](http://jtalk-project..org/)([source](https://github.com/NicolasPetton/jtalk))- Website of the Jtalk Smalltalk project.
- [music-as-data](http://mad.emotionull.com/)([source](https://github.com/jonromero/music-as-data))- Website of the M.A.D. project, music generation in Clojure.
- [A Day Without Chocolate](http://blog.hardikr.com/)([source](https://github.com/hardikr/hardikr.github.com))- Personal Blog.
- [Georges Duplessy](http://gduplessy.com/)([source](https://github.com/gduplessy/gduplessy.github.com))- Personal blog and portfolio.
- [Jisedai 次世代](http://jisedai.heroku.com/)([source](https://github.com/Vayn/vayn.github.com))- Personal Blog, based on Ben Ubois's [fork](https://github.com/benubois/benubois.com).
- [atomicules.co.uk](http://atomicules.co.uk/)([source](https://github.com/atomicules/atomicules.github.com))- Personal Blog, with Tumblr-inspired post types and archive page. Uses default Jekyll on Github Pages.
- [Stefano Verna](http://stefanoverna.com/)([source](https://github.com/stefanoverna/stefanoverna.com))- Personal blog.
- [Sanjit Saluja](http://sanjitsaluja.com/)([source](https://github.com/loopwhile1/SanjitSaluja.com))- Personal Website and Blog.
- [Philippe Mongeau](http://phmongeau.github.com/)([source](https://github.com/phmongeau/phmongeau.github.com))- Personal Blog and portfolio.
- [Robert Seaton](http://www.rs.io)([source](https://github.com/robertseaton/rs.io))- Archive of written works.
- [Kinnetica](http://www.kinnetica.com/)([source](https://github.com/kinnetica/kinnetica.com))- Michael Levin's personal website and blog about web development.
- [spoonfullofpoo.com](http://www.spoonfullofpoo.com/)([source](https://github.com/kenmickles/spoonfullofpoo.com))- spoonfullofpoo.com produces lo-fi Internet TV for the discerning viewer. Jekyll produces our blog.
- [The Linux Alternative Project](http://www.linuxalt.com/)
- [The Setup](http://usesthis.com/)([source](http://github.com/waferbaby/usesthis/))- A bunch of nerdy interviews.
- [mattaust.in](http://mattaust.in/)([source](http://github.com/maafy6/mattaust.in))
- [Shallow Thoughts](http://carlosedp.com/)([source](https://github.com/carlosedp/carlosedp.github.com))- Carlos Eduardo's personal blog about tech, development and music.
- [CrowdConf2011](http://crowdconf2011.com/)- Home of the first and leading conference on crowdsourcing and the future of distributed work.
- [Leto Labs](http://letolabs.github.com/)([source](http://github.com/letolabs/letolabs.github.com/))- New PDX-based startup founded by Jonathan "Duke" Leto
- [Morgan Sutherland's Portfolio](http://msutherl.net/)- Responsive environment designer.
- [John Tornow](http://johntornow.com/)- Personal photography blog.
- [Ted Kulp](http://tedkulp.com/)([source](https://github.com/tedkulp/jekyll-template/))- Personal blog about code, tech and photography using custom Jekyll [fork](https://github.com/tedkulp/jekyll)
- [XCSoar](http://www.xcsoar..org/)([source](http://git.xcsoar.org/cgit/master/website.git/))- Open Source Aviation Application (includes generation of [trac](http://trac.edgewall.org/)and [phpBB3](http://www.phpbb.com/)templates).
- [Does Ideas](http://doesideas.com/)([source](https://github.com/mlanza/doesideas/))- Curated blog by a Rubyist.
- [wikimatze](http://wikimatze.de)- Personal Blog.
- [r00tshell](http://www.r00tshell.com/)- Justin Mazzi's Blog.
- [Madhur](http://madhur.github.com)/
([Source](https://github.com/madhur/madhur.github.com))
- Personal / technology / coding blog by Madhur.
- [Bitfluxx](http://bitfluxx.com) ([source](https://github.com/fluxx/bitfluxx.com)) - Software engineer blog.
- [Topguest
Blog](http://blog.topguest.com)/
([source](https://github.com/Topguest/topguest.github.com)) - Topguest company blog.
- [Nathan McGinness](http://njmcgee.com) ([source](https://github.com/njmcgee/njmcgee.github.com)) - Personal site and portfolio.
- [/dev/alip]([http://alip.github.com](http://alip.github.com)/) ([source](https://github.com/alip/alip.github.com)) - Personal weblog of Ali Polatel.
- [Lee Jarvis](http://lee.jarvis.co) ([source](https://github.com/injekt/injekt.github.com)) - Personal Blog
- [Happy
Hacking](http://dyang.github.com)/
([source](https://github.com/dyang/dyang.github.com)) - Derek Yangs personal Blog about agile software development,
continuous integration and software configuration management.
- [Peteris
Erins](http://peteriserins.com)/
([source](https://github.com/Pet3ris/peteriserins.com)) - Blog & Personal Landing Page.
- [Dropshado.ws]([http://dropshado.ws](http://dropshado.ws)/) ([source](https://github.com/desandro/dropshado.ws/))
- [Lorenz
Kitzmann](http://lorenzkitzmann.de)
([source](https://github.com/lorenzk/lorenzkitzmann.de)) - Professional home page and blog.
- [Jentrata](http://jentrata.org) ([source](https://github.com/jentrata/jentrata.github.com)) - Open Source B2B Gateway for AS2 and ebXML.
- "\v/ julian
gruber":[http://juliangruber.com](http://juliangruber.com)/ -
Personal site and blog.
- [fmeyer.org]([http://fmeyer.org](http://fmeyer.org)/) ([source](https://github.com/fmeyer/fmeyer.org)) - Personal blog, or kind off.
- [tristanoneil.com]([http://tristanoneil.com](http://tristanoneil.com)/) ([source](https://github.com/tristanoneil/tristanoneil.github.com/)) - Personal blog, web presence.
- [Tuan Anh Tran](http://tuananh.us) - Personal
blog, web presence (a fork of[Julian
Yap](http://julianyap.com)/ with a theme,
ported from Tumblr).
- [onycloud.com]([http://onycloud.com](http://onycloud.com)/) -
onycloud company website, blog.
- [chadround.co.uk]([http://chadround.co.uk](http://chadround.co.uk)) - Personal site and blog.
- [Scriptish.org]([http://scriptish.org](http://scriptish.org)/) ([source](https://github.com/scriptish/scriptish.github.com)) - Home for Scriptish a Firefox add-on to run user scripts. Custom
fork with support for haml layouts, sass support from plugins, and
pandoc markdown.
([source](https://github.com/serenium/jekyll) ([source](https://github.com/shenfeng/shenfeng.me)) - Personal site and blog
- [BauCloud.com](http://www.baucloud.com/?pk_campaign=Github&pk_kwd=jekyll) - Cloud computing for the construction management. Website hosted at
github.
- [Alex Ganov](http://aganov.github.com) ([source](https://github.com/aganov/aganov.github.com)) - Personal site and blog.
- [CocoaHeads
Siegen](http://cocoaheads.informatik.uni-siegen.de)
([source](https://github.com/bmeurer/cocoaheads.informatik.uni-siegen.de)) - Website of the CocoaHeads Siegen chapter.
- [Benedikt
Meurer](http://benediktmeurer.de)
([source](https://github.com/bmeurer/benediktmeurer.de)) - Personal website and blog.
- [Rodrigo Alves
Vieira](http://www.rodrigoalvesvieira.com)/
- Personal Blog.
- "Dan
Foreman-Mackey":[http://dfm.github.com](http://dfm.github.com)/
([source](https://github.com/dfm/dfm.github.com)) - Personal blog with comments via GitHub forks.
- [Nick
Knowlson](http://nickknowlson.com)/
([source](https://github.com/nickknw/nickknowlson.com)) - Personal website with blog and project pages.
- [TechTinkering](http://techtinkering.com) ([source](https://github.com/lawrencewoodman/techtinkering.com)) - A Blog About Retro Computers, Programming, Open Source and General
Technical Tinkering.
- [Greg Osuri](http://gregosuri.com) ([source](https://github.com/gosuri/gosuri.github.com))
- [Alistair MacLeod](http://mm0hai.net) ([source](https://github.com/anm/anm.github.com)) - Programming, amateur radio, life. A minimal layout with disqus and
sharing buttons.
- [Jen Hanni](http://wickerbox.net) ([source](https://github.com/wicker/wicker.github.com)) - Over a hundred posts in the project portfolio and world travel
photo gallery of an airplane and hardware geek.
- [Prasanna N](http://www.nprasanna.com) - Personal Blog (forked
from[holman](https://github.com/holman/holman.github.com).) - [jnrbsn.com](http://jnrbsn.com/)([source](https://github.com/jnrbsn/jnrbsn.com))- Personal website and blog of Jonathan Robson.
- [Princeton Roaring 20](http://www.princetonroaring20.com/)([source](https://github.com/dskang/princetonroaring20.com))- Website of Roaring 20, a co-ed a cappella group at Princeton University. Built using compass and sass.
- [YOLK](http://yolk.cc)([source](https://github.com/yyolk/yolkportfolio))- Portfolio of Joseph Chiocchi.
- [Jonathan Cremin](http://crem.in)([source](https://github.com/kudos/crem.in))- Personal site of Jonathan Cremin.
- [Sergey Karayev](http://sergeykarayev.com/)([source](https://github.com/sergeyk/website))- Personal site of a graduate student in AI.
- [Thomas Mango](http://thomasmango.com/)([source](https://github.com/tsmango/thomasmango.com))- Personal site of Thomas Mango.
- [robbie/trencheny](http://robbie.io)([source](https://github.com/robbiet480/robbie.io))- Braindumping grounds for Robbie Trencheny. Features Disqus, Facebook Like/Send, works with iPhone.
- [Thomas Kerpe](http://toke.de)([source](https://github.com/toke/toke.github.com))- Personal site and blog.
- [Marcin Pietraszek](http://marcin.pietraszek.pl)([source](https://github.com/kbl/kbl.github.com))- Personal site of Marcin Pietraszek hosted on github.
- [Eli Naeher](http://flyoverblues.com/)([source](https://github.com/enaeher/fb))- Personal blog.
- [Philip Thrasher](http://philipthrasher.com/)- Personal blog.
- [jeremy.tagada.hu](http://jeremy.tagada.hu)([source](https://github.com/jeherve/jeherve.github.com))- Personal blog (forked from [Jekyll Skeleton](https://github.com/jeherve/jekyll-skeleton).)
- [Ellis Berner](http://ellisberner.com/)([source](https://github.com/maletor/maletor.github.com))- Blog and portfolio.
- [Apertu.re](http://Apertu.re)- My Experience Through The Lens - Blog.
- [DirectStupid.net](http://directstupid.net([source](https://github.com/hongguang/hongguang.github.com))-) A chemist thinks in open.
- [danielsmiller.com](http://www.danielsmiller.com([source](https://github.com/jazzdan/danielsmiller.com))-) Dan Miller's personal blog (modified from [Jekyll Skeleton](https://github.com/jeherve/jekyll-skeleton).)
- [The Setup](http://www.usesthis.com/)([source](http://www.github.com/waferbaby/usesthis/))- Nerdy interviews with nerds to like to nerd it up nerdily.
- [Fuse4X](http://fuse4x..org/)([source](https://github.com/fuse4x/fuse4x.github.com))- Fuse API implementation for MacOSX.
- [ArunRocks](http://arunrocks.com/)([source](https://github.com/arocks/arunrocks))- Arun Ravindran's personal blog using tags for related pages.
- [Chris Christensen](http://imetchrischris.com/)
- [Jigar Patel](http://jigarpatel.in)([source](http://github.com/jagira/jagira.github.com))- Personal blog.
- [David Lynch](http://davidlynch.org/)([source](http://github.com/kemayo/davidlynch.org))- Blog and website for David Lynch. Meddles with pagination, tags, and related posts. Includes a complete port of the WordPress toolbox theme, if anyone wants to reuse their styles with it.
- [Carl Groner](http://carlgroner.me/)([source](https://github.com/cgroner/cgroner.github.com))- Personal Site.
- [Robert Boloc](http://robertboloc.github.com/)([source](https://github.com/robertboloc/robertboloc.github.com))- Blog & Playground.
- [Dented Triangle](http://dentedtriangle.com/)([source](https://github.com/dentedtriangle/blog))- Personal, Projects & all things rock climbing.
- [Alex Lande](http://alexlande.com/)([source](https://github.com/lawnday/alexlande.com))- Blog & Portfolio.
- [James Moss](http://jamesmoss.co.uk)([source](https://github.com/jamesmoss/jamesmoss.github.com))- Personal blog.
- [Stéphane R. Richard](http://www.zanshine.com/)([source](https://zanshine.github.com/zanshine/zanshine-jekyll-website)) - French CG Artist, Musician and Programmer.
- [Restfuse](http://www.restfuse.com/)
([source](https://github.com/eclipsesource/restfuse/tree/gh-pages))
- An open-source JUnit extension for automated HTTP/REST Tests.
- [OpenideaL](http://www.openidealapp.com/)
([sorce](https://github.com/linnovate/openidealapp/tree/gh-pages)) -
Landing page of OpenideaL - an open source idea management system,
powered on Drupal 7.
- [krig](http://tusk.se)
([plugins](https://github.com/krig/jekyll-plugins)) - Personal Site.
- [CodeRetrear Warsaw](http://coderetreat-warsaw.heroku.com/) - Warsaw
page of Global day of Code Retreat (pl).
- [wrug.eu](http://wrug.eu/) - Warsaw Ruby Users Group blog (pl).
- [abhidsm](http://abhidsm.github.com/)
([source](https://github.com/abhidsm/abhidsm.github.com)) - Personal
Blog.
- [alt.pathawks.com](http://alt.pathawks.com/)
([source](https://github.com/pathawks/pathawks.github.com)) -
Personal blog. Hosted on GitHub. Pure Jekyll with custom template.
- [MoveToArctic.com](http://movetoarctic.com/)
([source](https://github.com/kevinrenskers/movetoarctic.com/tree/gh-pages))
- Personal blog about life in Iceland. Hosted on GitHub. Built with
Bootstrap and Less.
- [The Arcanaeum](http://www.arcanaeum.com/)
([source](https://github.com/spilth/arcanaeum)) - The Arcanaeum
contains all the books of Skyrim in a simple, clean format for easy
reading on your iPad, iPhone, Android devices and laptop.
- [Sebastian G&uuml;nther](http://sebastianguenther.org/) - Personal
webpage and blog of a computer scientist researching DSLs in Ruby,
Python, and Scala.
- [Varibru Configuration Languages](http://soft.vub.ac.be/varibru/) -
Landing page of a research project about software variability,
explaining why software configuration languages help to provide mor
variants for more customers.
- [Hacker Monthly](http://hackermonthly.com/) - Print magazine of
Hacker News.
- [Lim Cheng Soon](http://chengsoon.com/) - Personal Blog.
- [Akash Garg](http://akashkgarg.com/) - Personal site of a student of
computer science, entrepreneurship and life.
- [Minimalist theme](http://stephan83.github.com/)
([source](https://github.com/stephan83/stephan83.github.com) /
[instructions](http://stephan83.github.com/12-07-2011/use-this-theme-on-github.html))
- [Alexcp.com](http://alexcp.com/)
([source](https://github.com/alexcp/alexcp-blog)) - Personal Blog.
- Flatterline
([source](https://github.com/flatterline/flatterline.com)) - A [Ruby
on Rails development company](http://flatterline.com/) website and
blog. Includes a few custom [Jekyll
plugins](https://github.com/flatterline/jekyll-plugins) written
specifically for company websites (e.g., project portfolio, team
page, etc.).
- [Nebans notebook](http://neban.github.com/)
([source](http://github.com/neban/neban.github.com)) - Personal
site, hosted at Github.
- [ImPuas blog](http://impua.info)
([source](https://github.com/pua/pua.github.com)) - (Geeks get laid,
Chiness blog, 中文博客).
- [Ganz-Sicher.Net](http://ganz-sicher.net/blog/)
([source](https://github.com/pylight/gsn)) - Personal Blog (German)
about Linux and OpenSource.
- [夜深blog](http://blog.lenage.com/)
([source](https://github.com/lenage/lenage.github.com)) - Personal
Blog(chinese) about archLinux and Ruby.
- [setImpl](http://lhzhang.com/)
([source](https://github.com/waynezhang/blog/tree/gh-pages)) -
Personal Blog.
- [Giovanni Cappellottos Focus the Web](http://www.focustheweb.com/)
([source](http://github.com/focustheweb/www.focustheweb.com))
- [Lost Decade Games](http://www.lostdecadegames.com/)
([source](https://github.com/lostdecade/lostdecade.github.com)) -
HTML5 game development blog.
- [Dave Peck](http://davepeck.org/) - Personal blog of a [github
user](https://github.com/davepeck/)
- [Stephen McDonald](http://blog.jupo..org/)
([source](https://github.com/stephenmcd/stephenmcd.github.com)) -
Personal blog on Django and Python.
- [Josh Suereth](http://jsuereth.com/)
([source](http://github.com/jsuereth/jsuereth.github.com)) -
Personal programming blog, mostly Scala related.
- [Dmytro
Yashkir](http://dyashkir.com([source](https://github.com/dyashkir/dyashkir.github.com))) - Personal blog on programming and other topics.
- [Court Ewing](http://epixa.com/)
([source](https://github.com/epixa/epixa.com-source)) - Personal
blog.
- [Useful Paradigm](http://usefulparadigm.com/)
([source](https://github.com/usefulparadigm/usefulparadigm.github.com))
- Web 2.0 based SW service & solutions (Korea).
- [sitescraper.net](http://sitescraper.net/) - Website and blog for my
business.
- [Adolfo Villafiorita](http://www.ict4g.net/adolfo)
([source](https://bitbucket.org/adolfov/newhome/)) - Personal
homepage, based on Twitter Bootstrap, (a bit of) jQuery, and some
Liquid programming to find posts with a given tag and generate a
bibliography.
- [Jekyll Bootstrap](https://github.com/nhoss2/jekyll-bootstrap)
([source](https://github.com/nhoss2/jekyll-bootstrap)) - A super
simple theme to get started with jekyll. Made with twitter
bootstrap.
- [Ali Razas personal Blog](http://www.aliirz.com/)
([source](https://github.com/aliirz/aliirz.com))
- [Lauri Mäkinen](http://laurimakinen.net/) - Personal website/blog.
- [Dead epsilon](http://juanlu001.github.com/)
([source](https://github.com/Juanlu001/juanlu001.github.com)) - Blog
about Python in scientific environments (Spanish).
- [Ivan Torres](http://ivantorres.me/)
- [Marko Kaartinen](https://kaartinen.me/) - Humble blog about tech
and stuff.
- [Itai Ferber](http://itaiferber.net/) - Personal site and blog.
- [Recology](http://schamberlain.github.com/)
([source](https://github.com/SChamberlain/schamberlain.github.com))
A blog about using the R language in science.
- [Andy Freeland](http://andyfreeland.net/)
([source](https://github.com/rouge8/andyfreeland.net)) - Personal
site and blog.
- [Joshua Platt](http://joshuaplatt.com/) - Personal site.
- [pala](http://ztpala.com/) - Personal blog (Chinese, 中文).
- [Shaun Bentzen](http://bentzen.ws/)
([source](http://github.com/sbentzen/sbentzen.github.com))
- [Simply Measured Blog](http://simplymeasured.com/blog/)
([source](http://simplymeasured.com/blog/))
- [ArvinderKang.com](http://arvinderkang.com/) - Portfolio website and
blog of Arvinder Singh Kang - Designer. Programmer. Researcher.
- [Eric Hamiter](http://erichamiter.com/)
([source](https://github.com/ehamiter/ehamiter.github.com)) -
Personal site/landing page, using HTML5.
- [Jiang Le](http://jiangle.name/)
([source](https://github.com/naokij/naokij.github.com)) - Personal
blog(Chinese中文).
- [Alessandro Vermeulen](http://alessandrovermeulen.me/) - Personal
Blog (English).
- [The Utrecht Haskell Compiler JavaScript
Backend](http://uu-computerscience.github.com/uhc-js/) - Launchpad
for using the UHC JS backend.
- [Vladislav Bykov (vladislavbyk)](http://vladislavbyk.github.com/)
([source](http://github.com/vladislavbyk/vladislavbyk.github.com)) -
Personal Blog (Russian).
- [Sahat.me (Sahat Yalkabov)](http://sahat.me/)
([source](http://sahat.me)) - Personal Site and Blog.
- [Garron.me (Guillermo Garron)](http://garron.me/) - Personal site
and Blog (English).
- [Pradeepnayak.in (Pradeep Nayak)](http://pradeepnayak.in) - Personal
site and Blog.
- [Fredrik Appelberg](http://mulli.nu) - Personal Blog.
- [Mike Stegeman](http://thestegemans.com/)
([source](http://github.com/mrstegeman/thestegemans.com)) - Personal
Site and Blog.
- [elf+js](http://elfjs.com/)
([source](http://github.com/elfjs/elfjs.github.com)) -
[elf+js](http://github.com/elfjs/)
JavaScript库项目主页博客(Chinese, 中文)
- [/abyme](http://abyme.github.com/)
([source](http://github.com/abyme/abyme.github.com)) ([theme
source](http://github.com/abyme/abyme-theme)) - Personal blog,
hosted at Github. The theme is available separately.
- [Finch Blog](http://finchformac.com/blog/) - The official blog for
the Mac app Finch.
- [TJ VanToll](http://tjvantoll.com/)
([source](http://github.com/tjvantoll/tjvantoll.github.com)) -
Personal Site and Blog.
- [Paydirt Blog](https://paydirtapp.com/blog/) - The official blog for
Paydirt time-tracking app.
- [NoFeed \~ No Music for the Masses](http://nofeed..org/)
([source](https://github.com/ngw/ngw.github.com)) - Personal Blog
hosted on Github.
- [instant-thinking.de](http://instant-thinking.de) - Personal blog in
german. Contains my personal tidbits and the occasional tech post.
Running with Octopress.
- [Computer-Heimwerker Blog](http://home-server-mind.com/) - Personal
computer blog in german.
- [Matthew Scharley](http://matt.scharley.me/)
([source](http://github.com/mscharley/mscharley.github.com)) -
Personal blog of a web developer hosted as GitHub.
- [Edward Hotchkiss, Blog](http://edwardhotchkiss.com/)
([source](http://github.com/edwardhotchkiss/edwardhotchkiss.github.com/))
- Site & Blog.
- [闭门造轮子](http://mytharcher.github.com/)
([source](https://github.com/mytharcher/mytharcher.github.com))
造轮子工程师的代码笔记
- [Rod Ebrahimi](http://innovatebig.com/) - Personal blog on business
and tech, co-founder/ceo of ReadyForZero.
- [Hong Xu](http://dev.hong.me/)
([source](https://github.com/xuhdev/homepage)) - Personal Site and
Blog.
- [Jilles Oldenbeuving](http://www.jilles.net/)
([source](https://github.com/ojilles/jilles.net)) - Personal Blog.
- [ACBuS](http://www.acbus.org/) - Automotive Communication Bus
Sniffer.
- [Lauri Lehmijoki](http://lauri.lehmijoki.net/)
([source](https://github.com/laurilehmijoki/lauri.lehmijoki.net)) -
Personal web site.
- [Xiaoli](http://xiaoli.github.com/)
- [Andrew C. Reed](http://andrewcreed.com/)
([source](https://github.com/Networc/networc.github.com)) - Personal
website & blog. Theme from Tom Preston-Werner. Added Google+ & Tweet
buttons for repo list.
- [Jonathan Tsai](http://www.jonathantsai.com/)
([source](https://github.com/jontsai/jontsai.github.com)) - Personal
website and blog.
- [雁起平沙的文艺博客](http://art.yanping.me/)
([source](https://github.com/yanping/art)) - Personal blog (Chinese,
中文).
- [Daniel Nyström](http://www.danielnystrom.se/)
([source](https://github.com/xazax/xazax.github.com)) - Personal
Blog.
- [Marcin Świerczyński](http://blog.swierczynski.net/)
([source](https://github.com/MarcinOS/marcinos.github.com)) -
Personal Blog.
- [ddatsh](http://ddatsh.com/)
([source](https://github.com/zhangthe9/blog)) - Personal blog
(Chinese, 中文).
- [Amir Chaudhry](http://amirchaudhry.com/)
([source](https://github.com/amirmc/amirmc.github.com)) - Personal
Blog exported from Posterous and using Jekyll Bootstrap and
(customised) Twitter Bootstrap theme. Included AddThis sharing
buttons for posts.
- [Xiaodong Xu](http://toy.linuxtoy..org/)
([source](https://github.com/xuxiaodong/xuxiaodong.github.com)) -
About Linux, Perl, Ruby and more.
- [Mijndert Stuij](http://mijndertstuij.nl)
([source](https://github.com/mijndert/mijndertstuij.nl)) - Personal
blog featuring various articles for sysadmins and people alike.
- [PiZn](http://www.pizn.me/)
([source](https://github.com/pizn/pizn.github.com)) - This blog use
for fast recording my work, learning and life.
用来快速记录工作,学习,生活的一点一滴
- [Ivaylo Kuzev](http://ivo.tehif.eu)
([source](https://github.com/ivoarch/ivoarch.github.com)) -
Sourcecode of my weblog (Bulgarian).
- [Mort | Looking Glass](http://www.soimort.org/)
([source](https://github.com/soimort/soimort.github.com)) - Personal
website and blog.
- [Monupco](http://monupco.com/blog/)
([source](https://github.com/monupco/blog)) - Company blog with
custom theme.
- [Giant Robot Battle](http://giantrobotbattle.com/)
([source](https://github.com/jwwest/jwwest.github.com)) - Articles
about bootstrapping startup companies.
- [Paul W. Rankins Website](http://www.paulrankinwebsite.com/)
([source](http://github.com/rnkn/rnkn.github.com)) - Filmmaking
portfolio.
- [jekylog](http://fingaholic.github.com/)
([source](https://github.com/FiNGAHOLiC/fingaholic.github.com)) - My
personal blog powered by jekyll.
- [Denis Roussel](http://denisroussel.fr/) - Tech blog (in french).
- [Alan W. Smith](http://alanwsmith.com/) - Personal site, gallery and
code snippets.
- [Business Guide.co.uk](http://www.businessguide.co.uk/) - Converted
Wordpress blog .
- [Roland Warmerdam](http://rolandwarmerdam.co.nz)
([source](https://github.com/Rowno/rolandwarmerdam.co.nz))
Personal website and blog.
- [Thatch Arce aka 希夷先生](http://blankego.github.com/)
([source](https://github.com/blankego/blankego.github.com)) - An
all-inclusive personal site, programming and hobbies, blog and
aggregation of useful resources.(汝安知魚之樂,我知之濠上也) Just
take peek!
- [colaborativa corporate site](http://colaborativa.eu/)
([source](https://github.com/colaborativa/colaborativa.github.com))
- A complete port of our previous Drupal corporate website using
Jekyll, highly modular design and complex scss layout, let us know
what do you think!
- [incumbent](http://incumbent.org/) - a personal homepage (i
**heart** Yuya Saito)
- [Garrett Winder](http://garrettwinder.com/)
([source](https://github.com/garrettwinder/garrettwinder.com))
- [Patrick Mylund Nielsen](http://patrickmylund.com/) ~~- A blog about
astronomy, life, and miscellaneous geekery
- [Miha Hribar](http://hribar.info)~~ CTO of Toshl, professional
hobbyist, [source code](https://github.com/mihahribar/hribar.info)
- [pH 7](http://ph-7.github.com) - A personal website using jQuery,
Twitter Bootstrap and of course **Jekyll**! It also uses Ajax to
load pages. ([source code](https://github.com/pH-7/ph-7.github.com))
- [Creating Code](http://creatingcode.com) - A programming blog by
Robert Greiner.
- [neocotic](http://neocotic.com)
([source](http://github.com/neocotic/neocotic.github.com))
- [Hamsterboy](http://hamsterboy.dk)
- [Jake Harding](http://thejakeharding.com)
([source](https://github.com/jharding/jharding.github.com))
- [sbin.dk](http://sbin.dk) - A personal website
([source](https://github.com/toin0u/sbin.dk))
- [Romain Sertelon (BluePyth)](http://blog.bluepyth.fr) - A tech blog
by a French Geek ([source](https://github.com/BluePyth/my-blog))
- [island205(Zhi Cun)](http://island205.github.com) - a
introduction about me.
- [Reverland](http://reverland.github.com) - A personal website
([source](https://github.com/reverland/reverland.github.com))
- [SeedProd](http://www.seedprod.com) - Built my entire Marketing Site
with Jekyll
- [Imaginal Torch](http://imaginaltor.ch) - Blog visually inspired by
William Morris and the Arts & Crafts movement
- [Luvah: Journal of the Creative Imagination](http://mimes.is) -
Academic journal focused on exploring the intersections of religion
and politics in a world that has lost touch with traditional ways of
**knowing**.
- [Maplebeats(枫叶饭团)](http://maplebeats.com) - A personal website
using jquery ajax and
jekyll([source](https://github.com/maplebeats/maplebeats.github.com))
- [Indonesian Virtualizer](http://idvps.org) - Personal website using
Octopress jekyll framework.
- [Fabio Souto](http://fabiosouto.me/) - Personal website and blog
([source](https://github.com/fsouto/fsouto.github.com))
- [Gopal Venkatesan](http://g13n.github.com/blog/) - Technology blog
using HTML5/CSS3 ([source](https://github.com/g13n/blog))
- [Juan de Bravo](http://www.juandebravo.com)
([source](https://www.github.com/juandebravo/juandebravo.github.com))
- Personal tech blog.
- [Overworld Map](http://www.overworldmap.com/) - a weblog about video
game cartography
- [DemoJS](http://demojs.org) - DemoJS demoparty infosite
- [hzmook](http://hzmook.github.com/)
([source](https://github.com/hzmook/hzmook.github.com)) - Personal
blog(Chinese中文).
- [Simply David Nelson](http://www.simplydavidnelson.com) - Software
Engineering And Architecture
- [Tim Marinin](http://tim.tom.ru)
([source](https://github.com/booley/booley.github.com)) — personal
blog (Russian)

View File

@ -0,0 +1,95 @@
---
layout: docs
title: Directory structure
prev_section: usage
next_section: configuration
---
Jekyll at its core is a text transformation engine. The concept behind the system is this: you give it text written in your favorite markup language, be that Markdown, Textile, or just plain HTML, and it churns that through a layout or series of layout files. Throughout that process you can tweak how you want the site URLs to look, what data gets displayed on the layout and more. This is all done through strictly editing files, and the web interface is the final product.
A basic Jekyll site usually looks something like this:
{% highlight bash %}
.
├── _config.yml
├── _includes
| ├── footer.html
| └── header.html
├── _layouts
| ├── default.html
| └── post.html
├── _posts
| ├── 2007-10-29-why-every-programmer-should-play-nethack.textile
| └── 2009-04-26-barcamp-boston-4-roundup.textile
├── _site
└── index.html
{% endhighlight %}
An overview of what each of these does:
<table>
<thead>
<tr>
<th>File / Directory</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p><code>_config.yml</code></p>
</td>
<td>
<p>Stores <a href="../configuration">configuration</a> data. A majority of these options can be specified from the command line executable but its easier to throw them in here so you dont have to remember them.</p>
</td>
</tr>
<tr>
<td>
<p><code>_includes</code></p>
</td>
<td>
<p>These are the partials that can be mixed and matched by your _layouts and _posts to facilitate reuse. The liquid tag <code>{{ "{% include file.ext " }}%}</code> can be used to include the partial in <code>_includes/file.ext</code>.</p>
</td>
</tr>
<tr>
<td>
<p><code>_layouts</code></p>
</td>
<td>
<p>These are the templates which posts are inserted into. Layouts are chosen on a post-by-post basis in the <a href="../frontmatter">YAML front matter</a>, which is described in the next section. The liquid tag <code>{{ "{{ content " }}}}</code> is used to inject data onto the page.</p>
</td>
</tr>
<tr>
<td>
<p><code>_posts</code></p>
</td>
<td>
<p>Your dynamic content, so to speak. The format of these files is important, as named as <code>YEAR-MONTH-DAY-title.MARKUP</code>. The <a href="../permalinks">permalinks</a> can be adjusted very flexibly for each post, but the date and markup language are determined solely by the file name.</p>
</td>
</tr>
<tr>
<td>
<p><code>_site</code></p>
</td>
<td>
<p>This is where the generated site will be placed once Jekyll is done transforming it. It's probably a good idea to add this to your <code>.gitignore</code> file.</p>
</td>
</tr>
<tr>
<td>
<p><code>index.html</code> and other HTML, Markdown, Textile files</p>
</td>
<td>
<p>Provided that the file has a <a href="../frontmatter">YAML Front Matter</a> section, it will be transformed by Jekyll. The same will happen for any <code>.html</code>, <code>.markdown</code>, <code>.md</code>, or <code>.textile</code> file in your site's root directory or directories not listed above.</p>
</td>
</tr>
<tr>
<td>
<p>Other Files/Folders</p>
</td>
<td>
<p>Every other directory and file except for those listed above—such as <code>css</code> and <code>images</code> folders, <code>favicon.ico</code> files, and so forth—will be transferred over verbatim to the generated site. There's plenty of <a href="../sites">sites already using Jekyll</a> if you're curious as to how they're laid out.</p>
</td>
</tr>
</tbody>
</table>

View File

@ -0,0 +1,217 @@
---
layout: docs
title: Templates
prev_section: migrations
next_section: permalinks
---
Jekyll uses the [Liquid](http://www.liquidmarkup.org/) templating language to process templates. All of the [standard Liquid tags and filters](http://wiki.github.com/shopify/liquid/liquid-for-designers) are supported, Jekyll even adds a few handy filters and tags of its own to make common tasks easier.
## Filters
<table>
<thead>
<tr>
<th>Description</th>
<th><span class="filter">Filter</span> and <span class="output">Output</span></th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p class='name'><strong>Date to XML Schema</strong></p>
<p>Convert a Date into XML Schema format.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ site.time | date_to_xmlschema " }}}}</code>
</p>
<p>
<code class='output'>2008-11-17T13:07:54-08:00</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>Date to String</strong></p>
<p>Convert a date to short format.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ site.time | date_to_string " }}}}</code>
</p>
<p>
<code class='output'>17 Nov 2008</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>Date to Long String</strong></p>
<p>Format a date to long format.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ site.time | date_to_long_string " }}}}</code>
</p>
<p>
<code class='output'>17 November 2008</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>XML Escape</strong></p>
<p>Escape some text for use in XML.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ page.content | xml_escape " }}}}</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>CGI Escape</strong></p>
<p>CGI escape a string for use in a URL. Replaces any special characters with appropriate %XX replacements.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ “foo,bar;baz?” | cgi_escape " }}}}</code>
</p>
<p>
<code class='output'>foo%2Cbar%3Bbaz%3F</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>Number of Words</strong></p>
<p>Count the number of words in some text.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ page.content | number_of_words " }}}}</code>
</p>
<p>
<code class='output'>1337</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>Array to Sentence</strong></p>
<p>Convert an array into a sentence. Useful for listing tags.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ page.tags | array_to_sentence_string " }}}}</code>
</p>
<p>
<code class='output'>foo, bar, and baz</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>Textilize</strong></p>
<p>Convert a Textile-formatted string into HTML, formatted via RedCloth</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ page.excerpt | textilize " }}}}</code>
</p>
</td>
</tr>
<tr>
<td>
<p class='name'><strong>Markdownify</strong></p>
<p>Convert a Markdown-formatted string into HTML.</p>
</td>
<td class='align-center'>
<p>
<code class='filter'>{{ "{{ page.excerpt | markdownify " }}}}</code>
</p>
</td>
</tr>
</tbody>
</table>
## Tags
### Includes (Partials)
If you have small page fragments that you wish to include in multiple
places on your site, you can use the `include` tag.
{% highlight ruby %}
{{ "{% include sig.textile " }}%}
{% endhighlight %}
Jekyll expects all include files to be placed in an `_includes`
directory at the root of your source dir. So this will embed the
contents of `/path/to/your/site/_includes/sig.textile` into the calling
file.
### Code snippet highlighting
Jekyll has built in support for syntax highlighting of [over 100
languages](http://pygments.org/languages/) thanks to
[Pygments](http://pygments.org/). In order to take advantage of this
youll need to have Pygments installed, and the `pygmentize` binary must
be in your `$PATH`. When you run Jekyll, make sure you run it with
[Pygments enabled](../extras).
To render a code block with syntax highlighting, surround your code as follows:
{% highlight ruby %}
{{ "{% highlight ruby " }}%}
def foo
puts 'foo'
end
{{ "{% endhighlight " }}%}
{% endhighlight %}
The argument to the `highlight` tag (`ruby` in the example above) is the language identifier. To find the appropriate identifier to use for the language you want to highlight, look for the “short name” on the [Lexers page](http://pygments.org/docs/lexers/).
#### Line numbers
There is a second argument to `highlight` called `linenos` that is
optional. Including the `linenos` argument will force the highlighted
code to include line numbers. For instance, the following code block
would include line numbers next to each line:
{% highlight ruby %}
{{ "{% highlight ruby linenos " }}%}
def foo
puts 'foo'
end
{{ "{% endhighlight " }}%}
{% endhighlight %}
#### Stylesheets for syntax highlighting
In order for the highlighting to show up, youll need to include a
highlighting stylesheet. For an example stylesheet you can look at
[syntax.css](http://github.com/mojombo/tpw/tree/master/css/syntax.css).
These are the same styles as used by GitHub and you are free to use them
for your own site. If you use linenos, you might want to include an
additional CSS class definition for the `.lineno` class in `syntax.css` to
distinguish the line numbers from the highlighted code.
### Post URL
If you would like to include a link to a post on your site, the `post_url` tag will generate the correct permalink URL for the post you specify.
{% highlight bash %}
{{ "{% post_url 2010-07-21-name-of-post " }}%}
{% endhighlight %}
There is no need to include the file extension when using the `post_url` tag.
You can also use this tag to create a link to a post in Markdown as follows:
{% highlight html %}
[Name of Link]({{ "{% post_url 2010-07-21-name-of-post " }}%})
{% endhighlight %}

View File

@ -0,0 +1,108 @@
---
layout: docs
title: Troubleshooting
prev_section: contributing
next_section: sites
---
If you ever run into problems installing or using Jekyll, heres a few tips that might be of help. If the problem youre experiencing isnt covered below, please [report an issue](https://github.com/mojombo/jekyll/issues/new) so the Jekyll community can make everyones experience better.
## Installation Problems
If you encounter errors during gem installation, you may need to install
the header files for compiling extension modules for ruby 1.9.1. This
can be done on Ubunutu or Debian by running:
{% highlight bash %}
sudo apt-get install ruby1.9.1-dev
{% endhighlight %}
On Red Hat, CentOS, and Fedora systems you can do this by running:
{% highlight bash %}
sudo yum install ruby-devel
{% endhighlight %}
On [NearlyFreeSpeech](http://nearlyfreespeech.net/) you need to run the command with the following environment variable:
{% highlight bash %}
RB_USER_INSTALL=true gem install jekyll
{% endhighlight %}
On OSX, you may need to update RubyGems:
{% highlight bash %}
sudo gem update --system
{% endhighlight %}
To install RubyGems on Gentoo:
{% highlight bash %}
sudo emerge -av dev-ruby/rubygems
{% endhighlight %}
On Windows, you may need to install [RubyInstaller
DevKit](http://wiki.github.com/oneclick/rubyinstaller/development-kit).
## Problems running Jekyll
On Debian or Ubuntu, you may need to add /var/lib/gems/1.8/bin/ to your path in order to have the `jekyll` executable be available in your Terminal.
## Base-URL Problems
If you are using base-url option like `jekyll --server --base-url '/blog'` then make sure that you access the site at `http://localhost:4000/blog/index.html`. Just accessing `http://localhost:4000/blog` will not work.
## Configuration problems
The order of precedence for conflicting [configuration settings](../configuration) is as follows:
1. Command-line flags
2. Configuration file settings
3. Defaults
That is: defaults are overridden by options specified in `_config.yml`, and flags specified at the command-line will override all other settings specified elsewhere.
## Markup Problems
The various markup engines that Jekyll uses may have some issues. This
page will document them to help others who may run into the same
problems.
### Maruku
If your link has characters that need to be escaped, you need to use
this syntax:
`![Alt text](http://yuml.me/diagram/class/[Project]->[Task])`
If you have an empty tag, i.e. `<script src="js.js"></script>`, Maruku
transforms this into `<script src="js.js" />`. This causes problems in
Firefox and possibly other browsers and is [discouraged in
XHTML.](http://www.w3.org/TR/xhtml1/#C_3) An easy fix is to put a space
between the opening and closing tags.
### RedCloth
Versions 4.1.1 and higher do not obey the notextile tag. [This is a known
bug](http://aaronqian.com/articles/2009/04/07/redcloth-ate-my-notextile.html)
and will hopefully be fixed for 4.2. You can still use 4.1.9, but the
test suite requires that 4.1.0 be installed. If you use a version of
RedCloth that does not have the notextile tag, you may notice that
syntax highlighted blocks from Pygments are not formatted correctly,
among other things. If youre seeing this just install 4.1.0.
### Liquid
The latest version, version 2.0, seems to break the use of `{{ "{{" }}` in
templates. Unlike previous versions, using `{{ "{{" }}` in 2.0 triggers the
following error:
{% highlight bash %}
'{{ "{{" }}' was not properly terminated with regexp: /\}\}/ (Liquid::SyntaxError)
{% endhighlight %}
<div class="note">
<h5>Please report issues you encounter!</h5>
<p>If you come across a bug, please <a href="https://github.com/mojombo/jekyll/issues/new">create an issue</a> on GitHub describing the problem and any work-arounds you find so we can document it here for others.</p>
</div>

View File

@ -0,0 +1,35 @@
---
layout: docs
title: Basic Usage
prev_section: installation
next_section: structure
---
The Jekyll gem makes a `jekyll` executable available to you in your Terminal window. You can use this command in a number of ways:
{% highlight bash %}
jekyll
#=> The current folder will get generated into ./_site
jekyll <destination>
#=> The current folder will get generated into <destination>
jekyll <source> <destination>
#=> The <source> folder will get generated into <destination>
{% endhighlight %}
Jekyll also comes with a built-in development server that will allow you to preview what the generated site will look like in your browser locally.
{% highlight bash %}
jekyll --server
#=> A development server will run at http://localhost:4000/
jekyll --server --auto
#=> As above, but watch for changes and regenerate automatically too.
{% endhighlight %}
These are just some of the many [configuration options](../configuration) available. All configuration options can either be specified as flags on the command line, or alternatively (and more commonly) they can be specified in a `_config.yml` file at the root of the source directory. Jekyll will automatically configuration options from this file when run, so placing the following two lines in the configuration file will mean that running `jekyll` would be equivalent to running `jekyll --server --auto`:
{% highlight yaml %}
auto: true
server: true
{% endhighlight %}
For more about the possible configuration options, see the [configuration](../configuration) page.

View File

@ -0,0 +1,166 @@
---
layout: docs
title: Variables
prev_section: pages
next_section: migrations
---
Jekyll traverses your site looking for files to process. Any files with [YAML Front Matter](../frontmatter) are subject to processing. For each of these files, Jekyll makes a variety of data available to the pages via the [Liquid templating system](http://wiki.github.com/shopify/liquid/liquid-for-designers). The following is a reference of the available data.
## Global Variables
<table>
<thead>
<tr>
<td>Variable</td>
<td>Description</td>
</tr>
</thead>
<tbody>
<tr>
<td><p><code>site</code></p></td>
<td><p>Sitewide information + Configuration settings from <code>_config.yml</code></p></td>
</tr>
<tr>
<td><p><code>page</code></p></td>
<td><p>This is just the <a href="../frontmatter">YAML Front Matter</a> with 2 additions: <code>url</code> and <code>content</code>.</p></td>
</tr>
<tr>
<td><p><code>content</code></p></td>
<td><p>In layout files, this contains the content of the subview(s). This is the variable used to insert the rendered content into the layout. This is not used in post files or page files.</p></td>
</tr>
<tr>
<td><p><code>paginator</code></p></td>
<td><p>When the <code>paginate</code> configuration option is set, this variable becomes available for use.</p></td>
</tr>
</tbody>
</table>
## Site Variables
<table>
<thead>
<tr>
<td>Variable</td>
<td>Description</td>
</tr>
</thead>
<tbody>
<tr>
<td><p><code>site.time</code></p></td>
<td><p>The current time (when you run the <code>jekyll</code> command).</p></td>
</tr>
<tr>
<td><p><code>site.posts</code></p></td>
<td><p>A reverse chronological list of all Posts.</p></td>
</tr>
<tr>
<td><p><code>site.related_posts</code></p></td>
<td><p>If the page being processed is a Post, this contains a list of up to ten related Posts. By default, these are low quality but fast to compute. For high quality but slow to compute results, run the <code>jekyll</code> command with the <code>--lsi</code> (latent semantic indexing) option.</p></td>
</tr>
<tr>
<td><p><code>site.categories.CATEGORY</code></p></td>
<td><p>The list of all Posts in category <code>CATEGORY</code>.</p></td>
</tr>
<tr>
<td><p><code>site.tags.TAG</code></p></td>
<td><p>The list of all Posts with tag <code>TAG</code>.</p></td>
</tr>
<tr>
<td><p><code>site.[CONFIGURATION_DATA]</code></p></td>
<td><p>All variables set in your <code>_config.yml</code> are available through the <code>site</code> variable. For example, if you have <code>url: http://mysite.com</code> in your configuration file, then in your posts and pages it can be accessed using <code>{{ "{{ site.url " }}}}</code>. Jekyll does not parse changes to <code>_config.yml</code> in <code>auto</code> mode, you have to restart Jekyll to see changes to variables.</p></td>
</tr>
</tbody>
</table>
## Page Variables
<table>
<thead>
<tr>
<td>Variable</td>
<td>Description</td>
</tr>
</thead>
<tbody>
<tr>
<td><p><code>page.content</code></p></td>
<td><p>The un-rendered content of the Page.</p></td>
</tr>
<tr>
<td><p><code>page.title</code></p></td>
<td><p>The title of the Post.</p></td>
</tr>
<tr>
<td><p><code>page.url</code></p></td>
<td><p>The URL of the Post without the domain. e.g. <code>/2008/12/14/my-post.html</code></p></td>
</tr>
<tr>
<td><p><code>page.date</code></p></td>
<td><p>The Date assigned to the Post. This can be overridden in a posts front matter by specifying a new date/time in the format <code>YYYY-MM-DD HH:MM:SS</code></p></td>
</tr>
<tr>
<td><p><code>page.id</code></p></td>
<td><p>An identifier unique to the Post (useful in RSS feeds). e.g. <code>/2008/12/14/my-post</code></p></td>
</tr>
<tr>
<td><p><code>page.categories</code></p></td>
<td><p>The list of categories to which this post belongs. Categories are derived from the directory structure above the <code>_posts</code> directory. For example, a post at <code>/work/code/_posts/2008-12-24-closures.textile</code> would have this field set to <code>['work', 'code']</code>. These can also be specified in the <a href="../frontmatter">YAML Front Matter</a>.</p></td>
</tr>
<tr>
<td><p><code>page.tags</code></p></td>
<td><p>The list of tags to which this post belongs. These can be specified in the <a href="../frontmatter">YAML Front Matter</a></p></td>
</tr>
</tbody>
</table>
<div class="note">
<h5>ProTip™: Use custom front-matter</h5>
<p>Any custom front matter that you specify will be available under <code>page</code>. For example, if you specify <code>custom_css: true</code> in a pages front matter, that value will be available in templates as <code>page.custom_css</code>.</p>
</div>
## Paginator
<table>
<thead>
<tr>
<td>Variable</td>
<td>Description</td>
</tr>
</thead>
<tbody>
<tr>
<td><p><code>paginator.per_page</code></p></td>
<td><p>Number of posts per page.</p></td>
</tr>
<tr>
<td><p><code>paginator.posts</code></p></td>
<td><p>Posts available for that page.</p></td>
</tr>
<tr>
<td><p><code>paginator.total_posts</code></p></td>
<td><p>Total number of posts.</p></td>
</tr>
<tr>
<td><p><code>paginator.total_pages</code></p></td>
<td><p>Total number of pages.</p></td>
</tr>
<tr>
<td><p><code>paginator.page</code></p></td>
<td><p>The number of the current page.</p></td>
</tr>
<tr>
<td><p><code>paginator.previous_page</code></p></td>
<td><p>The number of the previous page.</p></td>
</tr>
<tr>
<td><p><code>paginator.next_page</code></p></td>
<td><p>The number of the next page.</p></td>
</tr>
</tbody>
</table>
<div class="note info">
<h5>Paginator variable availability</h5>
<p>These are only available in index files, however they can be located in a subdirectory, such as <code>/blog/index.html</code>.</p>
</div>

View File

@ -1 +0,0 @@
.container_12,.container_16{margin-left:auto;margin-right:auto;width:960px}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12,.grid_13,.grid_14,.grid_15,.grid_16{display:inline;float:left;margin-left:10px;margin-right:10px}.container_12 .grid_3,.container_16 .grid_4{width:220px}.container_12 .grid_6,.container_16 .grid_8{width:460px}.container_12 .grid_9,.container_16 .grid_12{width:700px}.container_12 .grid_12,.container_16 .grid_16{width:940px}.alpha{margin-left:0}.omega{margin-right:0}.container_12 .grid_1{width:60px}.container_12 .grid_2{width:140px}.container_12 .grid_4{width:300px}.container_12 .grid_5{width:380px}.container_12 .grid_7{width:540px}.container_12 .grid_8{width:620px}.container_12 .grid_10{width:780px}.container_12 .grid_11{width:860px}.container_16 .grid_1{width:40px}.container_16 .grid_2{width:100px}.container_16 .grid_3{width:160px}.container_16 .grid_5{width:280px}.container_16 .grid_6{width:340px}.container_16 .grid_7{width:400px}.container_16 .grid_9{width:520px}.container_16 .grid_10{width:580px}.container_16 .grid_11{width:640px}.container_16 .grid_13{width:760px}.container_16 .grid_14{width:820px}.container_16 .grid_15{width:880px}.container_12 .prefix_3,.container_16 .prefix_4{padding-left:240px}.container_12 .prefix_6,.container_16 .prefix_8{padding-left:480px}.container_12 .prefix_9,.container_16 .prefix_12{padding-left:720px}.container_12 .prefix_1{padding-left:80px}.container_12 .prefix_2{padding-left:160px}.container_12 .prefix_4{padding-left:320px}.container_12 .prefix_5{padding-left:400px}.container_12 .prefix_7{padding-left:560px}.container_12 .prefix_8{padding-left:640px}.container_12 .prefix_10{padding-left:800px}.container_12 .prefix_11{padding-left:880px}.container_16 .prefix_1{padding-left:60px}.container_16 .prefix_2{padding-left:120px}.container_16 .prefix_3{padding-left:180px}.container_16 .prefix_5{padding-left:300px}.container_16 .prefix_6{padding-left:360px}.container_16 .prefix_7{padding-left:420px}.container_16 .prefix_9{padding-left:540px}.container_16 .prefix_10{padding-left:600px}.container_16 .prefix_11{padding-left:660px}.container_16 .prefix_13{padding-left:780px}.container_16 .prefix_14{padding-left:840px}.container_16 .prefix_15{padding-left:900px}.container_12 .suffix_3,.container_16 .suffix_4{padding-right:240px}.container_12 .suffix_6,.container_16 .suffix_8{padding-right:480px}.container_12 .suffix_9,.container_16 .suffix_12{padding-right:720px}.container_12 .suffix_1{padding-right:80px}.container_12 .suffix_2{padding-right:160px}.container_12 .suffix_4{padding-right:320px}.container_12 .suffix_5{padding-right:400px}.container_12 .suffix_7{padding-right:560px}.container_12 .suffix_8{padding-right:640px}.container_12 .suffix_10{padding-right:800px}.container_12 .suffix_11{padding-right:880px}.container_16 .suffix_1{padding-right:60px}.container_16 .suffix_2{padding-right:120px}.container_16 .suffix_3{padding-right:180px}.container_16 .suffix_5{padding-right:300px}.container_16 .suffix_6{padding-right:360px}.container_16 .suffix_7{padding-right:420px}.container_16 .suffix_9{padding-right:540px}.container_16 .suffix_10{padding-right:600px}.container_16 .suffix_11{padding-right:660px}.container_16 .suffix_13{padding-right:780px}.container_16 .suffix_14{padding-right:840px}.container_16 .suffix_15{padding-right:900px}.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}.clearfix:after{clear:both;content:'.';display:block;visibility:hidden;height:0}.clearfix{display:inline-block}* html .clearfix{height:1%}.clearfix{display:block}

62
site/css/grid.css Normal file
View File

@ -0,0 +1,62 @@
.content {
width: 978px;
margin: 0 auto;
}
.grid1, .grid2, .grid3, .grid4, .grid5, .grid6, .grid7, .grid8, .grid9, .grid10, .grid11 {
float: left;
display: inline;
margin-left: 30px;
}
.grid1 {
width: 54px;
}
.grid2 {
width: 138px;
}
.grid3 {
width: 222px;
}
.grid4 {
width: 306px;
}
.grid5 {
width: 390px;
}
.grid6 {
width: 474px;
}
.grid7 {
width: 558px;
}
.grid8 {
width: 642px;
}
.grid9 {
width: 726px;
}
.grid10 {
width: 810px;
}
.grid11 {
width: 894px;
}
.first {
margin-left: 0;
clear: left;
}
/* clearfix */
.clear:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
* html .clear {
zoom: 1;
} /* IE6 */
*:first-child+html .clear {
zoom: 1;
} /* IE7 */

504
site/css/normalize.css vendored Executable file
View File

@ -0,0 +1,504 @@
/*! normalize.css 2012-03-11T12:53 UTC - http://github.com/necolas/normalize.css */
/* =============================================================================
HTML5 display definitions
========================================================================== */
/*
* Corrects block display not defined in IE6/7/8/9 & FF3
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
display: block;
}
/*
* Corrects inline-block display not defined in IE6/7/8/9 & FF3
*/
audio,
canvas,
video {
display: inline-block;
*display: inline;
*zoom: 1;
}
/*
* Prevents modern browsers from displaying 'audio' without controls
* Remove excess height in iOS5 devices
*/
audio:not([controls]) {
display: none;
height: 0;
}
/*
* Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4
* Known issue: no IE6 support
*/
[hidden] {
display: none;
}
/* =============================================================================
Base
========================================================================== */
/*
* 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units
* http://clagnut.com/blog/348/#c790
* 2. Prevents iOS text size adjust after orientation change, without disabling user zoom
* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
*/
html {
font-size: 100%; /* 1 */
-webkit-text-size-adjust: 100%; /* 2 */
-ms-text-size-adjust: 100%; /* 2 */
}
/*
* Addresses font-family inconsistency between 'textarea' and other form elements.
*/
html,
button,
input,
select,
textarea {
font-family: sans-serif;
}
/*
* Addresses margins handled incorrectly in IE6/7
*/
body {
margin: 0;
}
/* =============================================================================
Links
========================================================================== */
/*
* Addresses outline displayed oddly in Chrome
*/
a:focus {
outline: thin dotted;
}
/*
* Improves readability when focused and also mouse hovered in all browsers
* people.opera.com/patrickl/experiments/keyboard/test
*/
a:hover,
a:active {
outline: 0;
}
/* =============================================================================
Typography
========================================================================== */
/*
* Addresses font sizes and margins set differently in IE6/7
* Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
h2 {
font-size: 1.5em;
margin: 0.83em 0;
}
h3 {
font-size: 1.17em;
margin: 1em 0;
}
h4 {
font-size: 1em;
margin: 1.33em 0;
}
h5 {
font-size: 0.83em;
margin: 1.67em 0;
}
h6 {
font-size: 0.75em;
margin: 2.33em 0;
}
/*
* Addresses styling not present in IE7/8/9, S5, Chrome
*/
abbr[title] {
border-bottom: 1px dotted;
}
/*
* Addresses style set to 'bolder' in FF3+, S4/5, Chrome
*/
b,
strong {
font-weight: bold;
}
blockquote {
margin: 1em 40px;
}
/*
* Addresses styling not present in S5, Chrome
*/
dfn {
font-style: italic;
}
/*
* Addresses styling not present in IE6/7/8/9
*/
mark {
background: #ff0;
color: #000;
}
/*
* Addresses margins set differently in IE6/7
*/
p,
pre {
margin: 1em 0;
}
/*
* Corrects font family set oddly in IE6, S4/5, Chrome
* en.wikipedia.org/wiki/User:Davidgothberg/Test59
*/
pre,
code,
kbd,
samp {
font-family: monospace, serif;
_font-family: 'courier new', monospace;
font-size: 1em;
}
/*
* Improves readability of pre-formatted text in all browsers
*/
pre {
white-space: pre;
white-space: pre-wrap;
word-wrap: break-word;
}
/*
* 1. Addresses CSS quotes not supported in IE6/7
* 2. Addresses quote property not supported in S4
*/
/* 1 */
q {
quotes: none;
}
/* 2 */
q:before,
q:after {
content: '';
content: none;
}
small {
font-size: 75%;
}
/*
* Prevents sub and sup affecting line-height in all browsers
* gist.github.com/413930
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
/* =============================================================================
Lists
========================================================================== */
/*
* Addresses margins set differently in IE6/7
*/
dl,
menu,
ol,
ul {
margin: 1em 0;
}
dd {
margin: 0 0 0 40px;
}
/*
* Addresses paddings set differently in IE6/7
*/
menu,
ol,
ul {
padding: 0 0 0 40px;
}
/*
* Corrects list images handled incorrectly in IE7
*/
nav ul,
nav ol {
list-style: none;
list-style-image: none;
}
/* =============================================================================
Embedded content
========================================================================== */
/*
* 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
* 2. Improves image quality when scaled in IE7
* code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
*/
img {
border: 0; /* 1 */
-ms-interpolation-mode: bicubic; /* 2 */
}
/*
* Corrects overflow displayed oddly in IE9
*/
svg:not(:root) {
overflow: hidden;
}
/* =============================================================================
Figures
========================================================================== */
/*
* Addresses margin not present in IE6/7/8/9, S5, O11
*/
figure {
margin: 0;
}
/* =============================================================================
Forms
========================================================================== */
/*
* Corrects margin displayed oddly in IE6/7
*/
form {
margin: 0;
}
/*
* Define consistent border, margin, and padding
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/*
* 1. Corrects color not being inherited in IE6/7/8/9
* 2. Corrects text not wrapping in FF3
* 3. Corrects alignment displayed oddly in IE6/7
*/
legend {
border: 0; /* 1 */
padding: 0;
white-space: normal; /* 2 */
*margin-left: -7px; /* 3 */
}
/*
* 1. Corrects font size not being inherited in all browsers
* 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome
* 3. Improves appearance and consistency in all browsers
*/
button,
input,
select,
textarea {
font-size: 100%; /* 1 */
margin: 0; /* 2 */
vertical-align: baseline; /* 3 */
*vertical-align: middle; /* 3 */
}
/*
* Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
*/
button,
input {
line-height: normal; /* 1 */
}
/*
* 1. Improves usability and consistency of cursor style between image-type 'input' and others
* 2. Corrects inability to style clickable 'input' types in iOS
* 3. Removes inner spacing in IE7 without affecting normal text inputs
* Known issue: inner spacing remains in IE6
*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
cursor: pointer; /* 1 */
-webkit-appearance: button; /* 2 */
*overflow: visible; /* 3 */
}
/*
* Re-set default cursor for disabled elements
*/
button[disabled],
input[disabled] {
cursor: default;
}
/*
* 1. Addresses box sizing set to content-box in IE8/9
* 2. Removes excess padding in IE8/9
* 3. Removes excess padding in IE7
Known issue: excess padding remains in IE6
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
*height: 13px; /* 3 */
*width: 13px; /* 3 */
}
/*
* 1. Addresses appearance set to searchfield in S5, Chrome
* 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof)
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}
/*
* Removes inner padding and search cancel button in S5, Chrome on OS X
*/
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
-webkit-appearance: none;
}
/*
* Removes inner padding and border in FF3+
* www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/*
* 1. Removes default vertical scrollbar in IE6/7/8/9
* 2. Improves readability and alignment in all browsers
*/
textarea {
overflow: auto; /* 1 */
vertical-align: top; /* 2 */
}
/* =============================================================================
Tables
========================================================================== */
/*
* Remove most spacing between table cells
*/
table {
border-collapse: collapse;
border-spacing: 0;
}

70
site/css/pygments.css Normal file
View File

@ -0,0 +1,70 @@
/*.highlight { background: #333333; color: #ffffff}*/
.highlight .hll { background-color: #ffffcc }
.highlight .c { color: #87ceeb} /* Comment */
.highlight .err { color: #ffffff} /* Error */
.highlight .g { color: #ffffff} /* Generic */
.highlight .k { color: #f0e68c} /* Keyword */
.highlight .l { color: #ffffff} /* Literal */
.highlight .n { color: #ffffff} /* Name */
.highlight .o { color: #ffffff} /* Operator */
.highlight .x { color: #ffffff} /* Other */
.highlight .p { color: #ffffff} /* Punctuation */
.highlight .cm { color: #87ceeb} /* Comment.Multiline */
.highlight .cp { color: #cd5c5c} /* Comment.Preproc */
.highlight .c1 { color: #87ceeb} /* Comment.Single */
.highlight .cs { color: #87ceeb} /* Comment.Special */
.highlight .gd { color: #0000c0; font-weight: bold; background-color: #008080 } /* Generic.Deleted */
.highlight .ge { color: #c000c0; text-decoration: underline} /* Generic.Emph */
.highlight .gr { color: #c0c0c0; font-weight: bold; background-color: #c00000 } /* Generic.Error */
.highlight .gh { color: #cd5c5c} /* Generic.Heading */
.highlight .gi { color: #ffffff; background-color: #0000c0 } /* Generic.Inserted */
.highlight .go { color: #add8e6; font-weight: bold; background-color: #4d4d4d } /* Generic.Output */
.highlight .gp { color: #ffffff} /* Generic.Prompt */
.highlight .gs { color: #ffffff} /* Generic.Strong */
.highlight .gu { color: #cd5c5c} /* Generic.Subheading */
.highlight .gt { color: #c0c0c0; font-weight: bold; background-color: #c00000 } /* Generic.Traceback */
.highlight .kc { color: #f0e68c} /* Keyword.Constant */
.highlight .kd { color: #f0e68c} /* Keyword.Declaration */
.highlight .kn { color: #f0e68c} /* Keyword.Namespace */
.highlight .kp { color: #f0e68c} /* Keyword.Pseudo */
.highlight .kr { color: #f0e68c} /* Keyword.Reserved */
.highlight .kt { color: #bdb76b} /* Keyword.Type */
.highlight .ld { color: #ffffff} /* Literal.Date */
.highlight .m { color: #ffffff} /* Literal.Number */
.highlight .s { color: #ffffff} /* Literal.String */
.highlight .na { color: #ffffff} /* Name.Attribute */
.highlight .nb { color: #ffffff} /* Name.Builtin */
.highlight .nc { color: #ffffff} /* Name.Class */
.highlight .no { color: #ffa0a0} /* Name.Constant */
.highlight .nd { color: #ffffff} /* Name.Decorator */
.highlight .ni { color: #ffdead} /* Name.Entity */
.highlight .ne { color: #ffffff} /* Name.Exception */
.highlight .nf { color: #ffffff} /* Name.Function */
.highlight .nl { color: #ffffff} /* Name.Label */
.highlight .nn { color: #ffffff} /* Name.Namespace */
.highlight .nx { color: #ffffff} /* Name.Other */
.highlight .py { color: #ffffff} /* Name.Property */
.highlight .nt { color: #f0e68c} /* Name.Tag */
.highlight .nv { color: #98fb98} /* Name.Variable */
.highlight .ow { color: #ffffff} /* Operator.Word */
.highlight .w { color: #ffffff} /* Text.Whitespace */
.highlight .mf { color: #ffffff} /* Literal.Number.Float */
.highlight .mh { color: #ffffff} /* Literal.Number.Hex */
.highlight .mi { color: #ffffff} /* Literal.Number.Integer */
.highlight .mo { color: #ffffff} /* Literal.Number.Oct */
.highlight .sb { color: #ffffff} /* Literal.String.Backtick */
.highlight .sc { color: #ffffff} /* Literal.String.Char */
.highlight .sd { color: #ffffff} /* Literal.String.Doc */
.highlight .s2 { color: #ffffff} /* Literal.String.Double */
.highlight .se { color: #ffffff} /* Literal.String.Escape */
.highlight .sh { color: #ffffff} /* Literal.String.Heredoc */
.highlight .si { color: #ffffff} /* Literal.String.Interpol */
.highlight .sx { color: #ffffff} /* Literal.String.Other */
.highlight .sr { color: #ffffff} /* Literal.String.Regex */
.highlight .s1 { color: #ffffff} /* Literal.String.Single */
.highlight .ss { color: #ffffff} /* Literal.String.Symbol */
.highlight .bp { color: #ffffff} /* Name.Builtin.Pseudo */
.highlight .vc { color: #98fb98} /* Name.Variable.Class */
.highlight .vg { color: #98fb98} /* Name.Variable.Global */
.highlight .vi { color: #98fb98} /* Name.Variable.Instance */
.highlight .il { color: #ffffff} /* Literal.Number.Integer.Long */

View File

@ -1 +0,0 @@
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0}

View File

@ -1,81 +0,0 @@
#left {
background: #ddd;
color: #000;
text-align: right;
float: left;
}
#right {
background: #000;
color: #ddd;
left: 50%;
text-align: left;
float: right;
}
#left_bg {
background: #ddd;
color: #000;
}
#right_bg {
left: 50%;
background: #000;
color: #ddd;
}
.bg {
width: 50%;
position: absolute;
height: 100%;
}
.middle {
width: 50%;
font-size: 10em;
font-family: Georgia, Times, sans-serif;
}
p {
font-size: 10%;
font-family: Verdana, serif;
margin-top: 50px;
margin-left: 3px;
margin-right: 3px;
}
ul {
font-size: 25%;
font-family: Verdana, serif;
margin-top: 50px;
}
ul li {
margin: 10px;
}
.container {
top: 0;
left: 0;
width: 100%;
height: 100%;
position: fixed;
display: table;
}
.center {
text-align:center;
display: table-cell;
vertical-align: middle;
}
a {
text-decoration: none;
color: inherit;
}
a:visited {
color: inherit;
}
a:hover {
color: #8b0000;
}

697
site/css/style.css Normal file
View File

@ -0,0 +1,697 @@
/* Base */
body {
font-family: Lato, 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-size: 21px;
font-weight: 300;
color: #ddd;
background: #333;
border-top: 5px solid #fc0;
box-shadow: inset 0 3px 30px rgba(0,0,0,.3);
text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
/* Sections */
body > header, body > section, body > footer {
float: left;
width: 100%;
clear: both;
}
.content {
padding: 20px 0;
}
/* Header */
body > header {
padding: 40px 0 10px;
}
body > header .content {
padding: 0;
}
body > header h1 img {
margin-left: -30px;
}
body > header h1 span {
display: none;
}
/* Navigation */
nav {
margin-top: 52px;
}
nav ul {
padding: 0;
margin: 0;
}
nav li {
display: inline-block;
margin-left: 10px;
}
nav li a {
border-radius: 5px;
font-weight: 800;
font-size: 14px;
padding: 0.5em 1em;
text-shadow: none;
text-transform: uppercase;
transition: all .25s;
-moz-transition: all .25s;
-webkit-transition: all .25s;
}
nav li a:hover {
background: #252525;
box-shadow: inset 0 1px 3px rgba(0,0,0,.5), 0 1px 0 rgba(255,255,255,.1);
text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
nav li.current a {
background: #fc0;
color: #222;
box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 1px 5px rgba(0,0,0,.5);
text-shadow: 0 1px 0 rgba(255,255,255,.3);
}
/* Footer */
body > footer {
background: #222;
font-size: 16px;
padding-bottom: 5px;
color: #888;
margin-top: 40px;
}
body > footer a {
color: #fff;
}
body > footer .align-right p, body > footer .align-right img {
display: inline-block;
}
body > footer .align-right img {
position: relative;
top: 14px;
margin-left: 5px;
}
/* Utilities */
.align-left {
text-align: left;
}
.align-right {
text-align: right;
}
.align-center {
text-align: center;
}
/* Sections */
.intro .content {
padding: 10px 0 40px;
}
.intro p {
font-size: 3.2em;
line-height: 1em;
margin: 0;
}
.features .content {
padding: 20px 0 40px;
}
.quickstart {
background: #3F1F1F;
color: #fff;
margin: 60px 0 80px;
box-shadow: inset 0 3px 10px rgba(0,0,0,.4);
}
.quickstart .content {
padding: 0px 0;
}
.quickstart .code {
margin: -30px 0;
float: right;
}
.quickstart h4 {
margin: 48px 0 0;
font-size: 28px;
text-shadow: 0 1px 3px rgba(0,0,0,.8);
}
.free-hosting .content {
/*margin-bottom: 40px;*/
position: relative;
}
.free-hosting .pane {
background: #444;
border-radius: 10px;
padding: 40px 70px 30px;
/*color: #222;*/
text-shadow: none;
}
.free-hosting img {
float: left;
margin: -20px 40px -40px -20px;
}
.free-hosting h2 {
/*font-weight: 800;*/
}
.free-hosting p,
.free-hosting a {
font-weight: inherit;
}
.free-hosting p {
margin: 0.75em;
}
.free-hosting a {
/*color: #c00;*/
}
.free-hosting .content:after {
content: " ";
float: right;
background: url(../img/footer-arrow.png) top left no-repeat;
width: 73px;
height: 186px;
position: absolute;
right: 30px;
bottom: -60px;
}
/* Code */
.quickstart .code {
display: block;
background: #3d3d3d;
border-radius: 5px;
font-family: Menlo, Consolas, "Courier New", Courier, "Liberation Mono", monospace;
line-height: 1.3em;
box-shadow: 0 5px 30px rgba(0,0,0,.3);
}
.quickstart .code .title {
display: block;
text-align: center;
margin: 0;
padding: 5px 0;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
box-shadow: box-shadow: 0 3px 10px rgba(0,0,0,.5);
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-size: 16px;
font-weight: normal;
color: #444;
text-shadow: 0 1px 0 rgba(255,255,255,.5);
background: #f7f7f7;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y3ZjdmNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjclIiBzdG9wLWNvbG9yPSIjY2ZjZmNmIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2FhYWFhYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
background: -moz-linear-gradient(top, #f7f7f7 0%, #cfcfcf 7%, #aaaaaa 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7f7f7), color-stop(7%,#cfcfcf), color-stop(100%,#aaaaaa));
background: -webkit-linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
background: -o-linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
background: -ms-linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
background: linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#aaaaaa',GradientType=0 );
border-bottom: 1px solid #111;
}
.quickstart .code .shell {
padding: 20px;
text-shadow: none;
}
.quickstart .code .line {
display: block;
margin: 0;
padding: 0;
}
.quickstart .code .line span {
display: inline-block;
}
.quickstart .code .path {
color: #87ceeb;
}
.quickstart .code .prompt {
color: #cd5c5c;
}
.quickstart .code .command {
color: #f0e68c;
}
.quickstart .code .output {
color: #888;
}
/* Documentation */
.docs .content {
padding: 0;
}
.docs article {
background: #444;
border-radius: 10px;
padding: 40px 40px 30px;
box-shadow: 0 3px 10px rgba(0,0,0,.1);
min-height: 800px;
}
.docs aside {
padding-top: 30px;
}
.docs aside h4 {
text-transform: uppercase;
font-size: 14px;
font-weight: 700;
padding: 0 0 10px 30px;
margin-left: -30px;
display: inline-block;
border-bottom: 1px solid #c00;
}
.docs aside ul {
padding-left: 0;
}
.docs aside li {
list-style-type: none;
}
.docs aside li a {
font-size: 16px;
position: relative
}
.docs aside li.current a:before {
content: "";
border-color: transparent transparent transparent #444;
border-style: solid;
border-width: 10px;
width: 0;
height: 0;
position: absolute;
top: 0;
left: -30px;
}
.section-nav {
text-align: center;
padding-top: 40px;
position: relative;
background: url(../img/article-footer.png) top center no-repeat;
}
.section-nav > div {
width: 49.5%;
}
.section-nav a, .section-nav span {
color: #fff;
font-size: 16px;
text-transform: uppercase;
font-weight: 700;
padding: 8px 12px 10px;
border-radius: 5px;
/*border: 1px solid #333;*/
background: #999;
box-shadow: 0 1px 3px rgba(0,0,0,.3), inset 0 1px 1px rgba(255,255,255,.5);
background: #777;
}
.section-nav a:hover {
color: #fff;
background: #888;
}
.section-nav .next, .section-nav .prev {
position: relative;
}
.section-nav .next:after, .section-nav .prev:before {
font-size: 36px;
color: #222;
font-weight: 800;
text-shadow: 0 1px 0 rgba(255,255,255,.4);
position: absolute;
top: -7px;
}
.section-nav .next:after {
content: "";
right: 10px;
}
.section-nav .prev:before {
content: "";
left: 10px;
}
.section-nav .prev, .section-nav .prev:hover {
/*float: left;*/
padding-left: 30px;
}
.section-nav .next, .section-nav .next:hover {
/*float: right;*/
padding-right: 30px;
}
.section-nav .disabled {
opacity: .5;
/*filter: alpha*/
cursor: default;
}
/* Code Highlighting */
pre, code {
white-space: pre;
display: inline-block;
margin: 0;
padding: 0;
font-family: Menlo, Consolas, "Courier New", Courier, "Liberation Mono", monospace;
font-size: 16px;
padding: 0 .5em;
line-height: 1.8em;
}
.highlight, p > pre, p > code {
background: #333;
color: #fff;
border-radius: 5px;
box-shadow: inset 0 1px 10px rgba(0,0,0,.3),
0 1px 0 rgba(255,255,255,.1),
0 -1px 0 rgba(0,0,0,.5);
}
.highlight {
padding: 10px 0;
width: 100%;
overflow: scroll;
}
/* HTML Elements */
h1, h2, h3, h4, h5, h6 {
margin: 0;
}
a {
color: #fc0;
text-decoration: none;
transition: all .25s;
-moz-transition: all .25s;
-webkit-transition: all .25s;
}
a:hover {
color: #f90;
}
strong {
font-weight: 700;
}
p {
line-height: 1.5em;
}
.left { float: left; }
.right { float: right; }
.align-right { text-align: right; }
.align-left { text-align: left; }
.align-center { text-align: center; }
/* Article HTML */
article h2,
article h3,
article h4,
article h5,
article h6 {
margin: 1em 0;
}
article h4 {
color: #fff;
}
h5, h6 {
font-size: 1em;
font-style: italic;
}
article ul li p {
margin: 0;
}
article ul li, article ol li {
line-height: 1.5em;
margin-bottom: 0.5em;
}
article ul li blockquote {
margin: 10px 0;
}
blockquote {
border-left: 2px solid #777;
padding-left: 20px;
font-style: italic;
font-size: 18px;
font-weight: 500;
}
/* Tables */
table {
width: 100%;
background: #555;
margin: .5em 0;
border-radius: 5px;
box-shadow: 0 1px 3px rgba(0,0,0,.3);
}
thead {
border-top-left-radius: 5px;
border-top-right-radius: 5px;
color: #fff;
background: #3a3a3a;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzNhM2EzYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMxZTFlMWUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, #3a3a3a 0%, #1e1e1e 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#3a3a3a), color-stop(100%,#1e1e1e));
background: -webkit-linear-gradient(top, #3a3a3a 0%,#1e1e1e 100%);
background: -o-linear-gradient(top, #3a3a3a 0%,#1e1e1e 100%);
background: -ms-linear-gradient(top, #3a3a3a 0%,#1e1e1e 100%);
background: linear-gradient(to bottom, #3a3a3a 0%,#1e1e1e 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3a3a3a', endColorstr='#1e1e1e',GradientType=0 );
}
thead th {
position: relative;
box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
}
thead th:first-child {
border-top-left-radius: 5px;
}
thead th:last-child {
border-top-right-radius: 5px;
}
td {
padding: .5em .75em;
}
td p {
margin: 0;
}
th {
text-transform: uppercase;
font-size: 16px;
padding: .5em .75em;
text-shadow: 0 -1px 0 rgba(0,0,0,.9);
color: #888;
}
tbody td {
border-top: 1px solid rgba(0,0,0,.1);
box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwLjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
background: -moz-linear-gradient(top, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0.1)), color-stop(100%,rgba(255,255,255,0)));
background: -webkit-linear-gradient(top, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
background: -o-linear-gradient(top, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
background: -ms-linear-gradient(top, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
background: linear-gradient(to bottom, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1affffff', endColorstr='#00ffffff',GradientType=0 );
}
td p {
font-size: 16px;
}
td p code {
font-size: 14px;
}
code.option, th .option, code.filter, th .filter {
color: #50B600;
}
code.flag, th .flag, code.output, th .output {
color: #049DCE;
}
code.option, code.flag, code.filter, code.output {
margin-bottom: 2px;
}
/* Note types */
.note {
margin: 30px 0;
margin-left: -50px;
padding: 20px 20px 24px;
padding-left: 50px;
border-radius: 0px 5px 5px 0px;
position: relative;
box-shadow: 0 1px 5px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255,255,255,.2), inset 0 -1px 0 rgba(0,0,0,.3);
background: #7e6d42;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzdlNmQ0MiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM1YzRlMzUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, #7e6d42 0%, #5c4e35 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7e6d42), color-stop(100%,#5c4e35));
background: -webkit-linear-gradient(top, #7e6d42 0%,#5c4e35 100%);
background: -o-linear-gradient(top, #7e6d42 0%,#5c4e35 100%);
background: -ms-linear-gradient(top, #7e6d42 0%,#5c4e35 100%);
background: linear-gradient(to bottom, #7e6d42 0%,#5c4e35 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7e6d42', endColorstr='#5c4e35',GradientType=0 );
}
.note:before {
content: "";
position: absolute;
top: -10px;
left: 0px;
border-color: transparent #222 #222 transparent;
border-style: solid;
border-width: 5px;
width: 0;
height: 0;
}
.note h5, .note p {
margin: 0;
color: #fff;
}
.note h5 {
line-height: 1.5em;
font-weight: 800;
font-style: normal;
}
.note p {
font-weight: 400;
font-size: .75em;
}
.info {
background: #0389aa;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAzODlhYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDYxN2YiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, #0389aa 0%, #00617f 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#0389aa), color-stop(100%,#00617f));
background: -webkit-linear-gradient(top, #0389aa 0%,#00617f 100%);
background: -o-linear-gradient(top, #0389aa 0%,#00617f 100%);
background: -ms-linear-gradient(top, #0389aa 0%,#00617f 100%);
background: linear-gradient(to bottom, #0389aa 0%,#00617f 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0389aa', endColorstr='#00617f',GradientType=0 );
}
.warning {
background: #9e2812;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzllMjgxMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM2ZjBkMGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, #9e2812 0%, #6f0d0d 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#9e2812), color-stop(100%,#6f0d0d));
background: -webkit-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
background: -o-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
background: -ms-linear-gradient(top, #9e2812 0%,#6f0d0d 100%);
background: linear-gradient(to bottom, #9e2812 0%,#6f0d0d 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9e2812', endColorstr='#6f0d0d',GradientType=0 );
}
.info:before {
border-color: transparent #00617f #00617f transparent;
}
.warning:before {
border-color: transparent #6f0d0d #6f0d0d transparent;
}
.note:after {
content: "★";
color: #fc0;
position: absolute;
top: 14px;
left: 14px;
font-size: 28px;
font-weight: bold;
text-shadow: 0 -1px 0 rgba(0,0,0,.5);
}
.info:after {
content: "ⓘ";
color: #fff;
position: absolute;
top: 15px;
left: 15px;
font-size: 28px;
font-weight: bold;
text-shadow: 0 -1px 0 rgba(0,0,0,.5);
}
.warning:after {
content: "‼";
color: #fc0;
position: absolute;
top: 15px;
left: 15px;
font-size: 32px;
font-weight: bold;
text-shadow: 0 -1px 0 rgba(0,0,0,.5);
}

View File

@ -1 +0,0 @@
body{font:13px/1.5 Helvetica,Arial,'Liberation Sans',FreeSans,sans-serif}a:focus{outline:1px dotted invert}hr{border:0 #ccc solid;border-top-width:1px;clear:both;height:0}h1{font-size:25px}h2{font-size:23px}h3{font-size:21px}h4{font-size:19px}h5{font-size:17px}h6{font-size:15px}ol{list-style:decimal}ul{list-style:square}li{margin-left:30px}p,dl,hr,h1,h2,h3,h4,h5,h6,ol,ul,pre,table,address,fieldset{margin-bottom:20px}

11
site/docs/index.html Normal file
View File

@ -0,0 +1,11 @@
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta http-equiv="refresh" content="0;url=home">
<title>Jekyll</title>
</head>
<body style="background: #333;">
</body>
</html>

BIN
site/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
site/img/article-footer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
site/img/footer-arrow.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
site/img/footer-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
site/img/logo-2x.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

BIN
site/img/octojekyll.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
site/img/tube.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
site/img/tube1x.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

@ -1,40 +1,77 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
---
layout: default
title: Jekyll • Simple, blog-aware, static sites
overview: true
---
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-us">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>jekyll</title>
<link rel="stylesheet" href="css/reset.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="css/screen.css" type="text/css" media="screen, projection" />
</style>
</head>
<body>
<div id="left_bg" class="bg"></div>
<div id="right_bg" class="bg"></div>
<div class="container">
<div class="center">
<div id="left" class="middle">
jek
<section class="intro">
<div class="content">
<p class="first">Transform your plain text into static websites and blogs. <br />So easy, <strong>it&rsquo;s scary</strong>.</p>
</div>
</section>
<section class="features">
<div class="content">
<div class="grid4 first">
<h2>Simple</h2>
<p>
transform your text
No more databases, comment moderation, or pesky updates to install—just <em>your content</em>.
</p>
<ul>
<li><a href="https://github.com/mojombo/jekyll">code</a></li>
<li><a href="https://github.com/mojombo/jekyll/wiki/install">install</a></li>
</ul>
<a href="https://github.com/mojombo/jekyll/wiki/Usage" class="">How Jekyll works &rarr;</a>
</div>
<div id="right" class="middle">
yll
<div class="grid4">
<h2>Static</h2>
<p><a href="http://daringfireball.net/projects/markdown/">Markdown</a> (or <a href="http://textile.sitemonks.com/">Textile</a>), <a href="http://liquidmarkup.org/">Liquid</a>, HTML <span class="amp">&amp;</span> CSS go in. Static sites come out ready for deployment.</p>
<a href="https://github.com/mojombo/jekyll/wiki/Template-Data" class="">Jekyll template guide &rarr;</a>
</div>
<div class="grid4">
<h2>Blog-aware</h2>
<p>
into a monster
Permalinks, categories, pages, posts, and custom layouts are all first-class citizens here.
</p>
<a href="https://github.com/mojombo/jekyll/wiki/Blog-Migrations" class="">Migrate your blog &rarr;</a>
</div>
<div class="clear"></div>
</div>
</section>
<section class="quickstart">
<div class="content">
<div class="grid5 first">
<h4>Get up and running <em>in seconds</em>.</h4>
</div>
<div class="code">
<p class="title">Quick-start Instructions</p>
<div class="shell">
<p class="line">
<span class="path">~</span>
<span class="prompt">$</span>
<span class="command">gem install jekyll</span>
</p>
<p class="line">
<span class="path">~</span>
<span class="prompt">$</span>
<span class="command">cd my/awesome/site</span>
</p>
<p class="line">
<span class="path">~/my/awesome/site</span>
<span class="prompt">$</span>
<span class="command">jekyll --server</span>
</p>
<p class="line">
<span class="output"># => Now browse to http://localhost:4000</span>
</p>
<ul>
<li><a href="https://github.com/mojombo/jekyll/wiki">docs</a></li>
<li><a href="https://github.com/mojombo/jekyll/wiki/blog-migrations">switch</a></li>
</ul>
</div>
</div>
<div class="clear"></div>
</div>
</body>
</html>
</section>
<section class="free-hosting">
<div class="content">
<img src="img/octojekyll.png" alt="Free Jekyll hosting on GitHub Pages">
<div class="pane">
<h2><strong>Free hosting</strong> with GitHub Pages</h2>
<p>Sick of dealing with hosting companies? <a href="http://pages.github.com/">GitHub Pages</a> are <em>powered by Jekyll</em>, so you can easily deploy your site using GitHub for free&mdash;<a href="https://help.github.com/articles/setting-up-a-custom-domain-with-pages">custom domain name</a> and all.</p>
<a href="http://pages.github.com/" class="">Learn more about GitHub Pages &rarr;</a>
<div class="clear"></div>
</div>
</div>
</section>

4
site/js/modernizr-2.5.3.min.js vendored Executable file

File diff suppressed because one or more lines are too long