aboutsummaryrefslogtreecommitdiff
path: root/src/server/router.go
diff options
context:
space:
mode:
authorAlexander Kavon <hawk@alexkavon.com>2023-11-14 13:16:06 -0500
committerAlexander Kavon <hawk@alexkavon.com>2023-11-14 13:16:06 -0500
commit2bb987d570b92a3d86f154fe53f36f953a69cc91 (patch)
tree446283163b9c9ba9fe14ba8303008f74b3304389 /src/server/router.go
parent60f4a3e21f186d7bbc6e1f3239dc2dc06fa1ffac (diff)
router types; pass config, routes, db to server type, serve func
Diffstat (limited to 'src/server/router.go')
-rw-r--r--src/server/router.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/server/router.go b/src/server/router.go
new file mode 100644
index 0000000..248a1d3
--- /dev/null
+++ b/src/server/router.go
@@ -0,0 +1,27 @@
+package server
+
+import (
+ "net/http"
+
+ "github.com/go-chi/chi/v5"
+ "github.com/go-chi/chi/v5/middleware"
+ "gitlab.com/alexkavon/newsstand/src/conf"
+)
+
+type HandlerFunc func(s *Server) http.HandlerFunc
+
+type Route struct {
+ Name string
+ Method string
+ Pattern string
+ AuthRequired bool
+ HandlerFunc HandlerFunc
+}
+
+type Routes []Route
+
+func NewRouter(config *conf.Conf) *chi.Mux {
+ r := chi.NewRouter()
+ r.Use(middleware.Logger)
+ return r
+}