Skip to content

Social Network application (spring boot data mvc security restful cors xsrf angular swagger facebook / google signin)

Notifications You must be signed in to change notification settings

asaunin/social-network-spring

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring Boot version of the Social Network Application Build Status

Spring Boot version of the Social Network Application

Stack of technologies

Spring: Boot, MVC, Data, Security

Web: AngularJS, Bootstrap, Bower, Gulp

Tests: JUnit, Mockito, AssertJ

CI: Travis

Third-party libraries: Letter avatar (by Artur Heinze)

Functionality

  • Sign-In / Sign-Up
  • Send messages
  • Add / remove friends
  • Update contact information / Change password
  • View person & friend lists
  • View person's contact information
  • View last messages
  • Profile images / avatars
  • Pagination
  • Search

How to Build & Run application from Intellij IDEA

git clone https://github.com/ASaunin/social-network-spring.git
cd social-network-spring
./mvnw clean install

Start Spring boot application from the main class: org.asaunin.socialnetwork.SocialNetworkApplication

Open http://localhost:8080 in your browser

Credentials

Swagger support

Use Swagger-UI endpoint to get a server-side API description

Social sign-in feature

To enable Google & Facebook sing-in feature, register appropriate application and set it's credentials in application.properties file

The links below to get an application ids and secrets:

Deployment

Clone repository

git clone https://github.com/ASaunin/social-network-spring.git
cd social-network-spring

Configure ${SOCIAL_NETWORK_API_URL} and ${SOCIAL_NETWORK_WEB_URL} system variables according to your deployment urls

Configure URL constant in app.js to be equal to ${SOCIAL_NETWORK_API_URL} value

NB: It is considered to be http://localhost:8080 by default both for api & web components

Build your application:

./mvnw clean install

Deploy jar-file from api\target folder to the backend-server

Deploy war-file from webapp\target folder to the web-server

Open ${SOCIAL_NETWORK_WEB_URL} in your browser and enjoy!

Heroku deployment example

git checkout heroku
./mvnw clean install
heroku plugins:install heroku-cli-deploy
heroku deploy:jar api/target/social-network-api-1.0.0-SNAPSHOT.jar --app social-network-spring
heroku deploy:war webapp/target/social-network-web-1.0.0-SNAPSHOT.war --app social-network-angularjs