Skip to main content
File Transfer Pavan is a modern cloud-based file sharing platform built with React 18, TypeScript, and Vite 5, backed by Supabase. You can use it live at https://file-share-05.lovable.app to share files with PIN protection, QR codes, and real-time analytics. The platform supports transfers up to 10 GB on the free tier.

File Sharing

Upload single files or organize them into collections. Drag-and-drop support makes uploading effortless, with up to 10 GB free per transfer.

Security

Protect shares with PIN codes and optional passwords. Credentials are hashed with bcrypt, Supabase Row Level Security (RLS) policies guard data access, and cryptographically secure tokens validate every request.

QR Code Sharing

Generate and scan QR codes for instant sharing. Links are print-friendly so recipients can download even without a direct click.

Analytics & Dashboard

Track downloads, monitor upload trends, and visualize usage with Recharts-powered charts and metrics panels.

Admin Panel

Manage users, moderate files, inspect audit logs, and check system health from a 130 KB admin dashboard.

PWA Support

Install the app on mobile or desktop for a native feel. Service Workers cache assets so core flows work even when connectivity drops.

Architecture

File Transfer Pavan is structured as a single-page application with a clear separation between UI, routing, authentication, and data services. Here is how the pieces fit together. React Router manages more than 15 pages, each loaded lazily to keep initial bundle size small. AnimatedRoutes wraps transitions in Framer Motion for smooth page changes. AuthContext and AuthGuard protect sensitive routes so unauthenticated visitors are redirected to the login screen. The uploadService.ts module orchestrates the full upload pipeline: streaming files to Supabase Storage, generating PINs through an RPC call, hashing passwords with bcrypt, and managing collections. Every upload invokes the validate_file_upload() RPC, produces cryptographically secure tokens, and stores metadata in PostgreSQL. React Query sits on top, handling data fetching, caching, and background refetching. Offline resilience comes from the Vite PWA plugin backed by Workbox. It pre-caches static assets and provides a fallback strategy when the network is unavailable.

Tech stack

Key pages

Get the code

You can clone the repository and start the development server in seconds.
The dev server listens on port 8080, so open http://localhost:8080 once the command finishes.