Files
TGSS/cmd/server/main.go
T

40 lines
707 B
Go

package main
import (
"tgss/internal/config"
"tgss/internal/handlers"
"tgss/internal/infra"
"tgss/internal/rss"
"tgss/internal/server"
"tgss/internal/telegram"
"tgss/internal/utils"
"go.uber.org/fx"
)
func main() {
app := fx.New(
fx.Provide(
infra.NewLogger,
config.Load,
server.NewGin,
server.NewRateLimiter,
utils.NewImageHMACGenerator,
handlers.NewChannelHandler,
handlers.NewAuthHandler,
handlers.NewImageHandler,
rss.NewRSSGenerator,
rss.NewFeedCache,
),
telegram.Module,
fx.Invoke(server.RegisterRoutes),
fx.Invoke((server.RegisterRateLimiterCleanup)),
fx.Invoke(rss.RegisterFeedCacheCleanup),
fx.Logger(infra.NewFXLogger()),
)
app.Run()
}