Desenvolver uma API eficiente para o cadastro de produtos e gerenciamento de carrinho de compras, incorporando funcionalidades de login e autenticação, é o objetivo central deste projeto. Para alcançar esse propósito, será elaborada uma API em Go, seguindo as boas práticas de desenvolvimento e utilizando variáveis de ambiente. As informações serão armazenadas de forma segura em um banco de dados SQLite.
A estrutura do projeto é parcialmente baseada nas diretrizes do Golang Standards, incorporando entidades, interfaces e variáveis de ambiente sem depender de um ORM.
Além disso, o projeto incluirá tratamento de dados, uma camada de segurança adicional com a transformação da senha utilizando o algoritmo Argon, e uma robusta suite de testes para assegurar a qualidade do código desenvolvido.
- Goland
- Go Gin
- viper
- Swagger
- Sqlite
cd cmd/server
go build -tags=jsoniter .
./server
DB_DRIVER=sqlite
DB_NAME="./sqlite.db"
JWT_SECRET=secretAAAASSSSSSS
JWT_EXPIRESIN=3600
WEB_SERVER_PORT=8001
GIN_MODE=release