DEV Community

Cover image for Fun With Files - Time Capsule Submission for the Pinata Challenge
Inês Catana
Inês Catana

Posted on

4 4 3 2 4

Fun With Files - Time Capsule Submission for the Pinata Challenge

This is a submission for the The Pinata Challenge

What I Built

Fun With Files is a decentralized file-sharing platform where users can upload, view, and preserve their most cherished memories. It allows users to create a "time capsule" of images, accompanied by titles, descriptions, and tags. With integrated file upload and retrieval, Fun With Files ensures a seamless way to store and interact with media files using Pinata for decentralized file storage.

The application is built using Next.js for the frontend, Tailwind CSS for the UI, and MongoDB for storing metadata. Pinata is used to store the files on IPFS, ensuring decentralized and immutable file storage.

Demo

Live

homepage

upload page

gallery

My Code

GitHub Repository

More Details

In this project, I integrated Pinata in multiple ways:

File Upload to IPFS: Users can upload images via a simple frontend interface. These files are securely uploaded to IPFS using Pinata's API, ensuring decentralized storage.
File Retrieval from Pinata Gateway: The images uploaded by users are fetched and displayed from the Pinata gateway, ensuring users can view their files stored on IPFS.
IPFS CIDs for Content Addressing: Each file has a unique CID (Content Identifier) which is stored in MongoDB along with additional metadata like title, description, and tags. This CID is used to retrieve the files.

Features:
Decentralized Storage with Pinata: All files are stored on IPFS using Pinata, providing a permanent and secure way to store user memories.
File Management: Users can upload, view, and download images with titles and descriptions,

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (1)

Collapse
 
programordie profile image
programORdie

Looks good, but how do you make sure only the users sees it files? It looks like you don't do any auth and you don't store them in the cookies/localstorage either.

Billboard image

Create up to 10 Postgres Databases on Neon's free plan.

If you're starting a new project, Neon has got your databases covered. No credit cards. No trials. No getting in your way.

Try Neon for Free →

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay