Access live app here Save the places you love most. Discover places your friends love.
Place is a new point of interest discovery platform. Enables users to share location and coordinate meetups.
The web platform relies on a main API server, and 4 microservices for full end-to-end functionality.
Places has two client facing aspects: Mobile and Web.
Web application empowers the social components of Places.
It enables users:
- To discover new places by following other users.
- To discover new places through personalized recommendations.
- To view their places on a map view.
- To locate their friends for meetup coordination.
Mobile enables users to pin places of interest along with a note and optional video.
React Native mobile application enables users:
- To pin places of interest with a note and optional video.
There are 4 microservices which empower Places:
- Background Tracking Service
- Persists each users current and previous location allowing users to see where their friends are and to identify their current mode of transport.
- Video Storage Service
- Enables video storage on S3.
- Recommendation Engine
- Provides custom recommendations to users.
- Data Generation Service
- Generates random users and places. Allows automated movement of users.
- React, Redux, React Google Maps, Webpack
- Webpack HMRE, Babel, Eslint, Airbnb Style Guide
- MaterializeCSS, Font Awesome
- Node, Express, PostgreSQL, PassportJS, Multer
- React Native
Access each microservice repo separately below:
In order to run the application locally in its full scope, you must have all other microservices and the API server installed and running.
All services must have their environmental variables correctly configured in their env/
directory. (refer to each service's respective repo under Microservices section).
For this web application setup the env vars in two files:
-
Create a
clientDev.js
file based on the.clientEnv.sample
file: used to access environmental variables from within the client JSX components and JS files. -
Create a
development.js
file based on the.env.sample
file: used to access environmental variables from the client server.
Once all services are running, follow the commands below to run this primary web application.
From within the root directory:
npm install
npm start
View the project roadmap here
- Product Owner: Adam Lessen
- Scrum Master: Sepehr Vakili
- Development Team Members: Andrew Phavichitr, Jordan Tepper, Sepehr Vakili, Adam Lessen
See CONTRIBUTING.md for contribution guidelines.