Skip to content
/ Secrets Public

Secure front/back end web application that allows users to share their secrets anonymously with others.

Notifications You must be signed in to change notification settings

szomer/Secrets

Repository files navigation

Secrets App

Secure frontend / backend application that allows users to share their secrets anonymously with others. Secrets can be created, read, updated, and deleted.

  • To view the website live click HERE (Render hosting service - app goes to sleep while inactive).

1. Technologies used

  1. NodeJS runtime environment
    • EJS view engine
    • Express Session middleware
    • Connect-ensure-login middleware
  2. Style & Layout
    • SCSS styling syntax
    • Bootstrap CSS framework
    • Fontawesome Icons
  3. MongoDB database
    • Mongoose library
    • Mongoose findOrCreate plugin
    • Passport-local-mongoose for generating salt/hash fields in db
  4. Passport authentication middleware
    • Passport-local strategy
    • Google OAuth 2.0 strategy

2. Database

Using MongoDB with 2 collections:

users {_id, username, salt, hash, secrets}
secrets [ {_id, secret} ]

How a stored User looks like:

{
   _id: ObjectId('64021ee2f65e6556557ad5u5'),
   username: "Emma",
   salt: "1d9cdec6fe3016817341533a30ef33509d27be87623cecb8s...",
   hash: "051ee50e1e8de673a6d9a082e9e462855af8b199dcajd9edu...",
   secrets: [
      {
         _id: ObjectId('64021ee9f65e6556557ad5ue'),
         secret: "When my roommates aren't home, I don't w...",
      },
       {
         _id: ObjectId('64021ef9f65e6556557ads0b'),
         secret: "Everyday my brother knocks on my door and...",
      }
   ]
}

3. Screenshots

/login /register Sign Up or Sign In with an account or google auth. alt login and signup page

/secrets The home page with anonymously shared secrets. alt secrets page

/submit The submit page where users can share their own secrets. alt submit a secret page

/mysecrets The secrets page where users can modify their published secrets . alt edit my secrets page

/error Error page for unkown endpoints. alt error page


About

Secure front/back end web application that allows users to share their secrets anonymously with others.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published