A full stack web application using popular JavaScript projects featuring:
- User Authentication (OAuth - Google)
- Payment Processing (Stripe)
- Emailing (SendGrid)
- Survey Creation
- Express
- MongoDB
- Passport
- React
- Redux
Download or clone this repo:
Install server side npm packages
$ cd server
$ npm install
Install client side npm packages
$ cd server/client
$ npm install
Local environment:
$ cd server/client/config
$ touch dev.js
$ npm install
Update dev.js with the following values
module.exports = {
googleClientID: '<insert client id from google oauth setup>',
googleClientSecret: '<insert client secret from google oauth setup>',
mongoURI: 'mongodb://<insert URI>',
cookieKey: '<insert random string to represent cookie key>',
stripePublishableKey: '<',
stripeSecretKey: '...',
sendGridKey: '...',
redirectDomain: '...' //
};
Don't forget to setup your production environment with the corresponding environment variables listed in the prod.js file
$ npm run dev