/simple-social-network

Sample project used to consolidate my React and Spring Boot skills in a simple, but complete project

Primary LanguageJavaMIT LicenseMIT

Simple Social Network

GitHub Codecov GitHub Workflow Status GitHub Workflow Status

This project was created to consolidate my knowledge of React and Spring Boot, while building a simple - but complete - social network.

Getting Started

The project is divided in two parts: backend and frontend.

Prerequisites

To get things up and running you need to have Docker and docker-compose installed and running on your machine. You will also need Java 11 or greater installed along with Maven build automation tool. I recommend using something like SDKMAN to install theses libs on your system, but it's up to you.

Unfortunately you need to have access to an Amazon S3 Bucket in order to run the application. If you don't have an Amazon Web Services account yet, you can use many things for free during 12 month period after you register.

To set everything up we will use an .env file, which will have all the necessary external configuration for our applications. To get started quickly you can create a copy of the .env.example file and rename it to just .env.

Here is the list the environment variables that you need to setup before you can start the application.

Environment Variable Description
AWS_ACCESS_KEY Your AWS Account Access Key
AWS_SECRET_KEY Your AWS Account Secret Key
AWS_REGION Your AWS S3 Bucket Region
STORAGE_BUCKET_NAME Your AWS S3 Bucket Name

Building backend

To build the backend follow the steps below:

cd backend
mvn package

After that you should have a .jar file in the backend/target/ directory.

Running

If you've followed along, you just need to enter the following in your console:

docker-compose up