SecureShare is a web application designed for secure and efficient file transfer between registered users. This app prioritizes the security and privacy of its users by incorporating features such as private key encryption and a robust authentication system.
- User Registration and Login: Users can easily register and log in to the app.
- Private Key Display: Upon successful login, users are shown a toast notification displaying their private key.
- Secure File Transfer: Users can send files to any other registered user securely.
- Inbox: Users can view files sent to them by others, and download them using their private key for decryption.
- File Deletion: Users have the ability to delete files they no longer need.
The app is designed for transferring small, important files due to the Supabase free tier storage limit of 87MB.
- NextJS: React framework for server-rendered applications and static websites.
- TypeScript: Type-safe JavaScript for enhanced code reliability.
- Supabase: Backend-as-a-service providing authentication, storage, and database solutions.
- TailwindCSS: Utility-first CSS framework for rapid UI development.
To set up and run this project locally, follow these steps:
- Clone the Repository:
git clone https://github.com/yourusername/secureshare.git cd secureshare
- Install Dependencies:
npm install
- Set Up Environment Variables:
Create a
.env.local
file in the root directory and add your Supabase keys and other necessary environment variables:NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
- Run the Development Server:
npm run dev
Open http://localhost:3000 with your browser to see the result.
- Register: Sign up with a unique username and password.
- Login: Log in with your credentials. Your private key will be shown in a toast notification.
- Send File: Navigate to the file transfer section, enter the recipient's username, and upload the file.
- Inbox: View incoming files, download, and decrypt them using your private key. You can also delete files you no longer need.
Contributions are welcome! Please open an issue or submit a pull request.
This project is licensed under the MIT License.
- Supabase for providing backend services.
- TailwindCSS for the beautiful and responsive UI design framework.
- The NextJS and TypeScript communities for their invaluable resources and support.