Skip to content

Latest commit

 

History

History
43 lines (35 loc) · 1.61 KB

TODO.md

File metadata and controls

43 lines (35 loc) · 1.61 KB

leni-deni: P2P File Sharing Application

Overview

leni-deni is a peer-to-peer file sharing application written in Rust. It allows users to share files directly with each other without requiring a central server.

Project Goals

  • Create a lightweight, efficient P2P file sharing tool
  • Support direct file transfers between peers
  • Implement peer discovery on local networks
  • Provide a simple CLI interface for file operations
  • Ensure secure and encrypted file transfers

Milestones

1. Core Networking Infrastructure

  • Implement basic TCP/UDP socket handling
  • Create a connection manager for peer connections
  • Design protocol for peer communication
  • Implement peer discovery using mDNS/local network broadcasting

2. File Operations

  • Design file chunking mechanism for large file transfers
  • Implement file integrity verification (checksums/hashes)
  • Create file metadata structure
  • Set up file transfer resumption capability

3. User Interface

  • Implement CLI commands for basic operations
  • Add progress indicators for file transfers
  • Create peer listing and discovery interface
  • Implement file/directory sharing controls

4. Security Features

  • Add end-to-end encryption for file transfers
  • Implement basic authentication between peers
  • Add transfer verification and validation
  • Create permissions system for shared files

5. Advanced Features

  • Implement NAT traversal techniques
  • Add bandwidth management and throttling
  • Create distributed tracking of shared resources
  • Support for transfer queuing and scheduling