Skip to content

A leaderboard API to store scores and efficiently query for rankings. Built with Go (+gorilla/mux) & Redis

Notifications You must be signed in to change notification settings

dbedi3311/leaderboard-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

leaderboard-api

A leaderboard API to store scores and efficiently query for rankings. Built with Go (+gorilla/mux) & Redis

Key Takeaways:

  • API Development (model, controller, routing)
  • Documentation (OpenAPI standard, Swagger, code annotations)
  • Redis (Docker containerization, go-redis client)
  • JSON (marshalling)
  • Testing (Fuzzy Testing, A/B Testing)

For personal reference:

Make sure you have swaggo installed on your machine:

$ go install github.com/swaggo/swag/cmd/swag@latest

To generate swagger documentation automatically

$ swag init

swagger.json and swagger.yaml should now reside under the docs folder.

TODOs:

  • testing framework for the API
  • add endpoint for rangequery
  • incorporate pagination, filtering properties
  • make server run on goroutine, add timeout functionality
  • stress test, optimize running times

About

A leaderboard API to store scores and efficiently query for rankings. Built with Go (+gorilla/mux) & Redis

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages