| 
									
										
										
										
											2025-07-13 14:01:29 +03:00
										 |  |  | pluginManagement { | 
					
						
							|  |  |  |     val flutterSdkPath = run { | 
					
						
							|  |  |  |         val properties = java.util.Properties() | 
					
						
							| 
									
										
										
										
											2025-10-02 11:58:59 +00:00
										 |  |  |         val localPropertiesFile = file("local.properties") | 
					
						
							|  |  |  |         if (localPropertiesFile.exists()) { | 
					
						
							|  |  |  |             localPropertiesFile.inputStream().use { properties.load(it) } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |         // Try to get from local.properties first, then from environment variable | 
					
						
							| 
									
										
										
										
											2025-07-13 14:01:29 +03:00
										 |  |  |         val flutterSdkPath = properties.getProperty("flutter.sdk") | 
					
						
							| 
									
										
										
										
											2025-10-02 11:58:59 +00:00
										 |  |  |             ?: System.getenv("FLUTTER_ROOT") | 
					
						
							|  |  |  |             ?: System.getenv("FLUTTER_SDK") | 
					
						
							|  |  |  |             ?: "/opt/flutter" // Default path in CI | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2025-07-13 14:01:29 +03:00
										 |  |  |         flutterSdkPath | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     repositories { | 
					
						
							|  |  |  |         google() | 
					
						
							|  |  |  |         mavenCentral() | 
					
						
							|  |  |  |         gradlePluginPortal() | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | plugins { | 
					
						
							|  |  |  |     id("dev.flutter.flutter-plugin-loader") version "1.0.0" | 
					
						
							|  |  |  |     id("com.android.application") version "8.7.3" apply false | 
					
						
							| 
									
										
											![factory-droid[bot]](/assets/img/avatar_default.png)  
											
												feat: Add TorrentEngine library and new API client
- Created complete TorrentEngine library module with LibTorrent4j
  - Full torrent management (add, pause, resume, remove)
  - Magnet link metadata extraction
  - File priority management (even during download)
  - Foreground service with persistent notification
  - Room database for state persistence
  - Reactive Flow API for UI updates
- Integrated TorrentEngine with MainActivity via MethodChannel
  - addTorrent, getTorrents, pauseTorrent, resumeTorrent, removeTorrent
  - setFilePriority for dynamic file selection
  - Full JSON serialization for Flutter communication
- Created new NeoMoviesApiClient for Go-based backend
  - Email verification flow (register, verify, resendCode)
  - Google OAuth support
  - Torrent search via RedAPI
  - Multiple player support (Alloha, Lumex, Vibix)
  - Enhanced reactions system (likes/dislikes)
  - All movies/TV shows endpoints
- Updated dependencies and build configuration
  - Java 17 compatibility
  - Updated Kotlin coroutines to 1.9.0
  - Fixed build_runner version conflict
  - Added torrentengine module to settings.gradle.kts
- Added comprehensive documentation
  - TorrentEngine README with usage examples
  - DEVELOPMENT_SUMMARY with full implementation details
  - ProGuard rules for library
This is a complete rewrite of torrent functionality as a reusable library.
											
										 
											2025-10-02 10:56:22 +00:00
										 |  |  |     id("com.android.library") version "8.7.3" apply false | 
					
						
							| 
									
										
										
										
											2025-10-02 12:27:20 +00:00
										 |  |  |     id("org.jetbrains.kotlin.android") version "1.9.24" apply false | 
					
						
							| 
									
										
										
										
											2025-07-13 14:01:29 +03:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | include(":app") | 
					
						
							| 
									
										
											![factory-droid[bot]](/assets/img/avatar_default.png)  
											
												feat: Add TorrentEngine library and new API client
- Created complete TorrentEngine library module with LibTorrent4j
  - Full torrent management (add, pause, resume, remove)
  - Magnet link metadata extraction
  - File priority management (even during download)
  - Foreground service with persistent notification
  - Room database for state persistence
  - Reactive Flow API for UI updates
- Integrated TorrentEngine with MainActivity via MethodChannel
  - addTorrent, getTorrents, pauseTorrent, resumeTorrent, removeTorrent
  - setFilePriority for dynamic file selection
  - Full JSON serialization for Flutter communication
- Created new NeoMoviesApiClient for Go-based backend
  - Email verification flow (register, verify, resendCode)
  - Google OAuth support
  - Torrent search via RedAPI
  - Multiple player support (Alloha, Lumex, Vibix)
  - Enhanced reactions system (likes/dislikes)
  - All movies/TV shows endpoints
- Updated dependencies and build configuration
  - Java 17 compatibility
  - Updated Kotlin coroutines to 1.9.0
  - Fixed build_runner version conflict
  - Added torrentengine module to settings.gradle.kts
- Added comprehensive documentation
  - TorrentEngine README with usage examples
  - DEVELOPMENT_SUMMARY with full implementation details
  - ProGuard rules for library
This is a complete rewrite of torrent functionality as a reusable library.
											
										 
											2025-10-02 10:56:22 +00:00
										 |  |  | include(":torrentengine") |