using gin framework
go get -d ./...
go run main.go
go test -v
curl -X GET http://localhost:9090/todos
curl -H "Content-Type: application/json" -d '{"id": "john", "title": "changeme", "completed": true}' -X POST http://localhost:9090/todos
curl -X GET http://localhost:9090/todos/3
curl -X PATCH http://localhost:9090/todos/3
curl -X GET http://localhost:9090/books
curl -X GET http://localhost:9090/books/1
curl -d '{"title": "Star Worlds","author": "David Blod"}' -X POST http://localhost:9090/books
curl -d '{"title": "The Infinite Game"}' -X PATCH http://localhost:9090/books/1
curl -X DELETE http://localhost:9090/books/1
curl -d '{"username": "bod"}' -X POST http://localhost:9090/login
curl -H 'Accept: application/json' -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE1MTQ4MDgwMDAsInVzZXIiOiJkZWQifQ.xYsQfBdWNtUlfMSMatGDLstQRgnhz3DU3rwv1sVKXQg" -X GET http://localhost:9090/private/test/1
curl -d '{"name":"bod", "username":"bod", "email": "bod", "password": "xxxx"}' -X POST http://localhost:9090/api/user/register
curl -d '{"email": "bod", "password": "xxxx"}' -X POST http://localhost:9090/api/token
curl -H 'Accept: application/json' -H "Authorization:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE1MTQ4MDgwMDAsInVzZXIiOiJkZWQifQ.xYsQfBdWNtUlfMSMatGDLstQRgnhz3DU3rwv1sVKXQg" -X GET http://localhost:9090/api/secured/ping