diff --git a/header/vectors.h b/header/vectors.h
index 0fa1a4746cef58b4b594451c8b84fd704b270099..b94c94495cc03f0f6fb297d0600eef77ee4d344f 100644
--- a/header/vectors.h
+++ b/header/vectors.h
@@ -25,5 +25,6 @@ void vector_push(vector vec, type element);
 type vector_pop(vector vec);
 void vector_set(vector vec, int index, type element);
 type vector_get(vector vec, int index);
+type vector_remove(vector vec, int index);
 
 #endif
\ No newline at end of file
diff --git a/src/test_vectors.c b/src/test_vectors.c
index 960ea8945096ad69c8ae22f0a28ef8686f3e9a58..371d5ee5579f913914c616058a3128473f154aeb 100644
--- a/src/test_vectors.c
+++ b/src/test_vectors.c
@@ -12,23 +12,34 @@
 
 int main()
 {	
+	//Test Vector create
 	vector test = vector_create();
-
 	printf("Created Vector lenght : %d \n", vector_length(test));
 
+	//Test Vector push
 	vector_push(test, 15);
-
 	printf("Modified Vector lenght : %d \n", vector_length(test));
 
+	//Test Vector pop
 	type val = vector_pop(test);
-
 	printf("Modified Vector lenght : %d and the value we popped : %d \n", vector_length(test), val);
 
+	//Test Vector set and get
 	vector_push(test, 42);
 	vector_set(test, 0, 69);
 	val = vector_get(test, 0);
 
 	printf("Modified Vector lenght : %d and the value we setted : %d \n", vector_length(test), val);
+	val = vector_pop(test);
+
+	//Test Vector remove
+	for (int i = 0; i < 6; i++)
+	{
+		vector_push(test, i);
+	}
+	printf("Value at index 3 : %d \n", vector_get(test, 3));
+	vector_remove(test, 3);
+	printf("New Value at index 3 : %d \n", vector_get(test, 3));
 
 
 
diff --git a/src/vectors.c b/src/vectors.c
index 0a43638716878492ad2ed29832f5001624c6d170..5e564ddaad78d33dfc476966fd4853d5653f74ae 100644
--- a/src/vectors.c
+++ b/src/vectors.c
@@ -77,4 +77,20 @@ type vector_get(vector vec, int index)
 	assert(index < vec->length);
 
 	return vec->content[index];
+}
+
+type vector_remove(vector vec, int index)
+{
+	assert(index < vec->length);
+
+	type tmp = vec->content[index];
+
+	vec->length--;
+
+	for (int i = index; i < vec->length; i++) // Ex : 0 1 2 {3} 4 5  // Index 3 , lenght 6
+	{
+		vec->content[i] = vec->content[i+1]; 
+	}
+
+	return tmp;
 }
\ No newline at end of file