Skip to content

Releases: ircitdev/UspSocDownloader

v2.0.0 - Interactive Web Documentation & Major Features

Choose a tag to compare

@ircitdev ircitdev released this 02 Mar 19:42

🎉 UspSocDownloader v2.0.0

Major Update: Interactive Web Documentation + New Features


🌟 What's New

📖 Interactive Web Documentation

  • New Command: /howto opens full interactive guide in Telegram Mini App
  • Live Site: https://socdownloader.tools.uspeshnyy.ru
  • Features:
    • 🎨 Beautiful glass morphism design (dark blue/cyan theme)
    • 📱 Fully responsive for all devices
    • ⚡ One-click command copying
    • ❓ Interactive FAQ with expandable answers
    • 🔍 6 quick navigation sections
    • ✨ Smooth animations and transitions

✨ New Bot Features

📤 History Export

  • Export download history to CSV or JSON
  • Detailed statistics included
  • Filter by platform, favorites, date range
  • Command: /export

🔍 Search Functionality

  • Search through download history
  • Filter by: text, platform, content type, date, author
  • Get search suggestions based on your history
  • Command: /search

📁 Collection Management

  • Edit collection names and icons
  • Better organization for your downloads
  • Enhanced UI for collection browsing

🗑️ Automatic File Cleanup

  • Auto-delete old files after N days (configurable)
  • Manual cleanup option
  • Statistics and monitoring
  • Saves disk space automatically

⚡ Rate Limiter

  • Intelligent request throttling per platform
  • Prevents Instagram/TikTok rate limits
  • 5-second intervals for Instagram
  • Automatic retry handling

🎯 User-Friendly Errors

  • Clear, understandable error messages
  • Suggestions for fixing issues
  • Retry buttons for failed downloads
  • Platform-specific error handling

📚 Documentation

New Documentation Files

  • USER_GUIDE.md (950+ lines) - Complete user manual with examples
  • API_DOCUMENTATION.md (650+ lines) - Technical docs for developers
  • VIDEO_TUTORIAL_SCRIPT.md (520+ lines) - Video guide script
  • DEPLOYMENT.md - Server setup and deployment guide

Quick Links


🧪 Testing & Quality

Comprehensive Test Suite

  • 37 automated tests with 100% pass rate
  • Test Coverage:
    • ✅ Database operations (13 tests)
    • ✅ Export functionality (10 tests)
    • ✅ Search features (8 tests)
    • ✅ File cleanup (6 tests)

Test Results

✅ Database Tests: 13/13 passed (100%)
✅ Export Tests: 10/10 passed (100%)
✅ Search Tests: 8/8 passed (100%)
✅ Cleanup Tests: 6/6 passed (100%)
Total: 37/37 tests passed

Run tests: python tests/test_all.py


🚀 Technical Improvements

Infrastructure

  • SQLite database with full CRUD operations
  • Nginx configuration with SSL/HTTPS
  • Let's Encrypt auto-renewal
  • CORS headers for Telegram Mini Apps
  • Gzip compression for web content

Code Quality

  • Type hints for all new functions
  • Comprehensive error handling
  • Async/await best practices
  • Clean code architecture
  • Professional logging

Performance

  • Database indexing for fast queries
  • Rate limiting to prevent API blocks
  • Efficient file cleanup
  • Caching for static content
  • HTTP/2 support

📊 Statistics

Code Additions

  • 4,000+ lines of new code and documentation
  • 6 new files created
  • 14 files updated
  • 2,400+ lines of documentation

Features Summary

  • 10 new user commands
  • 37 automated tests
  • 2 documentation websites
  • 1 Telegram Mini App
  • 100% test coverage

🎯 User Experience

What Users Get

  1. 📖 Interactive Guide - Full documentation in Telegram
  2. 📂 Better Organization - Collections, favorites, search
  3. 📤 Data Export - Download history as CSV/JSON
  4. ⚙️ Customization - Personal settings and preferences
  5. 📊 Statistics - Detailed usage analytics
  6. 🤖 AI Features - Translation, rewrite, OCR
  7. 🗑️ Auto-Cleanup - Automatic file management

Improved Commands

  • /howto - Interactive web guide (NEW)
  • /history - View download history
  • /search - Search downloads (NEW)
  • /export - Export history (NEW)
  • /favorites - Favorite downloads
  • /collections - Manage collections (IMPROVED)
  • /settings - Bot preferences
  • /mystats - Usage statistics

🌐 Web Documentation Features

  • ✨ Modern glass morphism design
  • 🎨 Dark blue (#0f1729) + Cyan (#4a9eff) theme
  • 📱 Mobile-first responsive layout
  • ⚡ Instant command copying
  • 🔍 Quick section navigation
  • ❓ Collapsible FAQ (8 questions)
  • 🎯 Platform badges (Instagram, YouTube, TikTok, etc.)
  • 🌟 Smooth scroll animations
  • 📲 Haptic feedback on mobile
  • 🔒 HTTPS with auto-renewal SSL

🛠️ For Developers

New APIs

# Database
from src.database.db_manager import get_db_manager
db = get_db_manager()
settings = await db.get_user_settings(user_id)

# Export
from src.utils.history_exporter import export_user_history
content, stats = await export_user_history(db, user_id, 'csv')

# Search
from src.utils.history_search import HistorySearcher
results = await HistorySearcher.search(user_id, query='sunset')

# Cleanup
from src.utils.file_cleaner import get_cleanup_service
cleanup = get_cleanup_service()
result = await cleanup.manual_cleanup(user_id)

Deployment

# Quick deploy
ssh root@server
cd /opt/uspsocdowloader
bash DEPLOY_WEB_DOCS.sh

📝 Changelog

Added

  • Interactive web documentation with Telegram Mini App
  • Command /howto for opening web guide
  • History export to CSV/JSON format
  • Search functionality for downloads
  • Collection editing capabilities
  • Automatic file cleanup service
  • Rate limiter for platform requests
  • User-friendly error messages
  • Comprehensive test suite (37 tests)
  • Complete API documentation
  • Video tutorial script
  • Deployment automation scripts

Improved

  • Database schema with new tables
  • Error handling across all modules
  • UI/UX for all commands
  • Code documentation
  • Performance optimizations
  • Security headers

Fixed

  • Instagram rate limiting issues
  • Collection management bugs
  • File permission issues
  • Memory leaks in cleanup

🎓 Resources


👨‍💻 Credits

Powered by Aleksandr Uspeshnyy


📦 Installation

git clone https://github.com/ircitdev/UspSocDownloader.git
cd UspSocDownloader
git checkout v2.0.0
pip install -r requirements.txt
python run_bot.py

🔄 Upgrade from v1.x

cd /opt/uspsocdowloader
git pull origin master
git checkout v2.0.0
systemctl restart uspsocdowloader

Database will auto-migrate on first run.


Full Changelog: v1.3.0...v2.0.0