Born out of the frustration of trying to seamlessly transfer files between my Android device and Mac. This project is a full-stack file-sharing application that leverages Cloudinary’s storage solutions alongside the multer node package for efficient file uploading and sharing. The application is designed using Next.js and TypeScript, with a user-friendly interface crafted using Mantine UI. The backend is powered by Express and MongoDB, ensuring robust and scalable performance.
- File upload and sharing capabilities.
- Integration with Cloudinary for storage.
- Robust backend with Express and MongoDB.
- Elegant and responsive UI with Mantine UI.
- TypeScript for improved code reliability.
- Node.js
- MongoDB
- Cloudinary account
-
Clone the Repository
git clone [repository URL] cd [repository folder]
-
Install Dependencies
Navigate to both the client and server directories and install dependencies.
# Install dependencies for server cd server npm install # Install dependencies for client cd client npm install
-
Set up Environment Variables
Create
.env
files in bothclient
andserver
directories with the necessary environment variables. For example, in the server directory:MONGODB_URI=[Your MongoDB URI] CLOUDINARY_URL=[Your Cloudinary URL]
-
Start the Server
In the
server
directory, run:npm start
-
Start the Client
In a new terminal, navigate to the
client
directory and run:npm run dev
The application should now be running on
localhost:3000
.