JavaScript Haskell Ruby C Shell Perl Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
content
layouts
lib
multi
output
resources
tasks
.gems
.gitignore
README.md
Rakefile
Rules
config.rb
config.ru
config.yaml
img_latest_blog_dir
latest.ymd

README.md

yannesposito.com

This is the source code for the yannesposito.com website.

It is mainly a multi-language blog based on nanoc.

Notice, this is not a clean system. Mainly because I have used it for some years now. I just want it to work, not to be a nice piece of code. But in the end I know I will make it clean.

What you'll need to use it:

  • nanocgem install nanoc
  • zsh → Installed by default on most good system
  • A bunch of gems: gem install kramdown builder sass rainpress
  • Optionally if you want to serve locally: gem install unicorn rack rack-contrib rack-rewrite mime-types

Optionally

Here is a short explanation of the role of each file:

config.rb            → nanoc central configuration file
config.ru            → Rack server configuration
config.yaml          → A YAML configuration file (mostly strings)
content/             → The directory where nanoc will search for most of the content
img_latest_blog_dir@ → A link to the latest blog image directory
latest.md@           → A link to the latest blog file
layouts/             → HTML Layouts for your webpages
lib/                 → Some ruby files loaded by nanoc before generating
multi/               → Where you should write content
output/              → Where the content is loaded
Rakefile             → Ruby actions
README.md            → This file
resources/           → Some files I used and wanted to keep
Rules                → Generation rules
tasks/               → Where I put most of my scripts

Here are features I added:

analytics.rb → Functions to add web analytics code
calendar.rb  → Functions to show a date nicely in HTML
gitmtime.rb  → Show time using git last change log
graph.rb     → Use graphviz to draw graphs
helpers.rb   → Some standard nanoc helpers are added
html.rb      → Layout block helper
intenseDebate.rb → IntenseDebate integration
macros.rb    → Macros system (%latex => LaTeX, etc...)
mail.rb      → My uniquely encoded personal email
multiMenu.rb → The machinery for the menu
multi.rb     → Machinery for multi-language support
nanoc_item_conf.rb
repair_html.rb
syntaxColorize.rb
tag.rb
ultraviolet.rb
y.rb