intagaming / go-blog-backend

(Deprecated) A blog backend in Go.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

go-blog-backend

go-blog-backend is a blog API written in Go.

This repo is intended to be a learning project. My blog runs on MDX files, so I don't need a backend.

Here's what I've done to the project so far:

  1. I designed my API with OpenAPI.
  2. I use PlanetScale as the MySQL Database as a Service.
  3. I use no framework, no ORM.
  4. I use Auth0 to authorize the API's users:
  • I utilize Auth0's Actions to customize the Access Token: In the Login flow, I added the email and name fields to register the user as an author of the API.
  • There are 2 roles: author and admin. author can only edit their posts. admin can edit all things.
  1. I use Zap as the structured logger.
  2. I use chi as the router.
  3. I implemented a rate-limiting system with Redis, introduced by this blog post.
  4. I use Heroku to deploy, with Heroku Redis.

About

(Deprecated) A blog backend in Go.


Languages

Language:Go 99.8%Language:Shell 0.1%Language:Procfile 0.0%