FileDrop'un ana çıkış noktası ve en büyük amacı; kırtasiye, okul veya fotokopicilerde çıktı alırken ortak bilgisayarlara WhatsApp Web (veya mail) girişi yapma zorunluluğunu ve kişisel hesapları açık unutma riskini tamamen ortadan kaldırmaktır.
Ortak ve güvensiz bilgisayarlara kişisel hesaplarınızı bağlamadan, QR kod ile veya 6 haneli oda koduyla saniyeler içinde geçici bir odaya girebilir, çıktı alacağınız dosyayı aktarabilir ve işiniz bittiğinde dosyalarınızla birlikte tamamen anonim bir şekilde ayrılabilirsiniz. Ayrıca büyük boyutlu dosyaları aktarırken yaşanan "boyut limiti" veya "yavaş aktarım" gibi problemleri de ortadan kaldırır.
İster kırtasiyede hızlıca bir PDF çıkartın, ister çalışma arkadaşınızla devasa boyutlu bir projeyi saniyeler içinde paylaşın. Aynı ağa bağlı olma zorunluluğu yoktur, sistem modern web teknolojileri sayesinde tamamen gerçek zamanlı (real-time) çalışır.
Buraya projenin çalıştığı anlara ait ekran görüntülerini ekleyebilirsiniz.
- ⚡ Gerçek Zamanlı (Real-Time) Senkronizasyon: Yüklenen dosyalar anında tüm bağlı ekranlarda belirir. Sayfa yenilemeye gerek kalmaz!
- 📱 QR Kod İle Hızlı Paylaşım: Mobil cihazlardan kolay erişim için otomatik QR kod oluşturucu. Telefon kamerasını okutun ve hemen dosya gönderin/alın.
- 📦 Toplu İndirme (ZIP): Yüklenen çoklu dosyaları tek bir tıklama ile
.ziparşivi olarak indirebilme kolaylığı. - 🚀 Chunked Upload (Parçalı Yükleme): Büyük medya dosyalarını (video vb.) parçalara bölerek yükleme özelliği sayesinde sunucu/proxy boyut sınırlarına (Cloudflare vb.) takılmaz.
- 🐳 Docker Desteği: Tek komutla kur ve çalıştır (
docker-compose up -d). - 🎨 Modern ve Responsive Tasarım: Hem mobil hem masaüstü cihazlar için optimize edilmiş, göz yormayan şık UI.
- React & Vite: Çok hızlı derleme ve akıcı kullanıcı deneyimi.
- Socket.io-Client: Anlık veri senkronizasyonu.
- QRCode: Mobil cihazların sisteme entegrasyonu.
- Vanilla CSS: Özelleştirilmiş, animasyonlu modern tasarım.
- Node.js & Express.js: Güçlü ve hızlı API altyapısı.
- Socket.io: Çift yönlü anlık iletişim katmanı.
- Multer: Gelişmiş dosya yükleme (Multipart/form-data) yönetimi.
- Archiver: Anlık olarak dosyaları sıkıştırıp
.zipformatında sunma.
Projeyi lokalinizde veya kendi sunucunuzda ayağa kaldırmak çok kolaydır.
Sisteminizde Docker ve Docker Compose kuruluysa, sadece şu komutu çalıştırmanız yeterlidir:
docker-compose up -d --buildUygulama http://localhost:3001 adresinde yayına girecektir.
1. Repoyu Klonlayın:
git clone https://github.com/KULLANICI_ADINIZ/filedrop.git
cd filedrop2. Backend Kurulumu:
cd server
npm install
npm run dev3. Frontend Kurulumu: Yeni bir terminal sekmesi açın:
cd client
npm install
npm run devFileDrop, Cloudflare Tunnels ve VDS yapılarına tamamen uyumludur. Büyük dosya yüklemeleri için Nginx/Cloudflare taraflı client_max_body_size hatalarını aşmak adına projede "Chunked Upload" mimarisi kullanılmıştır.
- Bu repoyu forklayın (
Fork). - Özellik dalınızı oluşturun (
git checkout -b feature/YeniOzellik). - Değişikliklerinizi commit'leyin (
git commit -m 'Harika bir özellik eklendi'). - Dalınızı push'layın (
git push origin feature/YeniOzellik). - Bir Pull Request açın.
Sevgiyle ve ☕ ile geliştirildi.
#filedrop #reactjs #nodejs #socketio #realtime #dosyapaylasimi #docker #webdevelopment #javascript #opensource #filetransfer


