in this blog api backend we want to work with restful api mysql database and using mysql driver in golang
and using fiber golang framework and useing middlewares and routers ...
packages : fiber v2 : github.com/gofiber/fiber/v2
mysql tables:
-
post table
- title (string)
- description (string)
- author (string)
- likes ([]int)
- comments ([]string)
- createdAt (datetime)
- updatedAt (datetime)
-
user table
- fullname
- username
- password
- (private) admin , guest ,writer user permission
- rule writer => write , read , update , delete blog
- rule admin => write , read , update , delete blog, delete comments, delete users
- rule guest => read blog , read comments
features: insert post insert category insert comment insert like (add like/dislike) admin features: insert , update , delete , view users insert , update , delete , view posts
tools : Mysql database Fiber/v2 framework godotenv for load .env files middlewares (auth middleware) use queryparser, bodyparser JWT for authentication