A backend REST api implementation for an e-commerce platform, written in GoLang. It provides essential functionalities for user sign-ups, authentication using JSON Web Tokens (JWT), checkout processes, and retrieving orders. This project is more of a personal experience to understand core concepts of Go, particularly setting up an HTTP application.
This project utilizes several tools to streamline development and testing processes. Here's a brief overview of some of the key tools used:
- air - development live reload
- sqlc - somewhat sql query generator / ORM
- Goose - manage db schemas
- DockerTest
- Go
- Docker
Provide the following variables to your .env
. the example variables are provided in the .env.example
file.
Side note: if you have task
installed on your machine, a taskfile.yml
is provided containing the commands to run and test the project.
go run cmd/main.go
go test -v ./...
docker build -t image-name .
docker run --env-file=.env -p 8080:8080 image-name
-This is currently running on GCP