package app import ( "fmt" "log" "os" "backend/router" "git.trcreatives.com/triegebauer/go-dart" "github.com/joho/godotenv" ) type App struct { d *dart.Dart } func New() *App { if err := godotenv.Load(); err != nil { log.Fatal(err) } d := dart.New() d.WithMySQLDatabase(dart.MySQLConfig{ Host: os.Getenv("DB_HOST"), Port: os.Getenv("DB_PORT"), Username: os.Getenv("DB_USERNAME"), Password: os.Getenv("DB_PASSWORD"), Database: os.Getenv("DB_DATABASE"), }) router.SetupRoutes(d) return &App{ d, } } func (a *App) Start() { listenAddr := fmt.Sprintf("%s:%s", os.Getenv("APP_HOST"), os.Getenv("APP_PORT")) log.Fatal(a.d.Start(listenAddr)) }