aboutsummaryrefslogtreecommitdiff
path: root/cmd/web/main.go
blob: 3f16deca83de00bcf9c6b8f5bdcfcd6281157aca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package main

import (
	"log"
	"net/http"
	"os"

	"github.com/go-chi/chi"

	"git.ofmax.li/iserv/internal/db/redis"
	"git.ofmax.li/iserv/internal/image"
)

func main() {
	connPool := redis.CreatePool("localhost:6379")
	db := redis.NewRedisImageRepo(connPool)

	storagePath, err := os.Getwd()
	if err != nil {
		log.Fatal("couldn't find directory to write images to")
	}

	imageService := image.NewService(db, storagePath)
	imageHandler := image.NewHandler(imageService)

	r := chi.NewRouter()

	r.Get("/i", imageHandler.GetImage)
	r.Post("/i", imageHandler.PostImage)
	log.Print("starting imageserv")
	log.Fatal(http.ListenAndServe(":8080", r))
}