[CORD-3038] Add link/linkcheck to new docs, clean them up

Change-Id: I463ea1b851d88761cc9b450166d4d32aa1d6ad95
diff --git a/.gitignore b/.gitignore
index 4b89fda..c19a678 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,8 @@
+# NOTE - do not put any .md files or directories that contain .md files that
+# gitbook needs to access in this file, or they won't be shown - upstream bugs:
+# https://github.com/GitbookIO/gitbook/issues/931
+# https://github.com/GitbookIO/gitbook/issues/1845
+
 npm-debug.log
 _book/
-node_modules/
\ No newline at end of file
+node_modules/
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..c9883af
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,59 @@
+# Makefile for building CORD docs site, guide.opencord.org
+# Building docs requires the following tools:
+#  - Gitbook toolchain: https://toolchain.gitbook.com/setup.html
+#  - NPM (for Gitbook and Swagger)
+#  - Python (for build glossary script)
+#  - linkchecker (for test target) http://wummel.github.io/linkchecker/
+
+default: serve
+
+# use bash for pushd/popd, and to fail if commands within  a pipe fail
+SHELL = bash -o pipefail
+
+GENERATED_DOCS =
+
+serve: setup
+	gitbook serve --port 4040
+
+build: setup
+	gitbook build
+
+setup: cord-tester xos xos-gui xos-tosca swagger $(GENERATED_DOCS)
+	gitbook init
+	gitbook install
+
+test: linkcheck lint
+
+linkcheck: build
+	linkchecker --check-extern -a _book/
+
+lint:
+	@echo "markdownlint(mdl) version: `mdl --version`"
+	@echo "style config:"
+	@echo "---"
+	@cat mdlstyle.rb
+	@echo "---"
+	mdl -s mdlstyle.rb `find -L . ! -path "./partials/*" ! -path "./_book/*" ! -path "./node_modules/*" ! -path "./cord-tester/modules/*" -name "*.md"`
+
+# link directories that contain other documentation
+cord-tester:
+	ln -s ../test/cord-tester/docs cord-tester
+
+xos:
+	ln -s ../orchestration/xos/docs xos
+
+xos-gui:
+	ln -s ../orchestration/xos-gui/docs xos-gui
+
+xos-tosca:
+	ln -s ../orchestration/xos-tosca/docs xos-tosca
+
+swagger: xos
+	pushd ../orchestration/xos/docs/; make swagger_docs; popd;
+
+clean:
+	rm -rf $(GENERATED_DOCS)
+	rm -rf _book
+	rm -rf node_modules
+	rm -rf cord-tester test xos xos-gui xos-tosca
+
diff --git a/README.md b/README.md
index 84209cd..92d7b42 100644
--- a/README.md
+++ b/README.md
@@ -1,16 +1,22 @@
 # OpenCord Introduction
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quod ducimus impedit quidem sapiente necessitatibus quo hic ut! Fugit ut sed sapiente maiores officia natus, deleniti, repellendus et nam quibusdam iusto!
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quod ducimus impedit
+quidem sapiente necessitatibus quo hic ut! Fugit ut sed sapiente maiores
+officia natus, deleniti, repellendus et nam quibusdam iusto!
 
 ## Bill Of Materials
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Neque optio, ea error tenetur mollitia, repellendus consectetur iste hic molestias autem odio minima doloremque at sunt recusandae fugiat quidem quo architecto.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Neque optio, ea error
+tenetur mollitia, repellendus consectetur iste hic molestias autem odio minima
+doloremque at sunt recusandae fugiat quidem quo architecto.
 
 See the full requirements [here](./prereqs/hardware.md)
 
 ## Networking Connectivity
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti adipisci vero labore nostrum nulla dolore aut dolorem quis consequatur fuga ratione laudantium, ipsam, iusto incidunt similique eius illo cumque voluptatibus.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Deleniti adipisci
+vero labore nostrum nulla dolore aut dolorem quis consequatur fuga ratione
+laudantium, ipsam, iusto incidunt similique eius illo cumque voluptatibus.
 
 [networking setup](./prereqs/networking.md)
 
