Skip to content

Ghost-xDD/FileFusion

Repository files navigation

typescript nextdotjs tailwindcss

FileFusion

Filefusion is a decentralized, Web3 file-sharing and storage platform built on Apillon's infrastructure within the Polkadot ecosystem. It leverages blockchain technology to offer enhanced security, privacy, and user control over their data, while providing features similar to WeTransfer and Dropbox.

  1. ⚙️ Tech Stack
  2. 🔋 Features
  3. 🕸️ Snippets
Component Technology/Service
Authentication Apillon Auth API
File Uploads Apillon Storage API
File Encryption / Decryption Apillon Computing API
Decryption NFT Collection Apillon NFT API
Get Transferred / Uploaded Files Apillon Storage
Decrypt encrypted file site Template forked from Apillon Phala Demo
Email Sending Functioality Nodemailer
  • Sign in with KILT DID (using Sporran Wallet) Untitled design

Filefusion has three modes.

  • Storage Mode - The storage mode works like a basic version of dropbox. Users can upload files and get a shareable link to access their uploaded files
storage-mode Screenshot 2024-06-06 at 11 07 37 PM
  • Transfer Mode - Transfer mode functions as a web3 version of Wetransfer. Files are uploaded and transfered to recipient's email
transfer-mode
  • Private Mode - Files transferred using private mode are encrypted before they are uploaded and transferred to the recipient. User's get access to a decryption site in their email and only the wallet address with the designated NFT Key can access the file.
Screenshot 2024-06-10 at 4 18 07 PM
  • Access all of your files transferred and uploaded using FileFusion
Screenshot 2024-06-10 at 4 16 17 PM

Environment Variables

  • NEXT_PUBLIC_APILLON_CREDENTIALS=
  • NEXT_PUBLIC_BUCKET_UUID=
  • NEXT_PUBLIC_ENCRYPTED_BUCKET_UUID=
  • NEXT_PUBLIC_COMPUTING_CONTRACT_UUID=
  • NEXT_PUBLIC_COLLECTION_UUID=
  • APILLON_API_KEY=
  • APILLON_API_SECRET=
  • EMAIL_USER=
  • EMAIL_PASS=

Clone the repository

git clone https://github.com/Ghost-xDD/FileFusion.git

Navigate to the project directory

cd FileFusion

Install dependencies

npm install

Start the application

npm run dev