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. TheuploadService.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.