@@ -18,37 +24,53 @@
 
 ### Kubernetes Installation
 
-If you know what we are talking about you can just go and install a Kubernetes cluster (> 1.9) in any way you want, otherwise you can follow one of this guide to install it:
+If you know what we are talking about you can just go and install a Kubernetes
+cluster (> 1.9) in any way you want, otherwise you can follow one of this guide
+to install it:
 
 - [Install minikube on a single node](./prereqs/minikube.md)
 - [Install kubespray on a multiple nodes](./prereqs/kubespray.md)
 
 ### Helm
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Labore magnam asperiores modi, amet suscipit hic itaque iste fugit nam voluptate, architecto fugiat quisquam ratione, consequuntur eum iure voluptas quo molestias.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Labore magnam
+asperiores modi, amet suscipit hic itaque iste fugit nam voluptate, architecto
+fugiat quisquam ratione, consequuntur eum iure voluptas quo molestias.
 
-If you need help installing helm you can follow this guide: [Helm Installation](./prereqs/helm.md)
+If you need help installing helm you can follow this guide: [Helm
+Installation](./prereqs/helm.md)
 
 ## Deploy CORD profiles
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Illo dolorem totam facilis vel suscipit adipisci aspernatur recusandae cumque hic ipsa nemo nulla, dicta illum, earum? Dicta consequuntur eos corporis, placeat.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Illo dolorem totam
+facilis vel suscipit adipisci aspernatur recusandae cumque hic ipsa nemo nulla,
+dicta illum, earum? Dicta consequuntur eos corporis, placeat.
 
 - [RCORD-lite](./profiles/rcord-lite.md)
 - [MCORD](./profiles/mcord.md)
 
 ## Appendix
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptate nihil culpa, ratione doloribus, minima numquam ex commodi fuga sunt vero tempore pariatur officia nobis magni cupiditate. Consequuntur quam modi culpa!
-
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptate nihil
+culpa, ratione doloribus, minima numquam ex commodi fuga sunt vero tempore
+pariatur officia nobis magni cupiditate. Consequuntur quam modi culpa!
 
 ### Offline Installation
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laudantium iure cum totam nihil impedit nemo voluptatum, commodi sequi animi quidem earum sed harum, velit aliquid, iusto tenetur consequuntur, praesentium asperiores.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laudantium iure cum
+totam nihil impedit nemo voluptatum, commodi sequi animi quidem earum sed
+harum, velit aliquid, iusto tenetur consequuntur, praesentium asperiores.
 
-If you need help in setting up and insecure docker registry (good for non production environments) you can follow [this guide](./prereqs/docker-registry.md)
+If you need help in setting up and insecure docker registry (good for non
+production environments) you can follow [this
+guide](./prereqs/docker-registry.md)
 
 ### OpenStack-Helm Setup
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laudantium iure cum totam nihil impedit nemo voluptatum, commodi sequi animi quidem earum sed harum, velit aliquid, iusto tenetur consequuntur, praesentium asperiores.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laudantium iure cum
+totam nihil impedit nemo voluptatum, commodi sequi animi quidem earum sed
+harum, velit aliquid, iusto tenetur consequuntur, praesentium asperiores.
 
-If you need help in setting up and insecure docker registry (good for non production environments) you can follow [this guide](./prereqs/docker-registry.md)
\ No newline at end of file
+If you need help in setting up and insecure docker registry (good for non
+production environments) you can follow [this
+guide](./prereqs/docker-registry.md)
diff --git a/SUMMARY.md b/SUMMARY.md
index 04573c1..8592f15 100644
--- a/SUMMARY.md
+++ b/SUMMARY.md
@@ -1,32 +1,49 @@
 # Summary
 
 * [Installation Guide](README.md)
