Inspiration
In many parts of the world, reliable internet connectivity is still a challenge. Critical data — such as medical reports, emergency files, or telemetry logs — often fail to transfer due to unstable networks. I wanted to build a solution that ensures data always reaches its destination, no matter how poor the connection is.
The inspiration came from imagining rural clinics trying to send patient data or disaster teams sharing files during emergencies. A traditional upload tool fails in these conditions — but a resilient, intelligent transfer system could make a real difference.
What it does
SendIQ is a reliable and secure file transfer system built to perform even on weak or unstable networks. It automatically detects network interruptions, splits large files into smaller chunks, and resumes transfers from the last successful point — ensuring your data always reaches its destination. All files are encrypted end-to-end, making SendIQ a safe and intelligent way to share critical data in rural clinics, disaster zones, or anywhere with poor connectivity.
How we built it
We built SendIQ using a Next.js full-stack architecture to combine performance, scalability, and simplicity.
Frontend: Next.js + Tailwind CSS for an intuitive UI, React Dropzone for drag-and-drop uploads.
Backend: Node.js APIs handle chunk uploads, checksum validation, and resumable transfers.
Database: MongoDB stores metadata like upload progress, user info, and retry states.
Storage: AWS S3 (or Cloudinary) for cloud-based file storage.
Resilience Layer: Service Workers + IndexedDB enable offline caching and reconnection logic.
Security: AES-256 encryption with JWT authentication ensures data integrity.
AI Add-on (optional): A lightweight GenAI module that can automatically prioritize critical files or summarize transfer logs.
Challenges we ran into
Resumable Uploads: Maintaining upload state and synchronizing partially uploaded chunks was complex.
Network Failures: Simulating unstable networks to test reliability took time.
Encryption Overhead: Encrypting large files asynchronously without freezing the backend event loop.
Offline Sync: Implementing IndexedDB and ensuring background re-sync upon reconnection.
Accomplishments that we're proud of
Successfully built a file transfer tool that never quits, even on weak internet.
Integrated secure encryption + resumable upload logic using pure JavaScript and Node.js.
Designed a clean, responsive UI that clearly shows transfer progress and error recovery.
Extended the project with AI-based prioritization, proving how GenAI can enhance system intelligence.
What we learned
Deep understanding of file chunking, hashing, and resumable uploads.
Efficient encryption and decryption workflows for large data streams.
How to create offline-first apps using service workers and caching.
Practical experience in designing fault-tolerant systems that adapt to real-world constraints.
Log in or sign up for Devpost to join the conversation.