package pages import ( "github.com/gofiber/fiber/v2" "codeberg.org/gothub/gothub/utils" ) type Items struct { Fullname string Description string HtmlUrl string Stars int64 Forks int64 Watchers int64 Language string License string } func HandleExplore(c *fiber.Ctx) error { // get trending repos trendingRepos := utils.GetRequest("https://api.github.com/search/repositories?q=code&sort=stars&order=desc&per_page=25") bruh2 := trendingRepos.Get("items").Array() // gjson.Result when I ask for an array. idiots, anyway so I have to do jank shit like this and I hate it. at least it works and is fast enough var trendingReposArray []Items for _, item := range bruh2 { trendingReposArray = append(trendingReposArray, Items{ Fullname: item.Get("full_name").String(), Description: item.Get("description").String(), HtmlUrl: item.Get("html_url").String(), Stars: item.Get("stargazers_count").Int(), Forks: item.Get("forks_count").Int(), Watchers: item.Get("watchers_count").Int(), Language: item.Get("language").String(), License: item.Get("license").Get("name").String(), }) } return c.Render("explore", fiber.Map{ "title": "Explore", "repos": trendingReposArray, }) }