handler.go (594B)
1 package handlers 2 3 import ( 4 "time" 5 6 "git.prime8.dev/moncheeta/prime8dev/internal/external" 7 "git.prime8.dev/moncheeta/prime8dev/internal/web" 8 "github.com/patrickmn/go-cache" 9 ) 10 11 type Handler struct { 12 renderer *web.Renderer 13 gitService *external.Git 14 wakaTimeService *external.WakaTime 15 } 16 17 func NewHandler() (*Handler, error) { 18 renderer, err := web.New() 19 if err != nil { 20 return nil, err 21 } 22 23 c := cache.New(5*time.Minute, 10*time.Minute) 24 25 return &Handler{ 26 renderer: renderer, 27 gitService: external.NewGit(), 28 wakaTimeService: external.NewWakaTime(c), 29 }, nil 30 }