Skip to content

islamghany/greenlight

Repository files navigation

Microservices project for movies.

This project contains a microservices application written mostly in Go, which will be updated periodically as I learn more about backend engineering, including scalability, security, performance, and best practices in modern system design.

Architecture overview

Greenlight Architecture

Greenlight client application(still not finished)

Tech Stack

GoLang

postgres

Node.js

MongoDB

redis

nginx

rabbitmq

docker

grpc

elastic

Ts

PASETO

protobuf

swagger

Installation

The installation is very simple the only required thing is to have docker and docker-compose installed on your machine.

First clone the project

git clone https://github.com/islamghany/greenlight.git

then go the project folder in inside greenlight project.

cd ./greenlight/project

then run the docker compose up to generate containers.

docker compose up

to stop the containers hit Ctrl+C

to Stop containers and removes containers, networks, volumes, and images created by docker compose up command.

docker compose down

if you made a change in the code and you want to see just rebuild the images with

docker compose up --build

Usage

After installation, you may want to interact with the project. So, you can open the swagger API and play with the project APIs through this URL

http://localhost:3050/v1/swagger/

Swagger

Also if you registered as a user you may want to check the mail through the mail service dashboard, since an activation token is sent to your registered mail.

you can open the email-testing dashboard through the link

http://localhost:8025/

Swagger