Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ansinitro/todo-app

REST API for creating TODO lists in Go
https://github.com/ansinitro/todo-app

clean-architecture gin go golang golang-api golang-jwt golang-migrate golang-rest jwt jwt-authentication rest-api sqlx youtube

Last synced: about 2 hours ago
JSON representation

REST API for creating TODO lists in Go

Awesome Lists containing this project

README

        

# REST API for creating TODO lists in Go #


### This project was created based on the YouTube tutorial ###


#### The following concepts are covered in the course: ####
- Developing Web Applications in Go, following REST API design principles.
- Working with the gin-gonic/gin framework.
- Applying Clean Architecture principles in building application structure. Dependency injection technique.
- Working with Postgres database. Generation of migration files.
- Application configuration using the spf13/viper library. Handling environment variables.
- Database interaction using the sqlx library.
- User registration and authentication. Working with JWT. Middleware.
- Writing SQL queries.
- Graceful Shutdown.


#### Quick Start ####

```bash
git clone "https://github.com/ansinitro/todo-app"
cd todo-app
go mod download
```
create `.env` file based on `.env.example` file or just execute `echo DB_PASSWORD= > .env`
```bash
migrate -path ./schema -database 'postgres://postgres:@0.0.0.0:5432/postgres?sslmode=disable' up
go run cmd/main.go
```