aboutsummaryrefslogtreecommitdiffstats
path: root/simple-bootstrap
diff options
context:
space:
mode:
Diffstat (limited to 'simple-bootstrap')
-rw-r--r--simple-bootstrap/readme.md5
-rw-r--r--simple-bootstrap/screenshot.pngbin0 -> 104438 bytes
-rw-r--r--simple-bootstrap/static/static/css/style.css177
-rw-r--r--simple-bootstrap/static/style.css79
-rw-r--r--simple-bootstrap/templates/analytics.html11
-rwxr-xr-xsimple-bootstrap/templates/archives.html16
-rwxr-xr-xsimple-bootstrap/templates/article.html46
-rwxr-xr-xsimple-bootstrap/templates/author.html7
-rwxr-xr-xsimple-bootstrap/templates/base.html63
-rwxr-xr-xsimple-bootstrap/templates/categories.html10
-rwxr-xr-xsimple-bootstrap/templates/category.html8
-rwxr-xr-xsimple-bootstrap/templates/index.html16
-rwxr-xr-xsimple-bootstrap/templates/page.html9
-rw-r--r--simple-bootstrap/templates/pagination.html17
-rw-r--r--simple-bootstrap/templates/period_archives.html16
-rwxr-xr-xsimple-bootstrap/templates/tag.html7
-rwxr-xr-xsimple-bootstrap/templates/tags.html12
-rwxr-xr-xsimple-bootstrap/templates/translations.html9
18 files changed, 508 insertions, 0 deletions
diff --git a/simple-bootstrap/readme.md b/simple-bootstrap/readme.md
new file mode 100644
index 0000000..12138cd
--- /dev/null
+++ b/simple-bootstrap/readme.md
@@ -0,0 +1,5 @@
+this is a simple bootstrap pelican theme based on bootstrap [Narrow jumbotron](http://getbootstrap.com/examples/jumbotron-narrow/) template
+
+## Screenshot ##
+
+![screenshot](screenshot.png)
diff --git a/simple-bootstrap/screenshot.png b/simple-bootstrap/screenshot.png
new file mode 100644
index 0000000..8a70750
--- /dev/null
+++ b/simple-bootstrap/screenshot.png
Binary files differ
diff --git a/simple-bootstrap/static/static/css/style.css b/simple-bootstrap/static/static/css/style.css
new file mode 100644
index 0000000..7e03c3f
--- /dev/null
+++ b/simple-bootstrap/static/static/css/style.css
@@ -0,0 +1,177 @@
+/* Space out content a bit */
+body {
+ padding-top: 20px;
+}
+
+/* Everything but the jumbotron gets side spacing for mobile first views */
+.header,
+.footer,
+.content,
+.comment {
+ padding-left: 5px;
+ padding-right: 5px;
+}
+.nav-pills{
+ display:none;
+}
+/* Custom page header */
+.header {
+ border-bottom: 1px solid #e5e5e5;
+}
+/* Make the masthead heading the same height as the navigation */
+.header h3 {
+ margin-top: 0;
+ margin-bottom: 0;
+ line-height: 40px;
+ padding-bottom: 19px;
+}
+
+/* Custom page footer */
+.footer {
+ padding-top: 19px;
+ color: #777;
+ border-top: 1px solid #e5e5e5;
+ margin-top:40px;
+}
+
+/* Customize container */
+@media (min-width: 768px) {
+ .container {
+ max-width: 730px;
+ }
+}
+.container-narrow > hr {
+ margin: 30px 0;
+}
+
+/* Main marketing message and sign up button */
+.jumbotron {
+ text-align: center;
+ border-bottom: 1px solid #e5e5e5;
+}
+.jumbotron .btn {
+ font-size: 21px;
+ padding: 14px 24px;
+}
+
+/* Supporting marketing content */
+.marketing {
+ margin: 40px 0;
+}
+.marketing p + h4 {
+ margin-top: 28px;
+}
+.header .text-muted a{
+ color:#999;
+ text-decoration:none;
+}
+.entry-content{
+ padding:5px 0 15px;;
+ line-height:1.8;
+}
+.hentry{
+ margin-bottom:18px;
+}
+.pager{
+ margin-bottom:30px;
+}
+.pager ul{
+ margin:0;
+ padding:0;
+}
+.post-info{
+ padding-bottom:30px;
+}
+.post-info address{
+ display:inline;
+}
+.comment{
+ padding-top:15px;
+ padding-bottom:15px;
+}
+.archive-list li{
+ font-size:16px;
+ margin-bottom:10px;
+}
+.bottom-nav{display:none;}
+.bottom-nav a{margin-left:15px;}
+/* code style */
+.hightlight { background-color: #ffffcc }
+.c { color: #999988; font-style: italic } /* Comment */
+.err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.k { color: #000000; font-weight: bold } /* Keyword */
+.o { color: #000000; font-weight: bold } /* Operator */
+.cm { color: #999988; font-style: italic } /* Comment.Multiline */
+.cp { color: #999999; font-weight: bold; font-style: italic } /* Comment.Preproc */
+.c1 { color: #999988; font-style: italic } /* Comment.Single */
+.cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
+.gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
+.ge { color: #000000; font-style: italic } /* Generic.Emph */
+.gr { color: #aa0000 } /* Generic.Error */
+.gh { color: #999999 } /* Generic.Heading */
+.gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
+.go { color: #888888 } /* Generic.Output */
+.gp { color: #555555 } /* Generic.Prompt */
+.gs { font-weight: bold } /* Generic.Strong */
+.gu { color: #aaaaaa } /* Generic.Subheading */
+.gt { color: #aa0000 } /* Generic.Traceback */
+.kc { color: #000000; font-weight: bold } /* Keyword.Constant */
+.kd { color: #000000; font-weight: bold } /* Keyword.Declaration */
+.kn { color: #000000; font-weight: bold } /* Keyword.Namespace */
+.kp { color: #000000; font-weight: bold } /* Keyword.Pseudo */
+.kr { color: #000000; font-weight: bold } /* Keyword.Reserved */
+.kt { color: #445588; font-weight: bold } /* Keyword.Type */
+.m { color: #009999 } /* Literal.Number */
+.s { color: #d01040 } /* Literal.String */
+.na { color: #008080 } /* Name.Attribute */
+.nb { color: #0086B3 } /* Name.Builtin */
+.nc { color: #445588; font-weight: bold } /* Name.Class */
+.no { color: #008080 } /* Name.Constant */
+.nd { color: #3c5d5d; font-weight: bold } /* Name.Decorator */
+.ni { color: #800080 } /* Name.Entity */
+.ne { color: #990000; font-weight: bold } /* Name.Exception */
+.nf { color: #990000; font-weight: bold } /* Name.Function */
+.nl { color: #990000; font-weight: bold } /* Name.Label */
+.nn { color: #555555 } /* Name.Namespace */
+.nt { color: #000080 } /* Name.Tag */
+.nv { color: #008080 } /* Name.Variable */
+.ow { color: #000000; font-weight: bold } /* Operator.Word */
+.w { color: #bbbbbb } /* Text.Whitespace */
+.mf { color: #009999 } /* Literal.Number.Float */
+.mh { color: #009999 } /* Literal.Number.Hex */
+.mi { color: #009999 } /* Literal.Number.Integer */
+.mo { color: #009999 } /* Literal.Number.Oct */
+.sb { color: #d01040 } /* Literal.String.Backtick */
+.sc { color: #d01040 } /* Literal.String.Char */
+.sd { color: #d01040 } /* Literal.String.Doc */
+.s2 { color: #d01040 } /* Literal.String.Double */
+.se { color: #d01040 } /* Literal.String.Escape */
+.sh { color: #d01040 } /* Literal.String.Heredoc */
+.si { color: #d01040 } /* Literal.String.Interpol */
+.sx { color: #d01040 } /* Literal.String.Other */
+.sr { color: #009926 } /* Literal.String.Regex */
+.s1 { color: #d01040 } /* Literal.String.Single */
+.ss { color: #990073 } /* Literal.String.Symbol */
+.bp { color: #999999 } /* Name.Builtin.Pseudo */
+.vc { color: #008080 } /* Name.Variable.Class */
+.vg { color: #008080 } /* Name.Variable.Global */
+.vi { color: #008080 } /* Name.Variable.Instance */
+.il { color: #009999 } /* Literal.Number.Integer.Long */
+/* Responsive: Portrait tablets and up */
+@media screen and (min-width: 768px) {
+ /* Remove the padding we set earlier */
+ .header,
+ .content,
+ .footer,
+ .comment {
+ padding-left: 0;
+ padding-right: 0;
+ }
+ /* Space out the masthead */
+ .header {
+ margin-bottom: 30px;
+ }
+ .nav-pills,.bottom-nav{
+ display:block;
+ }
+}
diff --git a/simple-bootstrap/static/style.css b/simple-bootstrap/static/style.css
new file mode 100644
index 0000000..ae7a83f
--- /dev/null
+++ b/simple-bootstrap/static/style.css
@@ -0,0 +1,79 @@
+/* Space out content a bit */
+body {
+ padding-top: 20px;
+ padding-bottom: 20px;
+}
+
+/* Everything but the jumbotron gets side spacing for mobile first views */
+.header,
+.marketing,
+.footer {
+ padding-left: 15px;
+ padding-right: 15px;
+}
+
+/* Custom page header */
+.header {
+ border-bottom: 1px solid #e5e5e5;
+}
+/* Make the masthead heading the same height as the navigation */
+.header h3 {
+ margin-top: 0;
+ margin-bottom: 0;
+ line-height: 40px;
+ padding-bottom: 19px;
+}
+
+/* Custom page footer */
+.footer {
+ padding-top: 19px;
+ color: #777;
+ border-top: 1px solid #e5e5e5;
+}
+
+/* Customize container */
+@media (min-width: 768px) {
+ .container {
+ max-width: 730px;
+ }
+}
+.container-narrow > hr {
+ margin: 30px 0;
+}
+
+/* Main marketing message and sign up button */
+.jumbotron {
+ text-align: center;
+ border-bottom: 1px solid #e5e5e5;
+}
+.jumbotron .btn {
+ font-size: 21px;
+ padding: 14px 24px;
+}
+
+/* Supporting marketing content */
+.marketing {
+ margin: 40px 0;
+}
+.marketing p + h4 {
+ margin-top: 28px;
+}
+
+/* Responsive: Portrait tablets and up */
+@media screen and (min-width: 768px) {
+ /* Remove the padding we set earlier */
+ .header,
+ .marketing,
+ .footer {
+ padding-left: 0;
+ padding-right: 0;
+ }
+ /* Space out the masthead */
+ .header {
+ margin-bottom: 30px;
+ }
+ /* Remove the bottom border on the jumbotron for visual effect */
+ .jumbotron {
+ border-bottom: 0;
+ }
+}
diff --git a/simple-bootstrap/templates/analytics.html b/simple-bootstrap/templates/analytics.html
new file mode 100644
index 0000000..b96f455
--- /dev/null
+++ b/simple-bootstrap/templates/analytics.html
@@ -0,0 +1,11 @@
+{% if GOOGLE_ANALYTICS %}
+<script type="text/javascript">
+var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
+document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
+</script>
+<script type="text/javascript">
+try {
+ var pageTracker = _gat._getTracker("{{GOOGLE_ANALYTICS}}");
+pageTracker._trackPageview();
+} catch(err) {}</script>
+{% endif %} \ No newline at end of file
diff --git a/simple-bootstrap/templates/archives.html b/simple-bootstrap/templates/archives.html
new file mode 100755
index 0000000..eb5b2d3
--- /dev/null
+++ b/simple-bootstrap/templates/archives.html
@@ -0,0 +1,16 @@
+{% extends "base.html" %}
+{% block archclass %} class="active"{%endblock%}
+{% block title %}Archives{%endblock%}
+{% block content %}
+
+<dl>
+ {% for year, date_year in dates|groupby( 'date.year' )|sort(reverse=True) %}
+ <h3><a href="{{SITEURL}}/{{year}}" class="text">Archive for {{ year }}</a></h3>
+ <ul class="archive-list">
+ {% for article in date_year %}
+ <li><span class="text-muted">{{article.locale_date}} &raquo; </span><a href="{{ SITEURL }}/{{ article.url }}">{{article.title}}</a></li>
+ {% endfor %}
+ </ul>
+ {% endfor %}
+</dl>
+{% endblock %}
diff --git a/simple-bootstrap/templates/article.html b/simple-bootstrap/templates/article.html
new file mode 100755
index 0000000..9eae108
--- /dev/null
+++ b/simple-bootstrap/templates/article.html
@@ -0,0 +1,46 @@
+{% extends "base.html" %}
+{% block title %}{{ article.title }} - {{SITENAME}}{% endblock title %}
+{% block content %}
+<section id="content" class="article content">
+ <header>
+ <h2 class="entry-title">
+ <a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark"
+ title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></h2>
+ {% import 'translations.html' as translations with context %}
+ {{ translations.translations_for(article) }}
+ </header>
+
+
+ <div class="entry-content">
+ {{ article.content }}
+ </div><!-- /.entry-content -->
+ <footer class="post-info text-muted">
+ Posted on <abbr class="published" title="{{ article.date.isoformat() }}">
+ {{ article.locale_date }}
+ </abbr>
+ {% if article.author %}
+ <address class="vcard author">
+ by <a class="url fn" href="{{ SITEURL }}/{{ article.author.url }}">{{ article.author }}</a>
+ </address> in <a href="{{ SITEURL }}/{{ article.category.url }}">{{ article.category }}</a> Tagged {% if article.tags %}{% for tag in article.tags %}<a href="{{ SITEURL }}/{{ tag.url }}">{{ tag }} </a>{% endfor %}{% endif %}
+ {% endif %}
+ </footer><!-- /.post-info -->
+</section>
+ {% if DISQUS_SITENAME %}
+ <div class="comment">
+ <div id="disqus_thread"></div> <!-- comment app container -->
+ </div>
+ <!-- Comment BEGIN -->
+ <script type="text/javascript">
+ var disqus_shortname = '{{ DISQUS_SITENAME }}'; // required: replace example with your forum shortname
+
+ /* * * DON'T EDIT BELOW THIS LINE * * */
+ (function() {
+ var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
+ dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
+ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
+ })();
+ </script>
+ <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
+ <!-- Comment END -->
+ {% endif %}
+{% endblock %}
diff --git a/simple-bootstrap/templates/author.html b/simple-bootstrap/templates/author.html
new file mode 100755
index 0000000..fde712d
--- /dev/null
+++ b/simple-bootstrap/templates/author.html
@@ -0,0 +1,7 @@
+{% extends "index.html" %}
+{% block title %} Articles by {{ author }} - {{ SITENAME }}{% endblock %}
+{% block navclass %}{%endblock%}
+{% block content_title %}
+<h2>Articles by {{ author }}</h2>
+{% endblock %}
+
diff --git a/simple-bootstrap/templates/base.html b/simple-bootstrap/templates/base.html
new file mode 100755
index 0000000..68b8a10
--- /dev/null
+++ b/simple-bootstrap/templates/base.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ {% block head %}
+ <title>{% block title %}{{ SITENAME }}{% endblock %}</title>
+ <meta charset="utf-8" />
+ <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" />
+ <link href="{{ SITEURL }}/theme/static/css/style.css" rel="stylesheet" />
+ <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+ {% if FEED_ALL_ATOM %}
+ <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Full Atom Feed" />
+ {% endif %}
+ {% if FEED_ALL_RSS %}
+ <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Full RSS Feed" />
+ {% endif %}
+ {% if FEED_ATOM %}
+ <link href="{{ FEED_DOMAIN }}/{{ FEED_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Atom Feed" />
+ {% endif %}
+ {% if FEED_RSS %}
+ <link href="{{ FEED_DOMAIN }}/{{ FEED_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} RSS Feed" />
+ {% endif %}
+ {% if CATEGORY_FEED_ATOM and category %}
+ <link href="{{ FEED_DOMAIN }}/{{ CATEGORY_FEED_ATOM|format(category.slug) }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Categories Atom Feed" />
+ {% endif %}
+ {% if CATEGORY_FEED_RSS and category %}
+ <link href="{{ FEED_DOMAIN }}/{{ CATEGORY_FEED_RSS|format(category.slug) }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Categories RSS Feed" />
+ {% endif %}
+ {% if TAG_FEED_ATOM and tag %}
+ <link href="{{ FEED_DOMAIN }}/{{ TAG_FEED_ATOM|format(tag.slug) }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Tags Atom Feed" />
+ {% endif %}
+ {% if TAG_FEED_RSS and tag %}
+ <link href="{{ FEED_DOMAIN }}/{{ TAG_FEED_RSS|format(tag.slug) }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Tags RSS Feed" />
+ {% endif %}
+ {% endblock head %}
+ </head>
+
+ <body id="index" class="archive">
+ <div class="container">
+ <div class="header">
+ <ul class="nav nav-pills pull-right">
+ <li class="{% block navclass %}{{ NAVCLASS }}{% endblock navclass %}"><a href="{{ SITEURL }}">Home</a></li>
+ {% for p in PAGES %}
+ <li{% if p == page %} class="active"{% endif %}><a href="{{ SITEURL }}/{{ p.url }}">{{ p.title }}</a></li>
+ {% endfor %}
+ <li{% if author or tag %} class="active"{% endif %}{% block archclass %}{{ ARCHCLASS }}{% endblock archclass %}><a href="{{ SITEURL }}/archives.html">Archives</a></li>
+ </ul>
+ <h3 class="text-muted"><a href="{{ SITEURL }}">{{ SITENAME }}</a></h3>
+ <h2 class="text-muted">{{ SITESUBTITLE }}</h2>
+ </div>
+ {% block content %}
+ {% endblock %}
+ <footer id="contentinfo" class="footer">
+ <nav class="pull-right bottom-nav">
+ <a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}">RSS</a>
+ </nav>
+ <address id="about" class="vcard body">
+ &copy; <a href="{{SITEURL}}">{{SITENAME}}</a> Proudly powered by <a href="http://getpelican.com/">Pelican</a>
+ </address><!-- /#about -->
+ </footer><!-- /#contentinfo -->
+ </div><!-- container -->
+ {% include 'analytics.html' %}
+ </body>
+</html>
diff --git a/simple-bootstrap/templates/categories.html b/simple-bootstrap/templates/categories.html
new file mode 100755
index 0000000..e9c8b53
--- /dev/null
+++ b/simple-bootstrap/templates/categories.html
@@ -0,0 +1,10 @@
+{% extends "base.html" %}
+{% block title %} Articles in {{ category }} - {{ SITENAME }}{% endblock %}
+{% block archclass %} class="active"{%endblock%}
+{% block content %}
+<ul>
+{% for category, articles in categories %}
+ <li><a href="{{ SITEURL }}/{{ category.url }}">{{ category }}</a></li>
+{% endfor %}
+</ul>
+{% endblock %}
diff --git a/simple-bootstrap/templates/category.html b/simple-bootstrap/templates/category.html
new file mode 100755
index 0000000..9028680
--- /dev/null
+++ b/simple-bootstrap/templates/category.html
@@ -0,0 +1,8 @@
+{% extends "index.html" %}
+{% block title %} Articles in {{ category }} category - {{ SITENAME }}{% endblock %}
+{% block navclass %}{%endblock%}
+{% block archclass %} class="active"{%endblock%}
+{% block content_title %}
+<h2>Articles in the {{ category }} category</h2>
+{% endblock %}
+
diff --git a/simple-bootstrap/templates/index.html b/simple-bootstrap/templates/index.html
new file mode 100755
index 0000000..af88d8e
--- /dev/null
+++ b/simple-bootstrap/templates/index.html
@@ -0,0 +1,16 @@
+{% extends "base.html" %}
+{% block navclass %}active{%endblock%}
+{% block content %}
+<section id="content" class="content">
+{% block content_title %}
+{% endblock %}
+
+{% for article in articles_page.object_list %}
+ <article class="hentry">
+ <header> <h2 class="entry-title"><a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark" title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></h2> </header>
+ <div class="entry-content"> {{ article.summary }} </div><!-- entry-content -->
+ </article>
+{% endfor %}
+{% include 'pagination.html' %}
+</section><!-- content -->
+{% endblock content %}
diff --git a/simple-bootstrap/templates/page.html b/simple-bootstrap/templates/page.html
new file mode 100755
index 0000000..3a0dc4a
--- /dev/null
+++ b/simple-bootstrap/templates/page.html
@@ -0,0 +1,9 @@
+{% extends "base.html" %}
+{% block title %}{{ page.title }}{%endblock%}
+{% block content %}
+ <h1>{{ page.title }}</h1>
+ {% import 'translations.html' as translations with context %}
+ {{ translations.translations_for(page) }}
+
+ {{ page.content }}
+{% endblock %}
diff --git a/simple-bootstrap/templates/pagination.html b/simple-bootstrap/templates/pagination.html
new file mode 100644
index 0000000..eee5f20
--- /dev/null
+++ b/simple-bootstrap/templates/pagination.html
@@ -0,0 +1,17 @@
+{% if DEFAULT_PAGINATION %}
+<div class="pager">
+ <ul>
+ {% if articles_page.has_previous() %}
+ {% set num = articles_page.previous_page_number() %}
+ <li class="previous"><a href="{{ SITEURL }}/{{ page_name }}{{ num if num > 1 else '' }}.html">← Previous</a></li>
+ {% else %}
+ <li class="previous disabled"><a>← Previous</a></li>
+ {% endif %}
+ {% if articles_page.has_next() %}
+ <li class="next"><a href="{{ SITEURL }}/{{ page_name }}{{ articles_page.next_page_number() }}.html">Next →</a></li>
+ {% else %}
+ <li class="next disabled"><a>Next →</a></li>
+ {% endif %}
+ </ul>
+ </div>
+{% endif %}
diff --git a/simple-bootstrap/templates/period_archives.html b/simple-bootstrap/templates/period_archives.html
new file mode 100644
index 0000000..b7d8f70
--- /dev/null
+++ b/simple-bootstrap/templates/period_archives.html
@@ -0,0 +1,16 @@
+{% extends "base.html" %}
+{% block archclass %} class="active"{%endblock%}
+
+{% block content %}
+
+<dl>
+ {% for year, date_year in dates|groupby( 'date.year' )|sort(reverse=True) %}
+ <h3><a href="{{SITEURL}}/{{year}}" class="text">Archive for {{ year }}</a></h3>
+ <ul class="archive-list">
+ {% for article in date_year %}
+ <li><span class="text-muted">{{article.locale_date}} &raquo; </span><a href="{{ SITEURL }}/{{ article.url }}">{{article.title}}</a></li>
+ {% endfor %}
+ </ul>
+ {% endfor %}
+</dl>
+{% endblock %}
diff --git a/simple-bootstrap/templates/tag.html b/simple-bootstrap/templates/tag.html
new file mode 100755
index 0000000..ff040d5
--- /dev/null
+++ b/simple-bootstrap/templates/tag.html
@@ -0,0 +1,7 @@
+{% extends "index.html" %}
+{% block title %} Articles in {{ tag }} tag - {{ SITENAME }}{% endblock %}
+{% block navclass %}{%endblock%}
+{% block archclass %}active{%endblock%}
+{% block content_title %}
+<h2>Articles with the {{ tag }} tag</h2>
+{% endblock %}
diff --git a/simple-bootstrap/templates/tags.html b/simple-bootstrap/templates/tags.html
new file mode 100755
index 0000000..85377e8
--- /dev/null
+++ b/simple-bootstrap/templates/tags.html
@@ -0,0 +1,12 @@
+{% extends "base.html" %}
+{% block archclass %} class="active"{%endblock%}
+{% block title %}Tags{%endblock%}
+{% block content %}
+
+<ul class="tag">
+ {% for tag in tag_cloud %}
+ <li class="tag-{{ tag.1 }}"><a href="{{ SITEURL }}/{{ tag.0.url }}">{{ tag.0 }}</a></li>
+ {% endfor %}
+</ul>
+{% endblock %}
+
diff --git a/simple-bootstrap/templates/translations.html b/simple-bootstrap/templates/translations.html
new file mode 100755
index 0000000..db8c372
--- /dev/null
+++ b/simple-bootstrap/templates/translations.html
@@ -0,0 +1,9 @@
+{% macro translations_for(article) %}
+{% if article.translations %}
+Translations:
+{% for translation in article.translations %}
+<a href="{{ SITEURL }}/{{ translation.url }}">{{ translation.lang }}</a>
+{% endfor %}
+{% endif %}
+{% endmacro %}
+