diff --git a/godotenv.go b/godotenv.go
index 91151fe..73f82ab 100644
--- a/godotenv.go
+++ b/godotenv.go
@@ -1,3 +1,18 @@
+/*
+A go port of the ruby dotenv library (https://github.com/bkeepers/dotenv)
+
+Examples/readme can be found on the github page at https://github.com/joho/godotenv
+
+The TL;DR is that you make a .env file that looks something like
+
+		SOME_ENV_VAR=somevalue
+
+and then in your go code you can call
+
+		godotenv.Load()
+
+and all the env vars declared in .env will be avaiable through os.Getenv("SOME_ENV_VAR")
+*/
 package godotenv
 
 import (
@@ -8,6 +23,17 @@ import (
 	"strings"
 )
 
+/*
+	Call this function as close as possible to the start of your program (ideally in main)
+
+	If you call Load without any args it will default to loading .env in the current path
+
+	You can otherwise tell it which files to load (there can be more than one) like
+
+		godotenv.Load("fileone", "filetwo")
+
+	It's important to note that it WILL NOT OVERRIDE an env variable that already exists - consider the .env file to set dev vars or sensible defaults
+*/
 func Load(filenames ...string) (err error) {
 	if len(filenames) == 0 {
 		filenames = []string{".env"}