diff --git a/index.js b/index.js
index <HASH>..<HASH> 100644
--- a/index.js
+++ b/index.js
@@ -114,6 +114,7 @@ function first ( ) {
 			if ( results [index] ) {
 				promise.fulfill(results [index]);
 			}
+			index ++;
 		}
 		return promise.fulfill(results.pop());
 	});
diff --git a/package.json b/package.json
index <HASH>..<HASH> 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
 {
 	"name": "promix",
 	"description": "Mix promises with callbacks for improved control flow",
-	"version": "0.1.10",
+	"version": "0.1.11",
 	"main": "./index",
 	"author": {
 		"name": "Pachet",
diff --git a/test/test-core.js b/test/test-core.js
index <HASH>..<HASH> 100644
--- a/test/test-core.js
+++ b/test/test-core.js
@@ -207,6 +207,7 @@ function concat ( test ) {
 module.exports = {
 	join : join,
 	fork : fork,
+	first : first,
 	wrap : wrap,
 	errorless : errorless,
 	invoke : invoke,
Fixing bug with the way that results were being checked within the promix.first() method.