-	* [Bill Of Materials](./prereqs/hardware.md)
-	* [Networking Connectivity](./prereqs/networking.md)
-	* Software Requirements
-		* Kubernetes
-			* [Single Node KB8s](prereqs/minikube.md)
-			* [Multi Node KB8s](prereqs/kubespray.md)
-		* [Helm](prereqs/helm.md)
-		* [Docker Registry](prereqs/docker-registry.md)
-		* [OpenStack Integration](prereqs/openstack-helm.md)
-	* [Profiles]()
-		* [RCORD Lite](profiles/rcord-lite.md)
-			* [OLT Setup](profiles/olt-setup.md)
-		* [MCORD](profiles/mcord.md)
-			* [EnodeB Setup](profiles/enodeb-setup.md)
-	* [Helm Reference](charts/helm.md)
-		* [XOS-CORE](charts/xos-core.md)
-		* [ONOS](charts/onos.md)
-		* [VOLTHA](charts/voltha.md)
-	* [Fabric setup](prereqs/fabric-setup.md)
-
+    * [Bill Of Materials](prereqs/hardware.md)
+    * [Networking Connectivity](prereqs/networking.md)
+    * Software Requirements
+        * Kubernetes
+            * [Single Node KB8s](prereqs/minikube.md)
+            * [Multi Node KB8s](prereqs/kubespray.md)
+        * [Helm](prereqs/helm.md)
+        * [Docker Registry](prereqs/docker-registry.md)
+        * [OpenStack Integration](prereqs/openstack-helm.md)
+    * [Profiles](profiles.md)
+        * [RCORD Lite](profiles/rcord-lite.md)
+            * [OLT Setup](profiles/olt-setup.md)
+        * [MCORD](profiles/mcord.md)
+            * [EnodeB Setup](profiles/enodeb-setup.md)
+    * [Helm Reference](charts/helm.md)
+        * [XOS-CORE](charts/xos-core.md)
+        * [ONOS](charts/onos.md)
+        * [VOLTHA](charts/voltha.md)
+    * [Fabric setup](prereqs/fabric-setup.md)
 * [Operating CORD](operating_cord/intro.md)
-	* Diagnostic
+    * [Diagnostics](operating_cord/diag.md)
+* [Defining Models in CORD](xos/README.md)
+    * [XOS Support for Models](xos/dev/xproto.md)
+    * [Core Models](xos/core_models.md)
+    * [Security Policies](xos/security_policies.md)
+    * [Writing Synchronizers](xos/dev/synchronizers.md)
+        * [Design Guidelines](xos/dev/sync_arch.md)
+        * [Implementation Details](xos/dev/sync_impl.md)
+* [Developing for CORD](develop.md)
+    * [Getting the Source Code](getting_the_code.md)
+    * [Developer Workflows](workflows.md)
+    * [VTN and Service Composition](xos/xos_vtn.md)
+    * [GUI Development](xos-gui/developer/README.md)
+        * [Quickstart](xos-gui/developer/quickstart.md)
+        * [Service Graph](xos-gui/developer/service_graph.md)
+        * [GUI Extensions](xos-gui/developer/gui_extensions.md)
+        * [GUI Internals](xos-gui/architecture/README.md)
+            * [Module Strucure](xos-gui/architecture/gui-modules.md)
+            * [Data Sources](xos-gui/architecture/data-sources.md)
+        * [Tests](xos-gui/developer/tests.md)
+    * [Unit Tests](xos/dev/unittest.md)
+* [Testing CORD](cord-tester/README.md)
+    * [Test Setup](cord-tester/qa_testsetup.md)
+    * [Test Environment](cord-tester/qa_testenv.md)
+    * [System Tests](cord-tester/validate_pods.md)
 
-* Developer Guide
-	* XOS Modeling
-	* GUI
-	* TOSCA
-	* ...
-	* Testing
diff --git a/book.json b/book.json
index 9737740..bdd49dd 100644
--- a/book.json
+++ b/book.json
@@ -1,5 +1,14 @@
 {
-	"plugins": [
-		"smart-nav-collapse"
-	]
-}
\ No newline at end of file
+  "title": "CORD Guide",
+  "root": ".",
+  "structure": {
+    "summary": "SUMMARY.md"
+  },
+  "variables": {
+    "branch": "master"
+  },
+  "plugins": [
+    "anchorjs",
+    "smart-nav-collapse"
+  ]
+}
diff --git a/charts/helm.md b/charts/helm.md
index 38d047f..104d278 100644
--- a/charts/helm.md
+++ b/charts/helm.md
@@ -10,6 +10,6 @@
 
 ### Add the CORD repository to helm
 
