Inspiration
Easy Media Vault was created to offer a secure file-sharing process for its users. I want to users to have complete control over their media while eliminating the vulnerabilities of traditional cloud storage.
What it does
Easy Media Vault is a web application that lets you store, manage, and share your media files securely via IPFS using Pinata’s pinning service. It features a drag-and-drop interface to ensure a smooth and efficient media management experience.
How I built it
I built the platform using React for the front end and Node.js for the back end, integrating with IPFS and Pinata for decentralized storage. This modern stack and API integration ensures secure file uploads and effortless media management.
Challenges I ran into
As I was working solo on this project there were integration challenges as I had to do and learn a lot by myself. User experience also was a challenge as I had limited time to implement a simple user interface.
Accomplishments that I am proud of
I learned a ton doing this project, messing with a bit of frontend and backend technology. I am proud that I even got this far.
What I learned
I gained valuable knowledge of decentralized storage, API integration, and secure file management throughout the project. This deepened my understanding of web, backend, and even a little frontend development.
What's next for Easy Media Vault!
I plan to implement a lot more features for Easy Media Vault to make it more useful and better looking for its users. For example: a whole interface to see your uploaded files, to manage those files, and even more return options other than just the IPFS CID.
Prerequisites
- Node.js (v14 or higher)
- npm (v6 or higher)
- Install the dependencies: using
npm install
Running the Application
- In the frontend directory, run the following command to start both the backend and frontend servers concurrently:
npm start. - Open your browser and navigate to
http://localhost:3000to access the Easy Media Vault application. - Upload a file and retrieve the IPFS CID.
- Use a gateway (Ex:
jade-sophisticated-junglefowl-810.mypinata.cloud) and input the following URL in a browser to retrieve the data:{gateway}/ipfs/{cid}.
Built With
- css
- html
- javascript
- pinata
- react
Log in or sign up for Devpost to join the conversation.