A boilerplate example of using passport.js for authenticating a MERN application
example MERN stack application that uses authentication
View the live version of this app here: https://mern-passport.herokuapp.com/
|-- server/
| |-- server.js // The entry point for running the backend server locally, and main server for production
| |-- passport/ // Configuration files used to connect to different machines or set settings
| |-- index.js // Overloads the passport object and defines serialize and deserialize
| |-- localStrategy.js // Defines a local strategy
| |-- googleStrategy.js // Defines google OAuth stratgey
| ....
| |-- db/
| |-- index.js // Configures the connection to the database
| |-- models/ // represents data from our database, and defines schemas for each collection
| |-- user.js // Schema for the User collection
| -- src/ // Entry for the React client side application
GOOGLE_CLIENT_ID
& GOOGLE_CLIENT_SECRET
as environmental variablesnpm run dev
), OAuth google callback is not being proxied to the google servers. Therefore in order to test the google OAuth on your local machine do the following:npm run build
npm run prod