-```
+```shell
 helm repo add ...
-```
\ No newline at end of file
+```
diff --git a/charts/onos.md b/charts/onos.md
index 792d0d0..01989a9 100644
--- a/charts/onos.md
+++ b/charts/onos.md
@@ -1,6 +1,8 @@
 # ONOS Helm chart
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Esse illum explicabo, expedita, repudiandae numquam, ab fuga molestias minus maxime, deleniti perspiciatis id repellendus ipsa nemo velit quaerat omnis sequi saepe.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Esse illum explicabo,
+expedita, repudiandae numquam, ab fuga molestias minus maxime, deleniti
+perspiciatis id repellendus ipsa nemo velit quaerat omnis sequi saepe.
 
 Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
 tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
@@ -15,10 +17,10 @@
 
 ## ONOS-VOLHTA
 
-> NOTE that this require [VOLTHA](voltha.md) to be installed
+> NOTE: This requires [VOLTHA](voltha.md) to be installed
 
 `helm install ...`
 
 ## ONOS-VTN
 
-`helm install ...`
\ No newline at end of file
+`helm install ...`
diff --git a/charts/voltha.md b/charts/voltha.md
index 0926e44..3e4605d 100644
--- a/charts/voltha.md
+++ b/charts/voltha.md
@@ -1,7 +1,7 @@
 # Deploying VOLTHA
 
-```
+```shell
 helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com/
 helm dep build
 helm install -n voltha voltha
-```
\ No newline at end of file
+```
diff --git a/charts/xos-core.md b/charts/xos-core.md
index a7e5259..6911910 100644
--- a/charts/xos-core.md
+++ b/charts/xos-core.md
@@ -1,6 +1,6 @@
 # Deploying XOS-CORE
 
-```
+```shell
 help repo add ...
 helm install -n xos-core xos-core
