A Secret Message is a web application designed to send and receive secret messages securely and efficiently. Built using modern web technologies, the application supports user authentication, message encryption, and user-friendly features.
- User Authentication: Secure sign-up, sign-in, and session management.
- Send Secret Messages: Send encrypted messages to users.
- Email Verification: Verify user identity through email.
- Message History: View received and sent messages.
- Mobile-Responsive Design: Optimized for both desktop and mobile users.
Follow these instructions to set up the project locally.
Ensure you have the following installed on your system:
- Node.js (v16+ recommended)
- npm or yarn (for dependency management)
- A MongoDB database (local or cloud-based)
-
Clone the repository:
git clone https://github.com/your-username/your-repo.git cd your-repo
-
Install dependencies:
npm install # or yarn install
-
Set up environment variables:
- Copy
.env.sample
to.env
:cp src/app/.env.sample src/app/.env
- Update the
.env
file with your configurations (e.g., database connection URL, email provider credentials).
- Copy
Start the development server:
npm run dev
# or
yarn dev
Open http://localhost:3000 in your browser to see the app in action.
To build the application for production:
npm run build
Serve the production build:
npm start
- Sign Up: Create a new account using your email.
- Send a Message: Navigate to the "Send Message" page, input the recipient and message, and send.
- View Messages: Go to your dashboard to view received and sent messages.
- Next.js: Framework for server-side rendering and static site generation.
- Tailwind CSS: Utility-first CSS framework for responsive design.
- Node.js: JavaScript runtime for server-side logic.
- MongoDB: NoSQL database for storing user and message data.
- TypeScript: Strongly-typed JavaScript for code reliability.
- NextAuth.js: Authentication for Next.js applications.
- Resend: Email service integration for verification emails.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add your message here"
- Push the branch:
git push origin feature-name
- Open a pull request.
This project is licensed under the MIT License. See the LICENSE
file for details.
- Special thanks to the creators of Next.js and Tailwind CSS.
- Inspiration for the project from secure messaging platforms.
For questions or feedback, please contact [email protected].