Nats
GRPC
Docker
GraphQL&Gqlgen
Postgresql
Redis
Gin
DDD
Repository based(CQRS)
Saga
12 Factor
Post
Upload 4 pictures for every post
Like
Notification for like
Advanced security
Session management
Follow
Timeline
Reshare post with your followers
Avatar for user
Database rollback on error
Server side cookies
Add more e2e tests
TDD
Notification for follow
Notification for posts
Kubernetes for deployment
Using node.js for hellgate service
Graphdb for follower suggestion
Block feature
git clone https://github.com/mreza0100/free-society
cd ./free-society
Unix like OS
Golang +1.16
Docker
Docker-compose
bash ./scripts/develop/fire-requirements.sh
scripts provided for running each service is in /scripts/develop/services directory. Each service has it's own process and terminal and it's restarting the process on file saving. For running Hellgate service you should start all other services and then starting Hellgate service. My recommendation is tmux. Now if Hellgate is up without any error you can go to localhost:10000.