From cad9315a2c86caed190f306158e998bb74a0cd72 Mon Sep 17 00:00:00 2001 From: tran Date: Wed, 11 Feb 2026 18:35:13 -0500 Subject: [PATCH 1/6] added .DS_Store --- .DS_Store | Bin 6148 -> 6148 bytes .gitignore | 3 +++ controllers/healthcheck.go | 8 ++++---- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.DS_Store b/.DS_Store index d68b18f1807abf7c97c4b2e3e583c0f567c1d300..ad6ca2645513871b7d2a45c6c8ccfd08af01fa21 100644 GIT binary patch delta 32 ocmZoMXfc@J&&abeU^g=(&tx7J?aj$7222~v7BFsR=lIJH0HE6m(EtDd delta 203 zcmZoMXfc@J&&a{Lm3zZfqGJbDoYsRfhLs#=?ow%jUfl9w;X6nE<*~k2^>Hz>p@0Lj$wPdnVsV= FKL8FuE?58n diff --git a/.gitignore b/.gitignore index 8cdf9f2..b4d9f2f 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,6 @@ service-account-key.json # Editor/IDE # .idea/ # .vscode/ + +.DS_Store + diff --git a/controllers/healthcheck.go b/controllers/healthcheck.go index 33f1f40..9297a24 100644 --- a/controllers/healthcheck.go +++ b/controllers/healthcheck.go @@ -1,13 +1,13 @@ package controllers import ( -"net/http" + "net/http" -"github.com/gin-gonic/gin" + "github.com/gin-gonic/gin" ) // GET /healthcheck // Get healthcheck func HealthCheck(c *gin.Context) { - c.JSON(http.StatusOK, gin.H{"status": "Hustle is healthy!"}) -} \ No newline at end of file + c.JSON(http.StatusOK, gin.H{"status": "Chimes is healthy!"}) +} From 5789506809cdeda2431568101057984b7c1214dc Mon Sep 17 00:00:00 2001 From: tran Date: Fri, 13 Feb 2026 00:00:27 -0500 Subject: [PATCH 2/6] updated name to chimes --- controllers/notifications.go | 4 ++-- controllers/users.go | 6 +++--- go.mod | 2 +- hustle-backend | Bin 55634722 -> 55634722 bytes main.go | 24 ++++++++++++------------ middleware/auth.go | 6 ++++-- services/notificationservice.go | 4 ++-- 7 files changed, 24 insertions(+), 22 deletions(-) diff --git a/controllers/notifications.go b/controllers/notifications.go index 1194f89..bbadf80 100644 --- a/controllers/notifications.go +++ b/controllers/notifications.go @@ -3,8 +3,8 @@ package controllers import ( "net/http" "github.com/gin-gonic/gin" - "github.com/cuappdev/hustle-backend/models" - "github.com/cuappdev/hustle-backend/services" + "github.com/cuappdev/chimes-backend/models" + "github.com/cuappdev/chimes-backend/services" ) // Struct for register token diff --git a/controllers/users.go b/controllers/users.go index 1d5ec9a..c2b7551 100644 --- a/controllers/users.go +++ b/controllers/users.go @@ -5,9 +5,9 @@ import ( "strings" "github.com/gin-gonic/gin" -"github.com/cuappdev/hustle-backend/models" -"github.com/cuappdev/hustle-backend/middleware" - "github.com/cuappdev/hustle-backend/auth" +"github.com/cuappdev/chimes-backend/models" +"github.com/cuappdev/chimes-backend/middleware" + "github.com/cuappdev/chimes-backend/auth" firebaseauth "firebase.google.com/go/v4/auth" ) diff --git a/go.mod b/go.mod index bfe75b7..8603d15 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/cuappdev/hustle-backend +module github.com/cuappdev/chimes-backend go 1.25.1 diff --git a/hustle-backend b/hustle-backend index 985b91c7eeaa07a12a95860353f2c6831decb9ca..52c22a676c7fbf397544096705268f7f7dc5d446 100755 GIT binary patch delta 5657 zcmZ|Td7RDFAII^>cfNy}VQe#Fn4KB>7&G>LU&mV7Eh#BeA!$K~yo;g+r4e!LyQHK= zHKHQ>PASqt3!zd;@jI{Io$q&M&>!=B-1GUIbM86cd*;sP%z{IkV;0z-adH$SSHUWx zqAI2kg(^(NRYKt^sZuJfGAgSGMJh_=6s_{Apcus}PVq`mqLNfmm6WU$RaO;MRW(&t z4b@btYAH>%m97lcQC-zjeKk-+HBw_WQByTjbG1-QwNh)fQCqcBdv#Dpby8<#s*Ad+ zo4Tuqdg=z2X6seW(OenL(|j$^LM_r_Ezwdf({ioQO0Cjry{0vKU2FA* z-qbq1rS*DS@915Oo9zSH+QsZ;tvKk6s_tkXK9UvyUIbY8#eH~p>) z`a^%}FJ08%x}<;f@4Cy&w-p^QC~NS*;W=xzU9On-I(PiI*q|%16AzxeY=5pyK6ui} zwm%RAE(AjnDC*=MJXy@y6rVSI&79y6C(D~_;ouOb`GLHaIlm&uiO9X!I@IY@+mE%F z<3win9v13Y!k{>mfN&@YrJyvFfwB+*kq`ytAR5X;1&D!Ih=X`YfJ8`wickrXAq6T! z6{rf;pgPomnve>$APs6mI%Gf{s0;O=J~V)a&2{*uv&fvu;ST5xeV{M&gFB%=+y!^T0JsMR z!o6@G403XN56g0T_47XSAql~5C39$ZmJ{iP&e=vCuaO=f?8X(&_uG@@)bsK)ZKIRd zAd_g0#09&h%#P0eo#G~OZn0<@Fa|b@$eK( z0KwDn3`~Sc@GLwBlVJ)x4=+GAOoeGM9bSZ&V1|>sVc*M6#$IplXUYY;u_k;`j?=zi zD8@98{*OmL+xAWO`tH5D5o?B2_>X}nmgG2b=2B#^Th@$RoRfb_=G!%-m{HaeW_yoG z_Osq))Bd?2onac=(f+w&suWY(CW@HR_O*Wq@)IS@@>*F}9~;vCK53+zK1*|)SZ_Py zm)nNf5R>eNn#A!rc6hu^`=@SNM6jD+23teTWnGgFjE-KG<0N|%GNP8*SZB)BQ{}yr zoh0&l@6q2bq=-2elLebHTtom=6nJAuNK$umqOEGFT2PU?r@A)$kguf!ARz zya8{*I(Q4#!`tumeJ}{J;C^@j9)!U#1ct&xFbp1s;qVAN3Xj3#Fak!xD0l)!!x$I~Pr^7D4^P1a z5Ihafz(kk?&%$#s8K%JV@B(DRRG0?S;YD}}X28pk12f?jm<6-pRhR>F!N5G24+~%+ zEP}Tc>+}Rr3oZzsMlu*WiJCesNRU9J4jtRrM9=Vy2a?6aBI-FplCS z%uFeNO@ewQ#O#Powgu!KJI=l)BMLuX5|s--z(8MW!0SFhiv2jVo)XSmC?$WKX>@fcQ26`X znQ8NN{UNr|s9>X_Nw*bSbm7pDt3y$Sy6&n%l6uj9mq3w6S(sRGu0RD^!t}R^{B^Tp zLmgVBa9;||D08x4U&kJd46hd#$C}qWF=K77`d+X63#-4nAba7h=H1d2j22!T)t zgW^yE!l5LTg3?e1%0dK0LKKvPXebXAAO>O~4&osJ5+MmHLM2Fs6sQbUpej^@>QDn} zLMqg9b5|y$xjR>TkAy=TZFbD9>!z90BQor7a{rxaZcVdsRuMNMJKVmu)P{7(aC5_V z)^Qj3m)`%6&t|-(9@K{h&=49yV`u_Rp&2xX7SIw}L2GCOZJ`~shYoJ;j=3G(&MUoj z$7XhN{r@^#dqEj%)BZW;{}4%Lvkm!QrKfDe|BO?*baJy(x^#w2=mK4#8+3;rZf;7K Ip6+GyKj2HIUH||9 delta 5572 zcmZ|Td7RDFAII^>ojb#fS?+AtU^dKPY-8V-u`~8kS}f6ODx?)5>Rt9GiYekmcBVz5 zQeB~xb?j2nMkPfXNzr-D_uk*!k>4Nle4P25<$KQgo_ptWX7Qmdl@{BdiE=4KZiOmL zWmHz-icmR4DoW9ckw>wLQ@j$CD6h&ZNflI4m6WU$r7BJ7s;nxistjeSnyRaYvQ$&G zR9kgaSJ|qk`f8wtYNW<$qNZx5=4zpqYNgg{qqfRXJGEB_byO#HRu^?uH|46kdZ?#* zski#5uddOx>Zj{;z5440-Kd*%vj%9O25GQv(GU&Qt-4LO>ki$iyEIIBx?A_?UJcg> zjnsV_rTg`O9@Im6SdVD5#%Qb_)i{mU1U;sSnxx0|grq0+lqPG6rfQm|Yldd(Y31t~ z&C+Z=tLHRFb5)?{^@8SUzFyPxe$pQGKS*^@Wb7hBxVqJI z8k@d33tW-;14c!-Eae~)q97V#zyq-m2l0>qiQt9ukOUQ=B2QDo+peEFU+E54TLN?Tc`p^IxLL+DlO`s_>gXYizT0$#m4Q-$;0e8Y(FwEr}Fe=a0Z?JPD%=olWcY-;zC(o7Wk6gCp41YN%HPjtls&;r$o~xR_ zcDXIL@Ry0lnjlVs;zZSn8(aZ2z7hSaBGCQq$_KkzDX+z z{HMohpJ_HVoN>iC{-@Xx60b7;5Icu3b2cQy9coV7(E{srdga<##s8mP!K9u5xCZt<5eqH&0<;w*D36=h}$nd3XWl!F+fT7QjL<@DeP7#qcsL zfu*nvmct5I39Dc=tbsy!1zv^M;B{CFZ@@Zu6V}59cnjW!cVHvD3-7`E;Db%@0c?gX zuoXUpk6;^o44=Su*a16X7wm>TPy~BnAMA$%a1ai`VK@Sx!cq7PK8G*h7#xQ$;VbwW zzJYJy1e}EL;CuK1PQj0G8h(PG;S8LGU*K2x4St6|;2fNXKj8xW1sCCO_y;b*W!LoF z!Vp_5l2EafV1cTug7y?7#R=5prhdba-xC@3s9^4K0z`ZaWM!-n84@SZL@Blmr55dFm z2#kg?Fcuz#aWEbxz+*5GCc)$I1PGplr(iNnfvGSJro#-F2~R^lJOi^}HarW@!5o+i z1@Jt)0P|ozya)?mAsBcG7Qte88J56OSO&{s1+0Wsuo~7tA-n>w!fWt4tc5pV9lQza zVFSDcZ^JvV5#ELO;C=AHCinn0!xq>IAHqkl4L*iXU_0!9ov;gb!yYJty|54V!vQ!5 zhu|q{X!Ow68&cZM7EBpq( z!yj-C&cmN@0sexE@HhMem*8^9^r;iww%~#gx4kmD-J52Y${@&$0$B!mhm*Gl@}`o! zCe|FYSzGC>irTWKoy`gZd0a{6QqIh%aAllqCEV;x&ai*^i)^pJXeHTYATuSBWnvaZ z+Lj~j-66PT4YR}>>JH>V!5QTl8+UFE!5L*ByD7<4gClMHyFnfucsgY#gUAv8Jf+l*IW5WfuC`-j@d;+V&DH}? zB$rPx&98_!8GT?Ci)?Kz|B9UK?1YU3YMn@i&C5zhhW;l)?iSd?lH4$mhnD1hl}kN~ zOf%XHvH4wK&Q41*zQE2q5i-i!#eD;LYoa{^&MEa8?tm%(IU8Ox)3&Kz+{@)cI~O)`XPeWb8`ux( zkX_mKwQZUg=1$0uwq;8_s1FU?zUW;I-HQYFR?c@!KHV*ip$RmFX3!j3Kuc%^t)UIH zg&b%H?V$s7gig>Iy10Ei7j|{$uJ+G5vwJspU4Oac_ysN;6KrjIajnpo-t1$}zK9{>OV diff --git a/main.go b/main.go index 2ab6a89..5df1a5b 100644 --- a/main.go +++ b/main.go @@ -4,12 +4,13 @@ import ( "context" "log" "os" + + "github.com/cuappdev/chimes-backend/auth" + "github.com/cuappdev/chimes-backend/controllers" + "github.com/cuappdev/chimes-backend/middleware" + "github.com/cuappdev/chimes-backend/models" "github.com/gin-gonic/gin" "github.com/joho/godotenv" - "github.com/cuappdev/hustle-backend/models" - "github.com/cuappdev/hustle-backend/controllers" - "github.com/cuappdev/hustle-backend/auth" - "github.com/cuappdev/hustle-backend/middleware" ) func main() { @@ -18,8 +19,8 @@ func main() { log.Println("Error loading .env file.") } - log.Println("Starting hustle-backend...") - r := gin.Default() + log.Println("Starting chimes-backend...") + r := gin.Default() log.Println("Connecting to database...") // Connect to DB if err := models.ConnectDatabase(); err != nil { @@ -44,12 +45,11 @@ func main() { if err := auth.InitFirebase(serviceAccountPath); err != nil { log.Printf("[FATAL] Firebase Messaging init failed: %v", err) } - log.Println("Setting up routes...") // Public routes r.GET("/healthcheck", controllers.HealthCheck) - + // Auth routes (public) api := r.Group("/api") { @@ -66,12 +66,12 @@ func main() { authd.POST("/users", controllers.CreateUser) // Notification routes authd.POST("/fcm/register", controllers.RegisterFCMToken) - authd.DELETE("/fcm/delete", controllers.DeleteFCMToken) - authd.POST("/fcm/test", controllers.SendTestNotification) + authd.DELETE("/fcm/delete", controllers.DeleteFCMToken) + authd.POST("/fcm/test", controllers.SendTestNotification) } log.Println("Server starting on :8080") - r.Run() + r.Run() } func getwdSafe() string { @@ -80,4 +80,4 @@ func getwdSafe() string { return "unknown" } return wd -} \ No newline at end of file +} diff --git a/middleware/auth.go b/middleware/auth.go index 8b346ee..b979b79 100644 --- a/middleware/auth.go +++ b/middleware/auth.go @@ -6,8 +6,8 @@ import ( "strings" firebaseauth "firebase.google.com/go/v4/auth" + "github.com/cuappdev/chimes-backend/auth" "github.com/gin-gonic/gin" - "github.com/cuappdev/hustle-backend/auth" ) type ctxKey string @@ -76,6 +76,8 @@ func RequireFirebaseUser(ac *firebaseauth.Client) gin.HandlerFunc { // Helper to read the uid in handlers: func UIDFrom(c *gin.Context) string { v := c.Request.Context().Value(UIDKey) - if s, ok := v.(string); ok { return s } + if s, ok := v.(string); ok { + return s + } return "" } diff --git a/services/notificationservice.go b/services/notificationservice.go index 7454037..a4a49b5 100644 --- a/services/notificationservice.go +++ b/services/notificationservice.go @@ -3,8 +3,8 @@ package services import ( "context" "firebase.google.com/go/v4/messaging" - "github.com/cuappdev/hustle-backend/auth" - "github.com/cuappdev/hustle-backend/models" + "github.com/cuappdev/chimes-backend/auth" + "github.com/cuappdev/chimes-backend/models" ) type NotificationPayload struct { From cc4f1be95bfe0573d672b9dde719d2dabc74a494 Mon Sep 17 00:00:00 2001 From: tran Date: Fri, 13 Feb 2026 00:36:22 -0500 Subject: [PATCH 3/6] updated name to chimes in docker and deploy config --- .DS_Store | Bin 6148 -> 0 bytes .github/workflows/deploy-dev.yml | 4 +-- .github/workflows/deploy-prod.yml | 4 +-- Dockerfile | 6 ++--- auth/jwt.go | 7 +++--- docker-compose.yml | 39 +++++++++++++++++++++--------- 6 files changed, 38 insertions(+), 22 deletions(-) delete mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index ad6ca2645513871b7d2a45c6c8ccfd08af01fa21..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~&rZTX5XQgN1`rG(p1hd!1t9Sa3c`UzJ;)2l9|dBe1|-H?@4kbt;PZLXZ+17P zEpRo&%#hu$-OkK*eoeb90Mpq_E`bJs3Y%z9Ww*oRy0k4j@*}5IBRTqUG9Jari06_} zO$jK0!zLi_Zh#>+c)=|H{vJ(v?c>{;Euw}o5-jPtqQ?9^@MxWn!Y6%OnW!^N=sm`h z^={f63p{gd&5;(~ut1#8VJ-?es_15NJYp_$7h>KEF(phH(_;1nlY;Np9^W-NEb_jV zLbjedX7pNK~sX5hN2`B+2@Jm3x4*S1JuZC>Xaii<3gz} z)c7ri@jD0O!g)RN{;5+J4r6C#9zV13I~3zL9wxNzFp*R3m4Fh+6F7FK4O#zt`}hC( zAU#t8O5k4+FhO_F?XV=jwr&+CYi-DO&n6~*sZ$%m&M(LIK$hZjHfy{V$^kX Date: Wed, 18 Feb 2026 17:44:12 -0500 Subject: [PATCH 4/6] switch old names to chimes --- .dockerignore | 2 +- .gitignore | 4 ++-- README.md | 2 +- models/setup.go | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.dockerignore b/.dockerignore index ddcbd2b..162a3cf 100644 --- a/.dockerignore +++ b/.dockerignore @@ -9,4 +9,4 @@ Dockerfile docker-compose.yml *.md .DS_Store -hustle-backend \ No newline at end of file +chimes-backend \ No newline at end of file diff --git a/.gitignore b/.gitignore index b4d9f2f..75794df 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,7 @@ *.dll *.so *.dylib -hustle-backend +chimes-backend # Test binary, built with `go test -c` *.test @@ -31,7 +31,7 @@ service-account-key.json # Editor/IDE # .idea/ -# .vscode/ +.vscode/ .DS_Store diff --git a/README.md b/README.md index 2b91776..a967b20 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -# center-backend \ No newline at end of file +# hustle-backend diff --git a/models/setup.go b/models/setup.go index 539b9dc..dfeb28e 100644 --- a/models/setup.go +++ b/models/setup.go @@ -15,7 +15,7 @@ func ConnectDatabase() error { // Build connection string from env variables host := getEnv("DB_HOST", "localhost") user := getEnv("DB_USER", "postgres") - dbname := getEnv("DB_NAME", "hustle") + dbname := getEnv("DB_NAME", "chimes") port := getEnv("DB_PORT", "5432") password := getEnv("DB_PASSWORD", "") sslmode := getEnv("DB_SSLMODE", "require") From 708b7107cb3787a9eed9553fc5822d31cf368827 Mon Sep 17 00:00:00 2001 From: skyeslattery Date: Wed, 18 Feb 2026 17:54:26 -0500 Subject: [PATCH 5/6] remove trusted proxies for now --- main.go | 1 + 1 file changed, 1 insertion(+) diff --git a/main.go b/main.go index 5df1a5b..0155d4b 100644 --- a/main.go +++ b/main.go @@ -21,6 +21,7 @@ func main() { log.Println("Starting chimes-backend...") r := gin.Default() + r.SetTrustedProxies(nil) // Trust no proxies for now, will configure later log.Println("Connecting to database...") // Connect to DB if err := models.ConnectDatabase(); err != nil { From a95bedd389962157d2d792562f4cbfc3cbe68ebe Mon Sep 17 00:00:00 2001 From: Skye Slattery <144565459+skyeslattery@users.noreply.github.com> Date: Tue, 24 Feb 2026 20:16:51 -0500 Subject: [PATCH 6/6] Rename project from hustle-backend to chimes-backend --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a967b20..49761c1 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -# hustle-backend +# chimes-backend