diff --git a/README.md b/README.md
index 429725a..ed1b140 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# Logrus <img src="http://i.imgur.com/hTeVwmJ.png" width="40" height="40" alt=":walrus:" class="emoji" title=":walrus:"/>&nbsp;[![Build Status](https://travis-ci.org/sirupsen/logrus.svg?branch=master)](https://travis-ci.org/sirupsen/logrus)&nbsp;[![GoDoc](https://godoc.org/github.com/sirupsen/logrus?status.svg)](https://godoc.org/github.com/sirupsen/logrus)
+# Logrus <img src="http://i.imgur.com/hTeVwmJ.png" width="40" height="40" alt=":walrus:" class="emoji" title=":walrus:"/>&nbsp;[![Build Status](https://travis-ci.org/Sirupsen/logrus.svg?branch=master)](https://travis-ci.org/Sirupsen/logrus)&nbsp;[![GoDoc](https://godoc.org/github.com/Sirupsen/logrus?status.svg)](https://godoc.org/github.com/Sirupsen/logrus)
 
 Logrus is a structured logger for Go (golang), completely API compatible with
 the standard library logger. [Godoc][godoc]. **Please note the Logrus API is not
@@ -54,7 +54,7 @@
 package main
 
 import (
-  log "github.com/sirupsen/logrus"
+  log "github.com/Sirupsen/logrus"
 )
 
 func main() {
@@ -65,7 +65,7 @@
 ```
 
 Note that it's completely api-compatible with the stdlib logger, so you can
-replace your `log` imports everywhere with `log "github.com/sirupsen/logrus"`
+replace your `log` imports everywhere with `log "github.com/Sirupsen/logrus"`
 and you'll now have the flexibility of Logrus. You can customize it all you
 want:
 
@@ -74,7 +74,7 @@
 
 import (
   "os"
-  log "github.com/sirupsen/logrus"
+  log "github.com/Sirupsen/logrus"
 )
 
 func init() {
@@ -123,7 +123,7 @@
 package main
 
 import (
-  "github.com/sirupsen/logrus"
+  "github.com/Sirupsen/logrus"
 )
 
 // Create a new instance of the logger. You can have any number of instances.
@@ -176,9 +176,9 @@
 
 ```go
 import (
-  log "github.com/sirupsen/logrus"
+  log "github.com/Sirupsen/logrus"
   "gopkg.in/gemnasium/logrus-airbrake-hook.v2" // the package is named "aibrake"
-  logrus_syslog "github.com/sirupsen/logrus/hooks/syslog"
+  logrus_syslog "github.com/Sirupsen/logrus/hooks/syslog"
   "log/syslog"
 )
 
@@ -203,7 +203,7 @@
 | [Airbrake](https://github.com/gemnasium/logrus-airbrake-hook) | Send errors to the Airbrake API V3. Uses the official [`gobrake`](https://github.com/airbrake/gobrake) behind the scenes. |
 | [Airbrake "legacy"](https://github.com/gemnasium/logrus-airbrake-legacy-hook) | Send errors to an exception tracking service compatible with the Airbrake API V2. Uses [`airbrake-go`](https://github.com/tobi/airbrake-go) behind the scenes. |
 | [Papertrail](https://github.com/polds/logrus-papertrail-hook) | Send errors to the [Papertrail](https://papertrailapp.com) hosted logging service via UDP. |
-| [Syslog](https://github.com/sirupsen/logrus/blob/master/hooks/syslog/syslog.go) | Send errors to remote syslog server. Uses standard library `log/syslog` behind the scenes. |
+| [Syslog](https://github.com/Sirupsen/logrus/blob/master/hooks/syslog/syslog.go) | Send errors to remote syslog server. Uses standard library `log/syslog` behind the scenes. |
 | [Bugsnag](https://github.com/Shopify/logrus-bugsnag/blob/master/bugsnag.go) | Send errors to the Bugsnag exception tracking service. |
 | [Sentry](https://github.com/evalphobia/logrus_sentry) | Send errors to the Sentry error logging and aggregation service. |
 | [Hiprus](https://github.com/nubo/hiprus) | Send errors to a channel in hipchat. |
@@ -283,7 +283,7 @@
 
 ```go
 import (
-  log "github.com/sirupsen/logrus"
+  log "github.com/Sirupsen/logrus"
 )
 
 init() {
diff --git a/alt_exit_test.go b/alt_exit_test.go
index d182963..022b778 100644
--- a/alt_exit_test.go
+++ b/alt_exit_test.go
@@ -44,7 +44,7 @@
 package main
 
 import (
-	"github.com/sirupsen/logrus"
+	"github.com/Sirupsen/logrus"
 	"flag"
 	"fmt"
 	"io/ioutil"
diff --git a/doc.go b/doc.go
index da67aba..dddd5f8 100644
--- a/doc.go
+++ b/doc.go
@@ -7,7 +7,7 @@
   package main
 
   import (
-    log "github.com/sirupsen/logrus"
+    log "github.com/Sirupsen/logrus"
   )
 
   func main() {
@@ -21,6 +21,6 @@
 Output:
   time="2015-09-07T08:48:33Z" level=info msg="A walrus appears" animal=walrus number=1 size=10
 
-For a full guide visit https://github.com/sirupsen/logrus
+For a full guide visit https://github.com/Sirupsen/logrus
 */
 package logrus
diff --git a/examples/basic/basic.go b/examples/basic/basic.go
index b22468d..a1623ec 100644
--- a/examples/basic/basic.go
+++ b/examples/basic/basic.go
@@ -1,7 +1,7 @@
 package main
 
 import (
-	"github.com/sirupsen/logrus"
+	"github.com/Sirupsen/logrus"
 )
 
 var log = logrus.New()
diff --git a/examples/hook/hook.go b/examples/hook/hook.go
index 707a5bb..3187f6d 100644
--- a/examples/hook/hook.go
+++ b/examples/hook/hook.go
@@ -1,14 +1,8 @@
-// +build ignore
-// Do NOT include the above line in your code. This is a build constraint used
-// to prevent import loops in the code whilst go get'ting it.
-// Read more about build constraints in golang here:
-// https://golang.org/pkg/go/build/#hdr-Build_Constraints
-
 package main
 
 import (
-	"github.com/sirupsen/logrus"
-	airbrake "gopkg.in/gemnasium/logrus-airbrake-hook.v2"
+	"github.com/Sirupsen/logrus"
+	"gopkg.in/gemnasium/logrus-airbrake-hook.v2"
 )
 
 var log = logrus.New()
diff --git a/hooks/syslog/README.md b/hooks/syslog/README.md
index 92b391c..066704b 100644
--- a/hooks/syslog/README.md
+++ b/hooks/syslog/README.md
@@ -5,8 +5,8 @@
 ```go
 import (
   "log/syslog"
-  "github.com/sirupsen/logrus"
-  logrus_syslog "github.com/sirupsen/logrus/hooks/syslog"
+  "github.com/Sirupsen/logrus"
+  logrus_syslog "github.com/Sirupsen/logrus/hooks/syslog"
 )
 
 func main() {
@@ -24,8 +24,8 @@
 ```go
 import (
   "log/syslog"
-  "github.com/sirupsen/logrus"
-  logrus_syslog "github.com/sirupsen/logrus/hooks/syslog"
+  "github.com/Sirupsen/logrus"
+  logrus_syslog "github.com/Sirupsen/logrus/hooks/syslog"
 )
 
 func main() {
@@ -36,4 +36,4 @@
     log.Hooks.Add(hook)
   }
 }
-```
+```
\ No newline at end of file
diff --git a/hooks/syslog/syslog.go b/hooks/syslog/syslog.go
index fef9804..a36e200 100644
--- a/hooks/syslog/syslog.go
+++ b/hooks/syslog/syslog.go
@@ -4,10 +4,9 @@
 
 import (
 	"fmt"
+	"github.com/Sirupsen/logrus"
 	"log/syslog"
 	"os"
-
-	"github.com/sirupsen/logrus"
 )
 
 // SyslogHook to send logs via syslog.
diff --git a/hooks/syslog/syslog_test.go b/hooks/syslog/syslog_test.go
index 89bd1ec..42762dc 100644
--- a/hooks/syslog/syslog_test.go
+++ b/hooks/syslog/syslog_test.go
@@ -1,10 +1,9 @@
 package logrus_syslog
 
 import (
+	"github.com/Sirupsen/logrus"
 	"log/syslog"
 	"testing"
-
-	"github.com/sirupsen/logrus"
 )
 
 func TestLocalhostAddAndPrint(t *testing.T) {
diff --git a/hooks/test/test.go b/hooks/test/test.go
index 48c06ab..0688125 100644
--- a/hooks/test/test.go
+++ b/hooks/test/test.go
@@ -3,7 +3,7 @@
 import (
 	"io/ioutil"
 
-	"github.com/sirupsen/logrus"
+	"github.com/Sirupsen/logrus"
 )
 
 // test.Hook is a hook designed for dealing with logs in test scenarios.
diff --git a/hooks/test/test_test.go b/hooks/test/test_test.go
index 3f55cfe..d69455b 100644
--- a/hooks/test/test_test.go
+++ b/hooks/test/test_test.go
@@ -3,7 +3,7 @@
 import (
 	"testing"
 
-	"github.com/sirupsen/logrus"
+	"github.com/Sirupsen/logrus"
 	"github.com/stretchr/testify/assert"
 )
 
diff --git a/json_formatter.go b/json_formatter.go
index 47325a7..f3729bf 100644
--- a/json_formatter.go
+++ b/json_formatter.go
@@ -44,7 +44,7 @@
 		switch v := v.(type) {
 		case error:
 			// Otherwise errors are ignored by `encoding/json`
-			// https://github.com/sirupsen/logrus/issues/137
+			// https://github.com/Sirupsen/logrus/issues/137
 			data[k] = v.Error()
 		default:
 			data[k] = v
