diff --git a/public_html/assets/sass/main.sass b/public_html/assets/sass/main.sass
index c8c6926..5845f75 100644
--- a/public_html/assets/sass/main.sass
+++ b/public_html/assets/sass/main.sass
@@ -5,3 +5,16 @@
.table td.success
background-color: #dff0d8 !important
+
+table.builders
+ width: 100%
+
+table.builders td.LastBuild
+ padding: 0.5ex 2ex
+
+table.builders td.Activity
+ padding-left: 2ex
+
+table.builders td a
+ display: block
+ padding: 0.5ex 2ex
diff --git a/templates/builders.html b/templates/builders.html
new file mode 100644
index 0000000..a3892ee
--- /dev/null
+++ b/templates/builders.html
@@ -0,0 +1,52 @@
+{% extends 'layout.html' %}
+{% import 'forms.html' as forms %}
+{% from "box_macros.html" import box %}
+
+{% block content %}
+
Builders: {{ branches|join(', ')|e }}
+
+
+{% for b in builders %}
+
+ {{ b.name|e }} |
+ {% if b.build_url %}
+
+ {{ b.build_label }}
+ {{ b.build_text }}
+ |
+ {% else %}
+ no build |
+ {% endif %}
+ {# Sybren: The following removes the last 'next in', because it's always duplicated,
+ # and removes some newlines (box() adds a
after every list item). #}
+ {{ box(text='
next in '.join(' '.join(b.current_box['text']).split('next in')[:-1]), class_=b.current_box['class']) }}
+
+{% endfor %}
+
+
+{% if num_building > 0 %}
+ {% if authz.advertiseAction('stopAllBuilds', request) or authz.advertiseAction('stopBuild', request) %}
+ Stop Selected Builds
+ {{ forms.stop_build(path_to_root+"builders/_selected/stopselected", authz, on_selected=True, builders=builders, label='Selected Builds') }}
+ Stop All Builds
+ {{ forms.stop_build(path_to_root+"builders/_all/stopall", authz, on_all=True, label='All Builds') }}
+ {% endif %}
+{% endif %}
+
+{% if authz.advertiseAction('cancelAllPendingBuilds', request) %}
+ Cancel Selected Pending Builds
+ {{ forms.cancel_build(path_to_root+"builders/_selected/cancelpendingselected", authz, on_selected=True, builders=builders, label='Selected Pending Builds') }}
+ Cancel All Pending Builds
+ {{ forms.cancel_build(path_to_root+"builders/_all/cancelpendingall", authz, on_all=True, label='All Pending Builds') }}
+{% endif %}
+
+{% if num_online > 0 %}
+ {% if authz.advertiseAction('forceAllBuilds', request) or authz.advertiseAction('forceBuild', request) %}
+ Force Selected Builds
+ {{ forms.force_build(path_to_root+"builders/_selected/forceselected", authz, request, on_selected=True, builders=builders, force_schedulers=force_schedulers, default_props=default_props) }}
+ Force All Builds
+ {{ forms.force_build(path_to_root+"builders/_all/forceall", authz,request, on_all=True, force_schedulers=force_schedulers, default_props=default_props) }}
+ {% endif %}
+{% endif %}
+
+{% endblock %}