Skip to content

YoussefMansour9/secrets

Repository files navigation

📝 Description Secrets is a secure and anonymous secret sharing web application that allows users to share their thoughts without revealing their identity. Built with Node.js, Express, and MongoDB, Whisper provides a safe space for people to express themselves freely. ✨ Features

🔐 Secure user authentication 🔑 Multiple authentication methods:

Email/password registration Google OAuth 2.0 integration

📱 Responsive design for all devices 📝 Submit and view secrets anonymously 🛡️ Session-based security 👤 User accounts for managing your shared secrets

🛠️ Technologies Used

Backend: Node.js, Express.js Database: MongoDB with Mongoose Authentication: Passport.js, Google OAuth 2.0 View Engine: EJS Styling: CSS (likely Bootstrap, based on standard implementations) Session Management: express-session

🚀 Installation

Clone the repository: bashgit clone https://github.com/Youssef19110/secrets.git cd secrets

Install dependencies: bashnpm install

Create a .env file in the root directory with the following variables: CLIENT_ID=your_google_oauth_client_id CLIENT_SECRET=your_google_oauth_client_secret

Make sure MongoDB is installed and running on your system. Start the application: bashnode app.js

Open your browser and navigate to http://localhost:3000

📋 Usage

Register a new account or login with Google Navigate to the "Submit" page to share your secret View all anonymous secrets on the "Secrets" page Logout when finished

🔒 Security Notes

The application uses Passport.js for secure authentication Passwords are salted and hashed using industry standards Sessions are secured with custom secret keys Google OAuth provides an additional layer of security

🤝 Contributing Contributions are welcome! Please feel free to submit a Pull Request.

Fork the repository Create your feature branch (git checkout -b feature/amazing-feature) Commit your changes (git commit -m 'Add some amazing feature') Push to the branch (git push origin feature/amazing-feature) Open a Pull Request

📄 License This project is licensed under the MIT License - see the LICENSE file for details. 🙏 Acknowledgements

Express.js MongoDB Passport.js EJS Google OAuth 2.0

Made with ❤️ by Youssef

About

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors