Gatorbook is a Facebook-like social network web application built using MEAN stack (MongoDB, Express, Angular 4, Node.js), with nearly ALL features you have on a facebook!
For users, user guide can be found here (You can see what our interface looks like there :) )
For developers, RESTful API can be found here
To get started and mount Gatorbook on your own computer, please read the following
Table of Contents
The following instructions are the most common ways to get the development environment up and running, if you run into issues, check out the feedback section and let us know what issues you met.
You need Node 6.11.2 in your system. Verify if you already have it with node -v
. If not or different version, you can use Node Version Manager (nvm) to install it.
curl https://raw.githubusercontent.com/creationix/nvm/v0.24.1/install.sh | bash
source ~/.nvm/nvm.sh
nvm install 0.12
nvm use 0.12
# Nodemon
npm install -g nodemon
# Express
npm install -g express
# Mocha
npm install -g mocha
# Mongoose
npm install -g mongoose
# Supertest
npm install -g supertest
# Cors
npm install -g cors
# jwt
npm install -g jwt
# bcrypt-nodejs
npm install -g bcrypt-nodejs
brew install mongodb 3.4.9
sudo apt-get -y install mongodb=3.4.9
To install our source code
git clone https://github.com/yummycoding/weLoveFaceBook
cd weLoveFaceBook
npm install
After setting up the environment needed and installing our source code, now you can mount Gatorbook server and use the app on your own end!
To mount Gatorbook server:
In your terminal, key in mongod
. This will open your database.
Then open a new terminal and change your working directory to folder "frontend", and key in ng build -w
. This will build dist for your front end.
At last open another terminal and change your working directory to folder "backend", key in nodemon server.js
, which use the dist built in step 2, and mount the server on https://localhost:3000.
Enjoy using Gatorbook:
For testing, we did unit testing for both front and back end when developing, also e2e testing were done to make sure project works as a whole.
If you have any doubts, questions or ideas for improvement, feel free to give us your feedback here !
Name | GitHub ID | Contact Information |
---|---|---|
You Zhou | ZhouYou528 | |
Junhao Zhang | zjunhao | |
Zhuoru Li | wobusimanong | |
Zhenqian Guo | GrandStar & smallGrandstar |