-```
\ No newline at end of file
+```
diff --git a/develop.md b/develop.md
new file mode 100644
index 0000000..402fa27
--- /dev/null
+++ b/develop.md
@@ -0,0 +1,6 @@
+# Developing for CORD
+
+This guide describes how to develop for CORD. It includes several example
+developer workflows, a tour of an example service, an overview of how
+services are interconnected in the data plane, and in-depth
+descriptions of how to develop/extend the TOSCA and GUI interfaces.
diff --git a/getting_the_code.md b/getting_the_code.md
new file mode 100644
index 0000000..90fb8b1
--- /dev/null
+++ b/getting_the_code.md
@@ -0,0 +1,87 @@
+# Getting the Source Code
+
+## Install repo
+
+[repo](https://code.google.com/archive/p/git-repo/) is a tool from Google that
+works with Gerrit and allows us to manage the multiple git repos that make up
+the CORD code base.
+
+If you don't already have `repo` installed, this may be possible with your
+system package manager, or using the [instructions on the android source
+site](https://source.android.com/source/downloading#installing-repo), or by
+using the following commands which download/verify/install it:
+
+```sh
+curl -o /tmp/repo 'https://gerrit.opencord.org/gitweb?p=repo.git;a=blob_plain;f=repo;hb=refs/heads/stable'
+echo '394d93ac7261d59db58afa49bb5f88386fea8518792491ee3db8baab49c3ecda  /tmp/repo' | sha256sum -c -
+sudo mv /tmp/repo /usr/local/bin/repo
+sudo chmod a+x /usr/local/bin/repo
+```
+
+> NOTE: As mentioned above, you may want to install *repo* using the official
+> repository instead. We forked the original repository and host a copy of the
+> file to make repo downloadable also by organizations that don't have access
+> to Google servers.
+
+## Download CORD repositories
+
+The `cord` repositories are usually checked out to `~/cord` in most of our
+examples and deployments:
+
+{% include "/partials/repo-download.md" %}
+
+> NOTE: `-b` specifies the branch name. Development work goes on in `master,
+> and there are also specific stable branches such as `cord-4.0` that can be
+> used.
+
+When this is complete, a listing (`ls`) inside this directory should yield
+output similar to:
+
+```sh
+$ ls
+build component incubator onos-apps orchestration test
+```
+
+## Download patchsets
+
+Once you've downloaded a CORD source tree, you can download patchsets from
+Gerrit with the following command:
+
+```shell
+repo download orchestration/xos 1234/3
+```
+
+Which downloads a patch for the `xos` git repo, patchset number `1234` and
+version `3`.
+
+## Contributing code to CORD
+
+We use [Gerrit](https://gerrit.opencord.org) to manage the CORD code base. For
+more information see [Working with
+Gerrit](https://wiki.opencord.org/display/CORD/Working+with+Gerrit).
+
+For a general introduction to ways you can participate and contribute to the
+project, see [Contributing to
+CORD](https://wiki.opencord.org/display/CORD/Contributing+to+CORD).
+
+## Downloading testing and QA repositories
+
+Whie not useful for deploying a CORD POD, the repo manifest files and the
+infrastructure code used to configure our test and QA systems, including
+Jenkins jobs created with [Jenkins Job
+Builder](https://docs.openstack.org/infra/jenkins-job-builder/) can be
+downloaded with repo.  The `ci-management` repo uses git submodules, so those
+need to be checked out as well:
+
+```shell
+mkdir cordqa
+cd cordqa
+repo init -u https://gerrit.opencord.org/qa-manifest -b master
+repo sync
+cd ci-management
+git submodule init
+git submodule update
+```
+
+See `ci-management/README.md` for further instructions.
+
diff --git a/mdlstyle.rb b/mdlstyle.rb
new file mode 100644
index 0000000..ab3dc59
--- /dev/null
+++ b/mdlstyle.rb
@@ -0,0 +1,33 @@
+# markdownlint(mdl) style rules
+# Rule descriptions:
+#  https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md
+
+# Copyright 2017-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# use all rules
+all
+
+# Indent lists with 4 spaces
+rule 'MD007', :indent => 4
+
+# Don't enforce line length limitations within code blocks and tables
+rule 'MD013', :code_blocks => false, :tables => false
+
+# Numbered lists should have the correct order
+rule 'MD029', :style => "ordered"
+
+# Allow  ! and ? as trailing punctuation in headers
+rule 'MD026', :punctuation => '.,;:'
+
diff --git a/operating_cord/diag.md b/operating_cord/diag.md
new file mode 100644
index 0000000..947b342
--- /dev/null
+++ b/operating_cord/diag.md
@@ -0,0 +1 @@
+# Diagnostics
diff --git a/partials/repo-download.md b/partials/repo-download.md
new file mode 100644
index 0000000..3b5c124
--- /dev/null
+++ b/partials/repo-download.md
@@ -0,0 +1,4 @@
+<pre><code class="lang-sh">mkdir ~/cord && \
+cd ~/cord && \
+repo init -u https://gerrit.opencord.org/manifest -b {{ book.branch }} && \
+repo sync</code></pre>
diff --git a/prereqs/docker-registry.md b/prereqs/docker-registry.md
index 4da006e..d5e2fc0 100644
--- a/prereqs/docker-registry.md
+++ b/prereqs/docker-registry.md
@@ -1,3 +1,5 @@
 # Docker Registry
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea molestiae quisquam non praesentium fuga at quod pariatur quis, illo. Incidunt doloremque at provident accusamus totam sint quibusdam repudiandae veniam recusandae.
\ No newline at end of file
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea molestiae quisquam
+non praesentium fuga at quod pariatur quis, illo. Incidunt doloremque at
+provident accusamus totam sint quibusdam repudiandae veniam recusandae.
diff --git a/prereqs/hardware.md b/prereqs/hardware.md
index 844ba44..5bb36b1 100644
--- a/prereqs/hardware.md
+++ b/prereqs/hardware.md
@@ -2,7 +2,10 @@
 
 ## BOM
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sed vitae vel reiciendis, adipisci voluptatum perferendis voluptas blanditiis, eos inventore maiores ipsam facere aliquid ex repudiandae itaque praesentium mollitia at, architecto.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sed vitae vel
+reiciendis, adipisci voluptatum perferendis voluptas blanditiis, eos inventore
+maiores ipsam facere aliquid ex repudiandae itaque praesentium mollitia at,
+architecto.
 
 ## RCORD Specifics
 
diff --git a/prereqs/helm.md b/prereqs/helm.md
index 9b2181d..95c0541 100644
--- a/prereqs/helm.md
+++ b/prereqs/helm.md
@@ -1,3 +1,6 @@
 # Helm Installation guide
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nesciunt odit iste molestiae, necessitatibus saepe vel porro accusantium sit. Rem, voluptas accusantium quasi perspiciatis laborum cumque rerum deserunt itaque sapiente! Harum?
\ No newline at end of file
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nesciunt odit iste
+molestiae, necessitatibus saepe vel porro accusantium sit. Rem, voluptas
+accusantium quasi perspiciatis laborum cumque rerum deserunt itaque sapiente!
+Harum?
diff --git a/prereqs/kubespray.md b/prereqs/kubespray.md
index 34841f7..3ad8325 100644
--- a/prereqs/kubespray.md
+++ b/prereqs/kubespray.md
@@ -1,3 +1,6 @@
 # Install Kubespray on a multiple nodes
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Impedit tempora veniam laborum deleniti aperiam similique voluptatum architecto, rerum. Quae neque, quaerat. Voluptate voluptates, sunt obcaecati perferendis minima itaque adipisci quisquam.
\ No newline at end of file
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Impedit tempora
+veniam laborum deleniti aperiam similique voluptatum architecto, rerum. Quae
+neque, quaerat. Voluptate voluptates, sunt obcaecati perferendis minima itaque
+adipisci quisquam.
diff --git a/prereqs/minikube.md b/prereqs/minikube.md
index d38b12b..1dcfd2c 100644
--- a/prereqs/minikube.md
+++ b/prereqs/minikube.md
@@ -1,3 +1,5 @@
 # Install Minikube on a single node
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda unde repudiandae quaerat doloribus dicta facilis, ipsam molestias, fugiat ducimus voluptatum, nostrum impedit iure enim minus vel consectetur labore modi, est.
\ No newline at end of file
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda unde
+repudiandae quaerat doloribus dicta facilis, ipsam molestias, fugiat ducimus
+voluptatum, nostrum impedit iure enim minus vel consectetur labore modi, est.
diff --git a/prereqs/openstack-helm.md b/prereqs/openstack-helm.md
index ef94208..fe504bf 100644
--- a/prereqs/openstack-helm.md
+++ b/prereqs/openstack-helm.md
@@ -1,3 +1,6 @@
 # OpenStack Helm Installation
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quasi corporis officia dolorum fugit eligendi obcaecati earum, quam reprehenderit optio consectetur quaerat voluptates asperiores aut vel laudantium soluta laboriosam iure culpa.
\ No newline at end of file
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quasi corporis
+officia dolorum fugit eligendi obcaecati earum, quam reprehenderit optio
+consectetur quaerat voluptates asperiores aut vel laudantium soluta laboriosam
+iure culpa.
diff --git a/profiles.md b/profiles.md
new file mode 100644
index 0000000..2c4c75c
--- /dev/null
+++ b/profiles.md
@@ -0,0 +1,5 @@
+# Profiles
+
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nobis veritatis
+eligendi vitae dolorem animi non unde odio, hic quasi totam recusandae repellat
+minima provident aliquam eveniet a tempora saepe. Iusto.
diff --git a/profiles/enodeb-setup.md b/profiles/enodeb-setup.md
index 3fe725d..a277eee 100644
--- a/profiles/enodeb-setup.md
+++ b/profiles/enodeb-setup.md
@@ -1 +1 @@
-# How to install a physical eNodeB
\ No newline at end of file
+# How to install a physical eNodeB
diff --git a/profiles/mcord.md b/profiles/mcord.md
index b29a459..ebde964 100644
--- a/profiles/mcord.md
+++ b/profiles/mcord.md
@@ -2,18 +2,23 @@
 
 ## Prerequisites
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nobis veritatis eligendi vitae dolorem animi non unde odio, hic quasi totam recusandae repellat minima provident aliquam eveniet a tempora saepe. Iusto.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nobis veritatis
+eligendi vitae dolorem animi non unde odio, hic quasi totam recusandae repellat
+minima provident aliquam eveniet a tempora saepe. Iusto.
 
-- A Kubernetes cluster (you will need a [multi node cluster](../prereqs/kubespray.md))
+- A Kubernetes cluster (you will need a [multi node
+  cluster](../prereqs/kubespray.md))
 - Helm, follow [this guide](../prereqs/helm.md)
 - Openstack-Helm, follow [this guide](../prereqs/openstack-helm.md)
 
 ## CORD Components
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugit et quam tenetur maiores dolores ipsum hic ex doloremque, consectetur porro sequi vitae tempora in consequuntur provident nostrum nobis. Error, non?
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugit et quam tenetur
+maiores dolores ipsum hic ex doloremque, consectetur porro sequi vitae tempora
+in consequuntur provident nostrum nobis. Error, non?
 
 Then you need to install this charts:
 
 - [xos-core](../charts/xos-core.md)
 - [onos-fabric](../charts/onos.md#onos-fabric)
-- [onos-vtn](../charts/onos.md#onos-vtn)
\ No newline at end of file
+- [onos-vtn](../charts/onos.md#onos-vtn)
diff --git a/profiles/olt-setup.md b/profiles/olt-setup.md
index a49475e..e983bfa 100644
--- a/profiles/olt-setup.md
+++ b/profiles/olt-setup.md
@@ -1 +1 @@
-# How to install the OLT
\ No newline at end of file
+# How to install the OLT
diff --git a/profiles/rcord-lite.md b/profiles/rcord-lite.md
index cde5a64..9560e4a 100644
--- a/profiles/rcord-lite.md
+++ b/profiles/rcord-lite.md
@@ -2,14 +2,20 @@
 
 ## Prerequisites
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nobis veritatis eligendi vitae dolorem animi non unde odio, hic quasi totam recusandae repellat minima provident aliquam eveniet a tempora saepe. Iusto.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nobis veritatis
+eligendi vitae dolorem animi non unde odio, hic quasi totam recusandae repellat
+minima provident aliquam eveniet a tempora saepe. Iusto.
 
-- A Kubernetes cluster (you can follow one of this guide to install a [single node cluster](../prereqs/minikube.md) or a [multi node cluster](../prereqs/kubespray.md))
+- A Kubernetes cluster (you can follow one of this guide to install a [single
+  node cluster](../prereqs/minikube.md) or a [multi node
+  cluster](../prereqs/kubespray.md))
 - Helm, follow [this guide](../prereqs/helm.md)
 
 ## CORD Components
 
-Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugit et quam tenetur maiores dolores ipsum hic ex doloremque, consectetur porro sequi vitae tempora in consequuntur provident nostrum nobis. Error, non?
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Fugit et quam tenetur
+maiores dolores ipsum hic ex doloremque, consectetur porro sequi vitae tempora
+in consequuntur provident nostrum nobis. Error, non?
 
 Then you need to install this charts:
 
@@ -19,7 +25,7 @@
 
 ## Install the RCORD-Lite helm chart
 
-```
+```shell
 helm install -n rcord-lite xos_profiles/rcord-lite
 ```
 
@@ -48,8 +54,10 @@
 simpleexampleservice:
   imagePullPolicy: 'Always'
 ```
+
 and use it during the installation with:
 
-```bash
+```shell
 helm install -n rcord-lite xos_profiles/rcord-lite -f my-rcord-lite-values.yaml
-```
\ No newline at end of file
+```
+
diff --git a/workflows.md b/workflows.md
new file mode 100644
index 0000000..06a2c74
--- /dev/null
+++ b/workflows.md
@@ -0,0 +1,6 @@
+# Developer Workflows
+
+Lorem ipsum dolor sit amet, consectetur adipisicing elit. Neque optio, ea error
+tenetur mollitia, repellendus consectetur iste hic molestias autem odio minima
+doloremque at sunt recusandae fugiat quidem quo architecto.
+