Skip to content

Live updating Tree application. Developed as part of Passport.inc Programming challenge.

Notifications You must be signed in to change notification settings

scaffeinate/passport-developer-challenge

Repository files navigation

passport-developer-challenge

Passport.inc Developer challenge - Live updating Tree application - Full Stack Deployed Version at: https://passport-factory.herokuapp.com/

Documentation: Passport.inc-Developer-Challenge.pdf

Development Stack:

  • Spring 4 & Spring Boot
  • Mongo DB
  • Redis
  • Node.js + Express Frontend
  • Socket.io to Handle Real-time updates
  • Twitter Bootstrap 3
  • NPM and Maven for Dependency Management
  • Grunt.js for Tasks
  • Heroku & AWS for Deployment

Setting up:

Clone it: git clone https://sudharti@bitbucket.org/sudharti/passport-developer-challenge.git

###Dependencies

  • redis-server
  • mongodb
  • nodejs
  • java
  • maven
  • npm

Make sure to run the redis-server and mongodb before running the client/server.

Before running the Client:

npm install -g grunt

Start Redis at 6379 and MongoDB database in default port.

###To run the Client:

cd factory-tree-client
npm install
grunt
node server.js

###To run the Server:

cd factory-tree-api
mvn clean install
java -jar target/factory-tree.jar

Configuring for Production

For Production there are a few variables to set in the configuration:

Client:

Under factory-tree-client/config/production.json set the following under <>

{
  "redisHost": "<host>",
  "redisPort": 6379,
  "redisPassword": "<password>",
  "serverHost": "<serverHost>"
}

Visit http://localhost:3000

Run the app for production using

NODE_ENV=production node server.js

Server API:

Under factory-tree-api/src/main/resources/application-prod.properties set the missing variables under []

spring.data.mongodb.host=[hostIp]
spring.data.mongodb.database=[dbName]
spring.data.mongodb.username=[username]
spring.data.mongodb.password=[password]

cors.allowed-origins=[client_base]

jedis.host=[redisHost]
jedis.port=6379
jedis.password=[redisPassword]

Build using mvn clean install

To run use java -jar target/factory-tree.jar --spring.profiles.active=prod

Procfile:

Also check the Procfile under factory-tree-api and factory-tree-client to check for Production commands.

About

Live updating Tree application. Developed as part of Passport.inc Programming challenge.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published