Skip to content

Latest commit

 

History

History
95 lines (64 loc) · 2.22 KB

README.md

File metadata and controls

95 lines (64 loc) · 2.22 KB

Christmas Wishlist WebApp

An academic project for Distributed Systems (CS-GY-9223) at NYU Tandon with Prof Gustavo Sandoval

Objective: To develop a distributed and reliable backend in support of a simple social media application.

Our application is a wishlist tool where users can login, create posts, follow other users, and view posts of the people they follow. The webserver, written in Go, interacts with the client using gRPCs. CoreOS, an open source Raft implementation, is used in the backend to provide consensus for the raft nodes that are spun up locally.

Please see the Project Prompt for more details.

Instructions To Run App

Install go: Ref

    brew install go

Install goreman: Ref

    go install github.com/mattn/goreman@latest

Setup PATH variables: Ref

    export GOPATH=<dir>

    export PATH=$GOPATH/welcome-app/bin:$PATH

Check that goreman is setup correctly

    which goreman

Start goreman: Ref

    cd <dir>/welcome-app/src/go.etcd.io/etcd/contrib/raftexample

    go build -o raftexample

    goreman start

Add setup data - optional

    cd <dir>/welcome-app

    bash setup.sh

Start the app

    cd <dir>/welcome-app

    go run main.go
    go run server.go

Instructions To Run Tests

Must run setup.sh first before running the following tests.

    cd welcome-app/login
    go test -v

    cd welcome-app/user
    go test -v

    cd welcome-app/feed
    go test -v    

To Access the App

Open the browser and go to

    http://localhost:8080/welcome

Contributors:

Sidharth Sagar Viha Gupta