HN-like selfhosted forums

Code git clone ssh://git.poy.ooo:6969/~rii/district ZIP
main.go / 890B #f76c01ce
Raw
package mainimport (	"context"	"log"	"net/http"	"os"	"github.com/jackc/pgx/v5/pgxpool"	"github.com/joho/godotenv"	"github.com/nxrmqlly/district/app"	"github.com/nxrmqlly/district/config"	"github.com/nxrmqlly/district/store")func main() {	godotenv.Load()	config.MustEnv("POSTGRES_CONNSTR")	config.MustLoad()	ctx := context.Background()	store.Migrate(ctx, os.Getenv("POSTGRES_CONNSTR"))	poolCfg, err := pgxpool.ParseConfig(os.Getenv("POSTGRES_CONNSTR"))	if err != nil {		log.Fatal(err)	}	pool, err := pgxpool.NewWithConfig(ctx, poolCfg)	if err != nil {		log.Fatal(err)	}	defer pool.Close()	router, err := app.NewRouter(store.New(pool))	if err != nil {		log.Fatal(err)	}	srv := http.Server{		Addr:    config.Get().Server.Address,		Handler: router,	}	if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {		log.Fatal(err)	}}