A feature-rich Python HTTP server for file sharing with retro UI, dark/light themes, notepad, analytics, thumbnails, and QR code access.
Project description
PyServeX – Advanced Python HTTP File Server
A feature-rich HTTP server for file sharing with a retro-styled web interface, dark/light themes, built-in notepad, analytics, and advanced file operations.
by Parth Padhiyar (SubZ3r0-0x01)
Installation
Install using pip:
pip install pyservx
Or use pipx for an isolated environment (recommended):
pipx install pyservx
Requires Python 3.6 or higher.
Usage
Run the server:
pyservx
Or with custom options:
pyservx --port 8080 --no-qr
- The server automatically creates a shared folder in your Downloads directory (
PyServeX-Shared) - Access the web interface at
http://localhost:8088(or your custom port) - Scan the QR code in the terminal to access from mobile devices
- Use
Ctrl+Cto stop the server
Features
Core Features
- Retro "Hacker" UI with dark/light theme toggle
- File and folder browsing with modern, responsive interface
- Download entire folders as ZIP files
- Upload multiple files simultaneously via drag-and-drop
- QR Code Access for easy mobile device connection
- Real-time Progress Tracking for uploads and downloads with ETA and speed
- No File Size Restrictions - upload files of any size
Advanced Features
-
Built-in Notepad/Text Editor
- Create and edit text files directly in the browser
- Syntax highlighting support
- Keyboard shortcuts (Ctrl+S to save)
- Theme-aware editor
-
File Preview System
- Images (JPG, PNG, GIF, etc.)
- PDFs (embedded viewer)
- Videos (MP4, WebM, OGG)
- Audio files (MP3, WAV, OGG)
- Text files with syntax highlighting
-
Analytics & Usage Tracking
- SQLite-based analytics database
- Track file access, downloads, and uploads
- Monitor popular files and usage patterns
- Client IP and user agent logging
-
Enhanced File Operations
- Duplicate file detection
- File hash generation (MD5)
- Advanced file search with filters
- Thumbnail generation for images
- File copy and move operations
- Archive extraction support
-
Smart Configuration
- Persistent settings stored in user home directory
- Automatic shared folder creation in Downloads
- Configurable analytics and thumbnail generation
- Custom port support
User Interface
- Dark/Light Theme Toggle with persistent settings
- Search Functionality to quickly find files
- File Sorting by name, size, or date
- Responsive Design for desktop and mobile
- Breadcrumb Navigation for easy folder traversal
- File Type Icons for better visual organization
Security & Privacy
- Path Traversal Protection prevents unauthorized access
- Automated
robots.txtto prevent search engine indexing - Secure File Operations with proper validation
Technical Features
- Modular Codebase for easy maintenance and extension
- Chunked File Transfer for efficient large file handling
- Progress Callbacks for real-time feedback
- Threaded Server for concurrent connections
- Graceful Shutdown handling
Requirements
- Python 3.6+
qrcodelibrary (automatically installed with pip)
License
MIT License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyservx-2.0.0.tar.gz.
File metadata
- Download URL: pyservx-2.0.0.tar.gz
- Upload date:
- Size: 47.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80d8dc0ec644a9968bf6f1722930d1a2b26528015dece83aa33206b87a7b9baf
|
|
| MD5 |
553d1910e142c62aaa85cde8db74872c
|
|
| BLAKE2b-256 |
1f4da08b1709954bfbe2602d8f1c2b5dcf59521f1b2624baca20256011d6e398
|
File details
Details for the file pyservx-2.0.0-py3-none-any.whl.
File metadata
- Download URL: pyservx-2.0.0-py3-none-any.whl
- Upload date:
- Size: 46.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3b394ba132d74c9ea6b2fe9343a4d3e89afa680a9a046e542e297ceb99414751
|
|
| MD5 |
e416fa96896e02cfd7b9e440fa2736e7
|
|
| BLAKE2b-256 |
06a065fba5feb8b801579d9d82ea6fdf7a2b65a088b3f3c76af864d32fe37109
|