Skip to content

✨ Features ​

Development Server Features

ShareJadPi Dev is designed for local development and testing with core file sharing functionality.

🎯 Feature Overview ​


📤 Smart Upload System ​

The Most Intuitive Way to Share Files ​

Upload files with zero friction. Just drag, drop, and you're done.

Upload Features ​

FeatureDescriptionStatus
Drag & DropSimply drag files from your file explorer✅
Click to BrowseTraditional file picker dialog✅
Multi-fileUpload multiple files simultaneously✅
Progress BarsReal-time upload progress with shimmer animation✅
Auto-namingAutomatically handles duplicate filenames✅
Size LimitConfigurable max file size (default 500MB)✅
Storage PathFiles saved to ~/ShareJadPi-Dev/uploads✅

Technical Implementation ​

python
@app.route('/upload', methods=['POST'])
def upload_file():
    """Handle file uploads from the web interface."""
    if 'file' not in request.files:
        return jsonify({'error': 'No file provided'}), 400
    
    uploaded = []
    for file in request.files.getlist('file'):
        if file.filename:
            filename = secure_filename(file.filename)
            filepath = os.path.join(UPLOAD_FOLDER, filename)
            file.save(filepath)
            uploaded.append({
                'name': filename,
                'size': os.path.getsize(filepath)
            })
    
    return jsonify({
        'success': True,
        'files': uploaded
    })

📥 Efficient Download System ​

Direct File Access ​

Download any file with a single click. No complicated links or expiration timers.

Download Features ​

FeatureDescriptionStatus
Direct LinksSimple /download/filename URLs✅
StreamingEfficient file streaming for large files✅
MIME DetectionAutomatic content-type detection✅
Download HeadersProper attachment headers for browser downloads✅

API Example ​

javascript
// Download a file
fetch('/download/myfile.pdf')
  .then(response => response.blob())
  .then(blob => {
    const url = window.URL.createObjectURL(blob);
    const a = document.createElement('a');
    a.href = url;
    a.download = 'myfile.pdf';
    a.click();
  });

🗑️ File Management ​

Complete Control Over Your Files ​

List, view, and delete files through a clean API interface.

Management Features ​

FeatureDescriptionStatus
List FilesGet all uploaded files with metadata✅
File MetadataName, size, and modification time✅
Delete FilesRemove files via DELETE endpoint✅
Status APICheck server status and version✅

API Endpoints ​

bash
# List all files
curl http://localhost:5000/files

# Delete a file
curl -X DELETE http://localhost:5000/delete/filename

# Check server status
curl http://localhost:5000/api/status

Response Format ​

json
{
  "success": true,
  "files": [
    {
      "name": "document.pdf",
      "size": 1048576,
      "modified": "2024-01-31T10:30:00Z"
    }
  ]
}

🎨 Beautiful User Interface ​

Modern Dark Theme Design ​

A stunning interface that developers love. Every detail crafted with care.

UI Features ​

FeatureDescriptionStatus
Dark ThemeEye-friendly dark color scheme✅
Gradient AccentsGreen gradient highlights✅
Smooth AnimationsTransitions and hover effects✅
Responsive LayoutWorks on desktop, tablet, and mobile✅
Toast NotificationsNon-intrusive feedback messages✅
Shimmer EffectsLoading state animations✅
Modern TypographyClean, readable fonts✅

Design System ​

css
/* Color Palette */
--bg-primary: #0a0a0a;
--bg-secondary: #1a1a1a;
--text-primary: #ffffff;
--accent-green: #10b981;
--gradient: linear-gradient(135deg, #10b981, #059669);

🔧 Developer Experience ​

Built for Development ​

Clean code, simple APIs, and easy customization.

Dev Features ​

FeatureDescriptionStatus
Auto Browser LaunchAutomatically opens browser on start✅
Network DiscoveryShows all available network URLs✅
Custom Port--port flag to change port✅
No Browser Mode--no-browser flag for headless operation✅
Clean ArchitectureWell-organized, readable code✅
Minimal DependenciesJust Flask and Werkzeug✅

Command Line Usage ​

bash
# Start on default port 5000
python sharejadpi-dev.py

# Use custom port
python sharejadpi-dev.py --port 8080

# Don't auto-open browser
python sharejadpi-dev.py --no-browser

# Combine flags
python sharejadpi-dev.py --port 3000 --no-browser

📊 Comparison Matrix ​

FeatureShareJadPi DevGoogle DriveWeTransferAirDrop
Offline Operation✅ Full❌ No❌ No✅ Yes
File Size Limit✅ 500MB+⚠️ 15GB (free)⚠️ 2GB (free)✅ No limit
Speed✅ LAN speed⚠️ Internet⚠️ Internet✅ Peer-to-peer
Privacy✅ Local only❌ Cloud❌ Cloud✅ Private
Cross-platform✅ Any browser✅ Web✅ Web❌ Apple only
No Account Needed✅ Yes❌ Required❌ For 2GB+❌ Apple ID
Open Source✅ 100%❌ No❌ No❌ No
Self-hosted✅ Yes❌ No❌ No❌ No
Cost✅ Free⚠️ Freemium⚠️ Freemium✅ Free

🚀 What's Next? ​

Phase 3: Advanced Features (Planned) ​

These features are planned for future development:

  • 🔐 Token Authentication - Secure access with token-based auth
  • 🌐 Cloudflare Tunnel - Share files over the internet securely
  • 📱 QR Code Generation - Instant mobile access with QR codes
  • 📋 Shared Clipboard - Sync clipboard across devices
  • ⚡ Speed Test Utility - Test network speed
  • 🖱️ Context Menu Integration - Right-click to share on Windows

Phase 4: Polish & Performance (Planned) ​

  • ⚙️ Settings Panel - Customizable configuration
  • 📊 Activity Logs - Track all file operations
  • 🎯 Advanced Search - Find files quickly
  • 🔄 Auto Updates - Built-in update mechanism

Phase 5: Enterprise Features (Planned) ​

  • 👥 User Management - Multi-user support
  • 📈 Analytics Dashboard - Usage statistics
  • 📱 Mobile Apps - Native iOS/Android apps
  • 🔌 Plugin System - Extend functionality

Built with ❤️ by Het Charusat