HazemNoor / movies-library

A movies library, written with golang, gorm and gin

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Movies Library

A movies library that gives the users ability to add movies to the library and save their watched movies.

Written using Domain Driven Design and clean architecture principles.

Written with golang, gorm and gin

Get Started

cp .env.example .env

docker-compose build

docker-compose up

go run .

API

Collection, Documentation

Architecture

.
├── app
│   ├── controllers
│   │   ├── auth.go
│   │   ├── helpers.go
│   │   ├── movie.go
│   │   ├── user.go
│   │   └── watched_list.go
│   ├── forms
│   │   ├── auth.go
│   │   ├── movie.go
│   │   ├── user.go
│   │   └── watched_list.go
│   ├── middleware
│   │   └── auth.go
│   └── router.go
├── database
│   └── migrations
│       └── schema.sql
├── docker
│   └── mysql
│       ├── conf.d
│       │   └── my.cnf
│       └── log
│           └── mysqld_general.log
├── docker-compose.yml
├── domain
│   ├── entities
│   │   ├── movie.go
│   │   ├── user.go
│   │   ├── user_token.go
│   │   └── watched_list.go
│   ├── repositories
│   │   ├── movie.go
│   │   ├── user.go
│   │   ├── user_token.go
│   │   └── watched_list.go
│   └── services
│       ├── auth.go
│       ├── encryptor.go
│       ├── movie.go
│       ├── user.go
│       └── watched_list.go
├── go.mod
├── go.sum
├── infrastructure
│   ├── init.go
│   ├── repositories
│   │   ├── movie.go
│   │   ├── user.go
│   │   ├── user_token.go
│   │   └── watched_list.go
│   └── services
│       └── encryptor.go
├── main.go
└── README.md

17 directories, 39 files

Database Diagram

Database Diagram

About

A movies library, written with golang, gorm and gin


Languages

Language:Go 99.4%Language:Shell 0.6%