diff --git a/nimgen.nimble b/nimgen.nimble
index c6a2625..085580a 100644
--- a/nimgen.nimble
+++ b/nimgen.nimble
@@ -7,7 +7,7 @@ license = "MIT"
bin = @["nimgen"]
srcDir = "src"
-skipDirs = @["nimgen", "tests"]
+skipDirs = @["tests", "web"]
# Dependencies
diff --git a/web/CNAME b/web/CNAME
new file mode 100644
index 0000000..2c6879b
--- /dev/null
+++ b/web/CNAME
@@ -0,0 +1 @@
+nimgen.genotrance.com
\ No newline at end of file
diff --git a/web/nimdoc.cfg b/web/nimdoc.cfg
new file mode 100644
index 0000000..55c2827
--- /dev/null
+++ b/web/nimdoc.cfg
@@ -0,0 +1,1401 @@
+# This is the config file for the documentation generator.
+# (c) 2016 Andreas Rumpf
+# Feel free to edit the templates as you need. If you modify this file, it
+# might be worth updating the hardcoded values in packages/docutils/rstgen.nim
+
+split.item.toc = "20"
+# too long entries in the table of contents wrap around
+# after this number of characters
+
+doc.section = """
+
+"""
+
+# Chunk of HTML emitted for each entry in the HTML table of contents.
+# Available variables are:
+# * $desc: the actual docstring of the item.
+# * $header: the full version of name, including types, pragmas, tags, etc.
+# * $header_plain: like header but without HTML, for attribute embedding.
+# * $itemID: numerical unique entry of the item in the HTML.
+# * $itemSym: short symbolic name of the item for easier hyperlinking.
+# * $itemSymEnc: quoted version for URLs or attributes.
+# * $itemSymOrID: the symbolic name or the ID if that is not unique.
+# * $itemSymOrIDEnc: quoted version for URLs or attributes.
+# * $name: reduced name of the item.
+# * $seeSrc: generated HTML from doc.item.seesrc (if some switches are used).
+
+doc.item = """
+
$header
+
+$desc
+$seeSrc
+
+"""
+
+# Chunk of HTML emitted for each entry in the HTML table of contents.
+# See doc.item for available substitution variables.
+doc.item.toc = """
+
+"""
+
+# HTML rendered for doc.item's seeSrc variable. Note that this will render to
+# the empty string if you don't pass anything through --docSeeSrcURL. Available
+# substitutaion variables here are:
+# * $path: relative path to the file being processed.
+# * $line: line of the item in the original source file.
+# * $url: whatever you did pass through the --docSeeSrcUrl switch (which also
+# gets variables path/line replaced!)
+doc.item.seesrc = """ Source
+"""
+
+doc.toc = """
+
+$content
+
+"""
+
+doc.body_toc = """
+
+
+
+ Search:
+
+ $tableofcontents
+
+
+
+
$moduledesc
+ $content
+
+
+"""
+
+@if boot:
+# This is enabled with the "boot" directive to generate
+# the compiler documentation.
+# As a user, tweak the block below instead.
+# You can add your own global-links entries
+doc.body_toc_group = """
+