diff --git a/core/views_caves.py b/core/views_caves.py
index ecf26d5..f8420d7 100644
--- a/core/views_caves.py
+++ b/core/views_caves.py
@@ -59,6 +59,17 @@ def caveindex(request):
     caves1626.sort(caveCmp)
     return render_with_context(request,'caveindex.html', {'caves1623': caves1623, 'caves1626': caves1626, 'notablecaves':notablecaves, 'cavepage': True})
 
+def millenialcaves(request):
+    caves = Cave.objects.all()
+    notablecavehrefs = settings.NOTABLECAVESHREFS
+    notablecaves = [Cave.objects.get(kataster_number=kataster_number)  for kataster_number in notablecavehrefs ]
+    caves1623 = list(Cave.objects.filter(area__short_name = "1623"))
+    caves1626 = list(Cave.objects.filter(area__short_name = "1626"))
+    caves1623.sort(caveCmp)
+    caves1626.sort(caveCmp)
+    return render_with_context(request,'millenialcaves.html', {'caves1623': caves1623, 'caves1626': caves1626, 'notablecaves':notablecaves, 'cavepage': True})
+
+
 def cave3d(request, cave_id=''):
     cave = getCave(cave_id)
     survexfilename = settings.SURVEX_DATA + cave.survex_file
diff --git a/docker/compose/mysql.env b/docker/compose/mysql.env
new file mode 100644
index 0000000..9cebaa7
--- /dev/null
+++ b/docker/compose/mysql.env
@@ -0,0 +1,5 @@
+MYSQL_ROOT_PASSWORD=expo123
+MYSQL_DATABASE=troggle
+MYSQL_USER=troggleuser
+MYSQL_PASSWORD=expo123
+
diff --git a/docker/mysql.env b/docker/mysql.env
new file mode 100644
index 0000000..9cebaa7
--- /dev/null
+++ b/docker/mysql.env
@@ -0,0 +1,5 @@
+MYSQL_ROOT_PASSWORD=expo123
+MYSQL_DATABASE=troggle
+MYSQL_USER=troggleuser
+MYSQL_PASSWORD=expo123
+
diff --git a/templates/millenialcaves.html b/templates/millenialcaves.html
new file mode 100644
index 0000000..7bc5942
--- /dev/null
+++ b/templates/millenialcaves.html
@@ -0,0 +1,39 @@
+{% extends "cavebase.html" %}
+{% load wiki_markup %}
+
+{% block title %}Cave Index{% endblock %}
+
+{% block content %}
+
+<h1>Cave Index</h1>
+
+<h3>Notable caves</h3>
+<ul>
+{% for cave in notablecaves %}
+  <li> <a href="{{ cave.url }}">{% if cave.kataster_number %}{{ cave.kataster_number }}{% else %}{{cave.unofficial_number }}{%endif %} {{cave.official_name|safe}}</a> </li>
+{% endfor %}
+</ul>
+
+<h3>1623</h3>
+
+<table class="searchable">
+{% for cave in caves1623 %}
+
+  <tr><td> <a href="{{ cave.url }}">{% if cave.kataster_number %}{{ cave.kataster_number }}{% else %}{{cave.unofficial_number }}{%endif %} {{cave.official_name|safe}}</a> </td></tr>
+
+{% endfor %}
+</table>
+
+<h3>1626</h3>
+
+<ul class="searchable">
+{% for cave in caves1626 %}
+
+  <li> <a href="{{ cave.url }}">{% if cave.kataster_number %}{{ cave.kataster_number }}{% else %}{{cave.unofficial_number }}{%endif %} {{cave.official_name|safe}}</a> </li>
+
+{% endfor %}
+</ul>
+
+<a href="{% url "newcave" %}">New Cave</a>
+
+{% endblock %}
diff --git a/urls.py b/urls.py
index 77b2bd2..f3fd9bd 100644
--- a/urls.py
+++ b/urls.py
@@ -16,11 +16,14 @@ admin.autodiscover()
 # type url probably means it's used.
 
 actualurlpatterns = patterns('',
+	
+	url(r'^millenialcaves/?$',     views_caves.millenialcaves,      name="millenialcaves"), #Radost's dev area
     
+
     url(r'^troggle$',              views_other.frontpage,      name="frontpage"),
     url(r'^todo/$',              views_other.todo,      name="todo"),
     
-    url(r'^caves/?$',     views_caves.caveindex,      name="caveindex"),
+    url(r'^caves/?$',     views_caves.caveindex,      name="caveindex"),	
     url(r'^people/?$',   views_logbooks.personindex, name="personindex"),
 
     url(r'^newqmnumber/?$',              views_other.ajax_QM_number,  ),