/Secrets_Web_App

A "Secret" App based project, created in the process of learning authentication and security. Each user can share their secret and see all other user's secrets anonymously! This Web App is rendered with EJS, running on a Node.js server and connected to MongoDB via Mongoose.

Primary LanguageJavaScript

GET-ALL

Requirements:

  • Node.js & Express
  • MongoDB
  • Download the code or clone it to your local repository.
  • npm install all dependencies from package.json.
  • (optionary) Add your own APP_ID and APP_SECRET to access Oauth for Google and Facebook Login
  • Run app.js on a local node server (default PORT number: 3000).

Changing PORT number:

On the bottom of app.js there's a constant called PORT.
Inside the declaration of that constant there's the default port number - 3000.
To change the port number, simply remove the default port number and insert your preferred one instead.

- const PORT = process.env.PORT || 3000;
+ const PORT = process.env.PORT || YourPortNumber;

Go back to previous commits to check for various authentication methods:

  • Database Encryption - Commit ID: 07f500c133fd17a729f849b1f3c04ede00cf44f7
  • Hashing - Commit ID: 3d144d2b73f63c606ddb3890044a66d3f203d23d
  • Salting (using bcrypt) - Commit ID: 12406c849934ab512a2285bb18ce4c495c977273
  • Cookies and sessions - Commit ID: e1d5e97befc4eb3c155f74e79af94be39b9952d6
  • Oauth 2.0 - Commit ID: 5e6c5cad2bf05132215bd6e4724d8c1713f76b4f (Or Above)

Screenshots :

Login Screen:

Login-Screen

All Secrets (visible only after being logged in):

All-Secrets

Add new secret:

New-Secret

All Secrets Screen - on mobile:

Mobile