Acebook is a full-stack web application built with the MERN stack that aims to replicate some of the core features and functionality of the popular social media platform, Facebook.
This project provides users with a platform where they can connect with friends, share posts, photos and react to other users' content, just like on Facebook. The application has been developed using modern web development technologies and best practices, making it a robust and scalable solution for anyone interested in building a similar social networking application.
Acebook was built by a team of six developers who utilize Agile methodologies and a Git workflow to collaborate efficiently and deliver high-quality code on time.
- User Authentication: Acebook can allow users to register, login and logout securely. This feature enables users to create their own profiles and secure their data.
- User Profile: Users can create and manage their profiles with photos, and personal information.
- Posts: Users can create and share text and photos with other users. They can like, comment and share other users' posts and build a network of friends.
This project was built with the following tools:
This section shows you how to set up this project locally. First, get a local copy up and running follow these simple steps.
You have to make sure that mongodb
, npm
and node
have been installed in your local machine before running the project. If not, follow the steps below.
-
npm
npm install npm@latest -g npm -v
-
nvm & node
# visit https://github.com/nvm-sh/nvm on how to install nvm nvm install node node -v
-
mongodb
brew tap mongodb/brew brew install mongodb-community@5.0 brew services start mongodb-community@5.0
-
Clone the repo
git clone https://github.com/terryhycheng/acebook.git cd acebook
-
Install NPM packages
cd frontend npm install cd ../api npm install
You have to run the server before running the frontend. The server will be served at port 8080
by default. A JWT_SECRET
is required to start the server.
cd api
JWT_SECRET=SUPER_SECRET npm start
In a new terminal session...
cd frontend
npm run start
You should now be able to open your browser and go to http://localhost:3000/signup
to create a new user.
Then, after signing up, you should be able to log in by going to http://localhost:3000/login
.
After logging in, you won't see much but you can create posts using PostMan and they should then show up in the browser if you refresh the page.
We are team Gelato Geniuses
, a team of six amazing, passionate and lovely junior software developers who love sharing where we can good ice-cream.
Abigail Makovsky |
Amber |
Chris Leech |
Joel Powell |
Terry Cheng |
Uzair Patel |