- 06 Oct, 2025 11 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Increased container max-width from 1200px to 1400px for wider user list - Reduced modal max-height from 90vh to 70vh for better fit and scrollability
-
Stefy Lanza (nextime / spora ) authored
- Added .actions-cell CSS class with display: flex and gap - Applied class to the actions table cell to arrange edit, deactivate/activate, and delete buttons horizontally
-
Stefy Lanza (nextime / spora ) authored
- Removed old admin.html and admin_users.html files - Updated api_tokens.html to extend base.html
-
Stefy Lanza (nextime / spora ) authored
- Created templates/admin/ directory - Moved admin_users.html to admin/users.html - Updated render_template path in web.py
-
Stefy Lanza (nextime / spora ) authored
- Removed conflicting display: flex from .modal CSS rule - Added .modal.show class for proper centering when opened - Updated JavaScript to use classList.add/remove instead of direct style.display
-
Stefy Lanza (nextime / spora ) authored
- Changed admin routes from /admin/user/* to /admin/users/* - Updated admin.html to extend base.html - Changed action buttons to small icon-based buttons (edit, activate/deactivate, delete) - Made edit user modal scrollable with overflow-y: auto
-
Stefy Lanza (nextime / spora ) authored
- Added base.html with header, nav, user menu, and scripts - Updated dashboard.html, analyze.html, train.html, history.html to extend base.html - Added active_page parameter to render_template calls in web.py for dynamic nav highlighting
-
Stefy Lanza (nextime / spora ) authored
- Updated route in web.py to /admin/users - Updated all dropdown links in templates to point to /admin/users - Removed remaining Admin link from account.html navbar
-
Stefy Lanza (nextime / spora ) authored
- Removed 'Account' and 'Admin' links from top navigation bar - Added 'Account' as first item in user dropdown for all users - Renamed 'Menu Management' to 'Users' in admin dropdown - Dropdown now shows Account first, then role-specific options
-
Stefy Lanza (nextime / spora ) authored
- Changed modal to use flexbox for proper centering - Added max-height and overflow-y: auto to modal-body for scrollable content - Prevented background page scrolling when modal is open - Modal now stays within viewport and scrolls internally
-
Stefy Lanza (nextime / spora ) authored
- Added user icon in top right navigation bar on all pages - Dropdown shows Account/Tokens for non-admin users - Dropdown shows Menu Management/Configurations for admin users - Includes Logout option for all - Used FontAwesome icons and consistent styling
-
- 05 Oct, 2025 29 commits
-
-
Stefy Lanza (nextime / spora ) authored
- Create dedicated Account page (/account) for users and admins - Add password change functionality with current password verification - Implement token top-up system with predefined packages and custom amounts - Add payment method selection (Credit Card, PayPal, Crypto) with UI - Create account balance display with prominent token counter - Add navigation links to Account page across all templates - Implement backend routes for password changes and token purchases - Add update_user_password function to database operations - Include demo token purchase functionality (no real payments) - Maintain consistent navigation experience across the application - Ensure proper access control for account management features
-
Stefy Lanza (nextime / spora ) authored
- Add API Tokens navigation link to all user templates (dashboard, analyze, train, history, settings) - Add Admin navigation link for admin users across all templates - Remove old API token generation button from settings page (now uses dedicated page) - Ensure consistent navigation experience across the application - Admin users can now easily access user management and token generation pages
-
Stefy Lanza (nextime / spora ) authored
- Create dedicated API token generation page with custom naming - Implement JWT token generation with expiration and user claims - Add token administration with list view, last-used tracking, and deletion - Update database schema to support token names and usage tracking - Add navigation links for API tokens page with proper access control - Implement secure token validation with automatic last-used timestamp updates - Add copy-to-clipboard functionality for generated tokens - Create user-friendly token management interface with confirmation dialogs
-
Stefy Lanza (nextime / spora ) authored
- Restrict settings page to admin users only with @admin_required decorator - Add database configuration section to admin settings (SQLite/MySQL settings) - Create admin-only worker token generation for --client authentication - Create user-accessible API token generation for programmatic access - Implement user API token validation that consumes user tokens for analysis - Add database tables for worker_tokens and user_api_tokens - Add API endpoint /api/analyze that validates user tokens and deducts tokens - Admin users are exempt from token consumption for all operations - Enhanced settings page with database management and token generation options
-
Stefy Lanza (nextime / spora ) authored
- Restrict /train route to admin users only (@admin_required) - Add --server-dir command line argument for server directory configuration - Show server local path input only for admin users when --server-dir is set - Add /api/browse endpoint for secure file browsing (admin only) - Implement file navigator popup with directory navigation and file selection - Add security checks to prevent directory traversal attacks - Update analyze template with conditional server path input and file browser modal
-
Stefy Lanza (nextime / spora ) authored
- Fix settings page user dict access error - Add consistent top navigation to dashboard - Fix train page user variable scope error - Update analyze page to use consistent header navigation - Add admin panel with user management (create, activate/deactivate users) - Add 'remember me' checkbox to login page - Change default user tokens from 1000 to 0 - Add admin routes and database functions for user management - Update all templates to use VidAI branding
-
Stefy Lanza (nextime / spora ) authored
- Change project name from 'Video AI Analysis Tool' to 'VidAI' - Update tagline to 'The adult content friendly video automation system' - Change all 'Video AI Pro' references to 'VidAI' in templates - Add favicon using image.jpg in landing page - Add route to serve image.jpg file - Update PyInstaller build script to include image.jpg as icon - Update landing page title and meta description
-
Stefy Lanza (nextime / spora ) authored
- Configure Flask to look for templates in correct directory - Change 'Start Free Trial' to 'Start for Free Now!' on landing page - Fix TemplateNotFound error for register.html and other templates
-
Stefy Lanza (nextime / spora ) authored
- Add token_packages table to database schema - Add default token packages (Starter, Professional, Enterprise) - Add database functions for managing token packages - Update payments.py to use database packages instead of hardcoded ones - Remove pricing section from landing page (packages only show when configured) - Token packages are now fully configurable through admin interface
-
Stefy Lanza (nextime / spora ) authored
- Remove hardcoded token packages from landing page - Replace with generic token-based pricing tiers - Remove reference to database configuration in template - Landing page now shows pricing tiers without specific packages
-
Stefy Lanza (nextime / spora ) authored
- Fix repository URL from GitHub to GitLab (git.nexlab.net/SexHackMe/vidai) - Update landing page to show token packages instead of subscription plans - Change pricing section to reflect database-configured token packages - Update footer links to point to correct repository
-
Stefy Lanza (nextime / spora ) authored
- Add render_template to Flask imports to fix NameError
-
Stefy Lanza (nextime / spora ) authored
- Create login.html, register.html, and config.html templates - Update /login, /register, /config, /history, and /settings routes to use render_template() - Remove inline HTML strings from web.py for better maintainability
-
Stefy Lanza (nextime / spora ) authored
- Resolved f-string and Jinja2 template conflicts by using proper string concatenation - Separated dynamic content from template literals to avoid syntax errors - Ensured all HTML templates render correctly with render_template_string - Maintained all authentication and UI functionality while fixing import issues The web interface now imports and runs without syntax errors.
-
Stefy Lanza (nextime / spora ) authored
- Implemented comprehensive user authentication system (login/logout/register) - Added beautiful landing page for non-authenticated users - Created user dashboard with statistics and quick actions - Built modern, responsive UI with Inter font and professional styling - Added session management and user context throughout - Implemented token-based usage limits and tracking - Created job history page with detailed status tracking - Added user settings page with preferences and API token management - Integrated flash messaging for user feedback - Added navigation headers with consistent branding - Implemented role-based access control decorators - Added comprehensive error handling and user feedback The web interface now provides a complete, professional user experience with authentication, modern design, and full functionality for the multi-process Video AI system.
-
Stefy Lanza (nextime / spora ) authored
- Corrected function to set 'default_model_type' instead of 'default_model' - Fixed NameError where 'model' variable was undefined - Now properly saves model type configuration
-
Stefy Lanza (nextime / spora ) authored
- Deleted webui.py as it was replaced by vidai/web.py in the multi-process architecture - Functionality moved to separate web interface process - Cleaned up legacy monolithic code that is no longer used
-
Stefy Lanza (nextime / spora ) authored
- Add vidai/models.py with abstract base classes for different model types - Support multiple HuggingFace transformers models (vision-language, text-only) - Auto-detect model types from model names/paths - Add model type configuration options (--model-type) - Update worker_analysis.py to use dynamic model loading instead of hardcoded Qwen - Maintain backward compatibility with existing model configurations
-
Stefy Lanza (nextime / spora ) authored
- Updated all requirements files to use nvidia-ml-py instead of deprecated pynvml - Added fallback import in webui.py to support both packages - Maintains backward compatibility while using the actively maintained package - Updated installation instructions in error messages
-
Stefy Lanza (nextime / spora ) authored
- Removed start.sh since process startup is handled by vidai.py - vidai.py now includes proper backend readiness checking - Simplified deployment by using single Python launcher
-
Stefy Lanza (nextime / spora ) authored
- Update start.sh to wait for Unix socket creation before starting workers - Remove retry logic from workers since startup script ensures backend is ready - Workers now connect immediately knowing backend socket exists - Prevents race conditions between backend startup and worker connections
-
Stefy Lanza (nextime / spora ) authored
- Separate communication protocols: TCP for web-backend, Unix sockets for backend-workers - Remove file-based result passing, implement in-memory result storage in backend - Web interface polls backend via socket for results instead of reading files - Workers send results back through Unix socket connection to backend - Maintain persistent connections for efficient bidirectional communication
-
Stefy Lanza (nextime / spora ) authored
- Update workers to use proper socket path from config instead of hardcoded paths - Ensure workers check communication type and use appropriate connection method - Fix SocketCommunicator to properly handle Unix socket paths - Revert database default back to 'unix' for proper Unix socket support
-
Stefy Lanza (nextime / spora ) authored
- Fix SocketCommunicator initialization to properly handle TCP vs Unix sockets - Update backend to use configurable communication type from config - Change default communication type from 'unix' to 'tcp' for better reliability - Ensure consistent socket handling across all processes
-
Stefy Lanza (nextime / spora ) authored
- Refactor monolithic Flask app into separate processes: * Web interface process (vidai/web.py) * Backend routing process (vidai/backend.py) * Analysis worker processes (vidai/worker_analysis.py) * Training worker processes (vidai/worker_training.py) - Add self-contained inter-process communication using TCP sockets - Implement configuration system for backend selection (CUDA/ROCm) - Add GPLv3 licensing and copyright notices - Create comprehensive documentation and build scripts - Update main launcher to manage all processes This architecture provides better scalability, allows independent GPU backend selection, and maintains clean separation of concerns.
-
Stefy Lanza (nextime / spora ) authored
-
Stefy Lanza (nextime / spora ) authored
- Add socket-based inter-process communication - Implement backend process for request routing - Create separate web interface process - Add CUDA/ROCm worker processes for analysis and training - Add configuration system for backend selection - Update build scripts for multi-component executables - Add startup scripts for process orchestration - Include GPLv3 license and copyright notices - Add comprehensive documentation and README - Create CHANGELOG for version tracking
-
Stefy Lanza (nextime / spora ) authored
- Move db_type handling to environment variables to avoid circular dependency - get_db_config() now uses environment variables for database type - get_config() handles db_type specially to prevent recursion - Fixes ImportError when running vidai.py
-
Stefy Lanza (nextime / spora ) authored
- Create executable launcher script for non-PyInstaller builds - Automatically detects and uses appropriate virtual environments - Launches backend, web interface, and workers with correct CUDA/ROCm environments - Reads configuration to determine backend selection - Provides process management and cleanup on exit
-