diff --git a/include/hpp/manipulation/graph/edge.hh b/include/hpp/manipulation/graph/edge.hh
index 982f201a443687b51ab1bfcde7b9be65f24a988a..2e64c2067187fdfdb2c55881c852939557d02d09 100644
--- a/include/hpp/manipulation/graph/edge.hh
+++ b/include/hpp/manipulation/graph/edge.hh
@@ -52,6 +52,9 @@ namespace hpp {
           C c_;
       };
 
+      /// \addtogroup constraint_graph
+      /// \{
+
       /// Abstract class representing representing the link between two nodes.
       class HPP_MANIPULATION_DLLAPI Edge : public GraphComponent
       {
@@ -262,6 +265,8 @@ namespace hpp {
           /// This histogram will be used to find a good level set.
           LeafHistogramPtr_t hist_;
       }; // class LevelSetEdge
+
+      /// \}
     } // namespace graph
   } // namespace manipulation
 } // namespace hpp
diff --git a/include/hpp/manipulation/graph/graph-component.hh b/include/hpp/manipulation/graph/graph-component.hh
index f06ed8dc36b8b080399f78a43c6164ee523c035f..86b48bce9fde855411948a5a809da0765ad385af 100644
--- a/include/hpp/manipulation/graph/graph-component.hh
+++ b/include/hpp/manipulation/graph/graph-component.hh
@@ -32,6 +32,11 @@ namespace hpp {
     namespace graph {
       HPP_MAKE_EXCEPTION ( HPP_MANIPULATION_DLLAPI, Bad_function_call );
 
+      /// \defgroup constraint_graph Constraint Graph
+
+      /// \addtogroup constraint_graph
+      /// \{
+
       /// Define common methods of the graph components.
       class HPP_MANIPULATION_DLLAPI GraphComponent
       {
@@ -122,6 +127,8 @@ namespace hpp {
       };
 
       std::ostream& operator<< (std::ostream& os, const GraphComponent& graphComp);
+
+      /// \}
     } // namespace graph
   } // namespace manipulation
 
diff --git a/include/hpp/manipulation/graph/graph.hh b/include/hpp/manipulation/graph/graph.hh
index bcbb3b565b7ff0f06e864a739cc172c91d5b75a2..22920f897c162d1d5d667a6246a0a47a9bb5a0c7 100644
--- a/include/hpp/manipulation/graph/graph.hh
+++ b/include/hpp/manipulation/graph/graph.hh
@@ -25,6 +25,9 @@
 namespace hpp {
   namespace manipulation {
     namespace graph {
+      /// \addtogroup constraint_graph
+      /// \{
+
       /// Description of the constraint graph.
       ///
       /// This class contains a graph representing a robot with several
@@ -125,6 +128,8 @@ namespace hpp {
           value_type errorThreshold_;
           size_type maxIterations_;
       }; // Class Graph
+
+      /// \}
     } // namespace graph
   } // namespace manipulation
 
diff --git a/include/hpp/manipulation/graph/node.hh b/include/hpp/manipulation/graph/node.hh
index ecefcfb55496e364be256aab4407839ad5aa4aa5..e7644c3ddba7b49415a518f29094176bfb2316f2 100644
--- a/include/hpp/manipulation/graph/node.hh
+++ b/include/hpp/manipulation/graph/node.hh
@@ -33,6 +33,9 @@
 namespace hpp {
   namespace manipulation {
     namespace graph {
+      /// \addtogroup constraint_graph
+      /// \{
+
       /// State of an end-effector.
       ///
       /// Nodes of the graph of constraints. There is one
@@ -153,6 +156,8 @@ namespace hpp {
           /// Weak pointer to itself.
           NodeWkPtr_t wkPtr_;
       }; // class Node
+
+      /// \}
     } // namespace graph
   } // namespace manipulation
 } // namespace hpp