diff --git a/website/helpers/print.py b/website/helpers/print.py
new file mode 100644
index 0000000..41eb82c
--- /dev/null
+++ b/website/helpers/print.py
@@ -0,0 +1,35 @@
+# Copyright (c) 2012 Web Notes Technologies Pvt Ltd.
+# License: GNU General Public License (v3). For more information see license.txt
+
+from __future__ import unicode_literals
+import webnotes
+from webnotes import _
+
+def get_args():
+	if not webnotes.form_dict.doctype or not webnotes.form_dict.name \
+		or not webnotes.form_dict.format:
+		return {
+			"body": """<h1>Error</h1>
+				<p>Parameters doctype, name and format required</p>
+				<pre>%s</pre>""" % repr(webnotes.form_dict)
+		}
+		
+	obj = webnotes.get_obj(webnotes.form_dict.doctype, webnotes.form_dict.name)
+	return {
+		"body": get_html(obj.doc, obj.doclist)
+	}
+
+def get_html(doc, doclist):
+	from jinja2 import Environment
+	from core.doctype.print_style.print_style import get_print_style
+	from core.doctype.print_format.print_format import get_print_format
+
+	template = Environment().from_string(get_print_format(webnotes.form_dict.format))
+	
+	args = {
+		"doc": doc,
+		"doclist": doclist,
+		"print_style": get_print_style()
+	}
+	html = template.render(args)
+	return html
diff --git a/website/templates/html/outer.html b/website/templates/html/outer.html
index 207c124..c46aaa7 100644
--- a/website/templates/html/outer.html
+++ b/website/templates/html/outer.html
@@ -1,8 +1,6 @@
 {% extends "html/base.html" %}
 
 {% block body %}
-	<header>
-	</header>
 	<div class="container">
 		<div class="pull-right" style="margin:4px;" id="user-tools">
 			<a id="login-link" href="login">Login</a>
diff --git a/website/templates/pages/print.html b/website/templates/pages/print.html
new file mode 100644
index 0000000..21fb9a2
--- /dev/null
+++ b/website/templates/pages/print.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+	<meta charset="utf-8">
+	<meta name="viewport" content="width=device-width, initial-scale=1.0">
+	<title>{{ doc and (doc.name + " - " + doc.doctype) or "Error" }}</title>
+	<meta name="generator" content="wnframework">	
+</head>
+<body>
+	{{ body }}
+</body>
+</html>
\ No newline at end of file
diff --git a/website/utils.py b/website/utils.py
index 443bde0..4d9cee9 100644
--- a/website/utils.py
+++ b/website/utils.py
@@ -43,10 +43,11 @@
 	"about": "website.doctype.about_us_settings.about_us_settings.get_args",
 	"contact": "Contact Us Settings",
 	"blog": "website.helpers.blog.get_blog_template_args",
-	"writers": "website.helpers.blog.get_writers_args"
+	"writers": "website.helpers.blog.get_writers_args",
+	"print": "website.helpers.print.get_args"
 }
 
-no_cache = "message"
+no_cache = ["message", "print"]
 
 def render(page_name):
 	"""render html page"""
