package main import ( "log/slog" "os" "screenshot/ocr" // "github.com/kbinani/screenshot" "github.com/gin-gonic/gin" "github.com/otiai10/gosseract/v2" "gorm.io/driver/sqlite" "gorm.io/gorm" ) type Quest struct { ID uint `gorm:"primaryKey"` Name string Value int MaxValue int } func main() { logger := slog.New(slog.NewJSONHandler(os.Stdout, nil)) db, err := gorm.Open(sqlite.Open("test.db"), &gorm.Config{}) if err != nil { logger.Error("Failed to connect to database:", err) } db.AutoMigrate(&Quest{}) r := gin.New() r.Use(gin.Logger()) r.Use(gin.Recovery()) client := gosseract.NewClient() defer client.Close() r.POST("/", func(c *gin.Context) { ocr.NewGetTextHandler(ocr.GetTextHandlerParams{ Logger: *logger, Client: *client, }).ServeHTTP(c, c.Writer, c.Request) }) r.Run() }