76 lines
2.2 KiB
Markdown
76 lines
2.2 KiB
Markdown
Core System Components
|
|
|
|
Manifest File
|
|
|
|
Contains all core system metadata, configuration schema, navigation structure, features, and hooks
|
|
CoreID: 1000
|
|
Name: Torrent Handler (Transmission)
|
|
Version: 1.0.0
|
|
Author: MasterDraco
|
|
|
|
|
|
Core Implementation
|
|
|
|
Complete JavaScript implementation with Transmission RPC API integration
|
|
Methods for connecting to Transmission, managing torrents, and handling hooks
|
|
Support for all requested features: start/stop/delete torrents, add new torrents, set seed ratio and time
|
|
|
|
|
|
UI Components
|
|
|
|
Torrent Dashboard: Shows all active torrents with stats and control buttons
|
|
Add Torrent Form: Upload torrent files with configurable settings
|
|
Torrent Settings: Configure connection and default torrent settings
|
|
|
|
|
|
Routes and Registration
|
|
|
|
Route handling for all pages
|
|
Navigation registration
|
|
CSS style registration
|
|
Core system registration with the framework
|
|
|
|
|
|
CSS Styles
|
|
|
|
Comprehensive styling for all components
|
|
Responsive design for different screen sizes
|
|
Status indicators, progress bars, and other UI elements
|
|
|
|
|
|
|
|
Features Implemented
|
|
|
|
✅ Connection to Transmission RPC API
|
|
✅ Start/stop/delete torrents
|
|
✅ Add new torrents by uploading torrent files
|
|
✅ Configure seed ratio for torrents
|
|
✅ Set time ratio (minutes) for seeding
|
|
✅ Auto-start toggle for new torrents
|
|
✅ Progress monitoring and status display
|
|
✅ Hook system for plugin extensions
|
|
|
|
How to Use the Core System
|
|
|
|
The system will connect to Transmission at the configured URL
|
|
The dashboard shows all torrents with their current status and progress
|
|
Use the Add Torrent button to upload new .torrent files
|
|
Configure default settings through the Settings page
|
|
For each torrent, you can:
|
|
|
|
Start or stop torrents
|
|
Remove torrents (keeping files)
|
|
Delete torrents (removing files)
|
|
|
|
|
|
|
|
Extension Points (Hooks)
|
|
I've included several hooks that plugins can use:
|
|
|
|
torrent_added: Triggers when a new torrent is added
|
|
torrent_completed: Triggers when a torrent finishes downloading
|
|
torrent_removed: Triggers when a torrent is removed
|
|
before_torrent_action: Allows intercepting actions before they happen
|
|
|
|
This system is ready to integrate with any framework that follows the specified pattern. Let me know if you need any clarification or have any questions about implementing specific aspects of the core system!
|