title: Gorilla Mux 404
body: <p>I'm taking this holiday break to freshen up on Go. Unfortunately the code I have below is throwing a 404 on both of the routes. This is the latest iteration. I originally had the router in a handleRouter function and thought taking it out would fix the 404ing. Spoiler alert: it didn't. How can I fix this? Thanks!</p>
  
  <pre><code>package main
  
  import (
      "encoding/json"
      "fmt"
      "log"
      "net/http"
  
      "github.com/gorilla/mux"
  )
  
  type Article struct {
      Title   string `json:"Title"`
      Desc    string `json:"desc"`
      Content string `json:"content"`
  }
  
  type Articles []Article
  
  func main() {
      fmt.Println("Router v2 - Muxx")
  
      myRouter := mux.NewRouter()
      myRouter.HandleFunc("/all", returnAllArticles).Methods("GET")
      myRouter.HandleFunc("/", homePage).Methods("GET")
      log.Fatal(http.ListenAndServe(":8000", nil))
  }
  
  func homePage(w http.ResponseWriter, r *http.Request) {
      fmt.Fprintln(w, "Hello:")
      fmt.Println("Endpoint Hit: homepage")
  }
  
  func returnAllArticles(w http.ResponseWriter, r *http.Request) {
      articles := Articles{
          Article{Title: "Hello", Desc: "Article Description", Content: "Article Content"},
          Article{Title: "Hello 2", Desc: "Article Description", Content: "Article Content"},
      }
  
      fmt.Println("Endpoint Hit: returnAllArticles")
      json.NewEncoder(w).Encode(articles)
  
  }
  </code></pre>