diff --git a/app/styles/docs/components.sass b/app/styles/docs/components.sass
new file mode 100644
index 000000000..177b11a39
--- /dev/null
+++ b/app/styles/docs/components.sass
@@ -0,0 +1,2 @@
+#docs-components-view
+  color: saddlebrown
\ No newline at end of file
diff --git a/app/templates/docs/components.jade b/app/templates/docs/components.jade
new file mode 100644
index 000000000..20c3afb27
--- /dev/null
+++ b/app/templates/docs/components.jade
@@ -0,0 +1,6 @@
+extends /templates/base
+
+block content
+  ul
+    for component in components
+      li= component.get('name')
\ No newline at end of file
diff --git a/app/views/docs/components_view.coffee b/app/views/docs/components_view.coffee
new file mode 100644
index 000000000..f80decee3
--- /dev/null
+++ b/app/views/docs/components_view.coffee
@@ -0,0 +1,26 @@
+RootView = require 'views/kinds/RootView'
+template = require 'templates/docs/components'
+CocoCollection = require 'collections/CocoCollection'
+LevelComponent = require 'models/LevelComponent'
+
+class ComponentDocsCollection extends CocoCollection
+  url: '/db/level.component?project=name,description,dependencies,propertyDocumentation'
+  model: LevelComponent
+
+module.exports = class UnnamedView extends RootView
+  id: 'docs-components-view'
+  template: template
+
+  constructor: (options) ->
+    super(options)
+    @componentDocs = new ComponentDocsCollection()
+    @supermodel.loadCollection @componentDocs, 'components'
+    
+  onLoaded: ->
+    console.log 'we have the components...', (c.get('name') for c in @componentDocs.models)
+    super()
+
+  getRenderData: ->
+    c = super()
+    c.components = @componentDocs.models
+    c