Node.js, Express.js and React.js app that allows you to send out emails to collect feedback
- Node.js with Express layer
- React.js & React Redux
- Redux Form
- MongoDB with MongoDB Atlas
- authentication with Google Auth 2.0
- Materialize CSS
This is a toy app that allows you to make fake payments with Stripe and send out simple email surveys with SendGrid.
Differences/enhancements over the course:
- uses Passport-Next fork and Passport-Next Google OAuth 2.0 Strategy instead of the stale upstream repositories (and deprecated G+ auth)
- additional error handling with try/catch for Redux actions
- conditional rendering on the homepage depending on authentication
- protected routes if user is not authenticated
- credits validation (checks if user has credits in their account before showing a new survey form)
- 404 page and client-side "catch-all" routing
- ability to delete surveys
- Metro UI color scheme
- uses Ramda.js instead of Lodash.js
How to Use
Navigate to https://feed-backy.herokuapp.com/ and log in with your Google Account.
You can add credits via Stripe with fake credentials. Click on the blue "ADD CREDITS" button and fill in the pop-up window.
Insert a dummy email. The card number is:
4242 4242 4242 4242
Month/Year and CVS: add dummy numbers. Then "pay" $5.
On the main page of the app, click on "Collect now" and create a fake survey.
The survey will be send via SendGrid and users can click on "yes" or "no". You can see these in your dashboard.
Code is copyright © 2019 Stephen Grider & Sophia Brandt.