Sakura Connect is a beautiful, cross-platform Flutter application that provides a modern graphical interface for yt-dlp, the popular YouTube video downloader. Built with content creators and streamers in mind, it offers professional-grade tools to download, manage, and organize your video content library.
- ๐ฅ Video Download: Download YouTube videos and playlists in various formats
- ๐ต Audio Extraction: Audio-only download support for music and podcasts
- ๐ Subtitle Support: Download available subtitles in multiple languages
- โก Queue Management: Concurrent downloads with intelligent queue system
- ๐จ Beautiful UI: Clean, intuitive interface with modern design
- ๐ Multi-language: Full internationalization support (English, Japanese, Chinese)
- ๐ฅ๏ธ Cross-platform: Works on Windows, macOS, Linux, iOS, and Android
- โ๏ธ Quality Control: Multiple format and quality options
- ๐ Smart Organization: Automatic file management and organization
- Flutter SDK 3.32.0 or higher
- Dart SDK 3.8.0 or higher
- Platform-specific development tools (Android Studio, Xcode, etc.)
-
Clone the repository
git clone https://github.com/FuyukiSakura/sakura-connect.git cd sakura-connect -
Navigate to the app directory
cd app -
Install dependencies
flutter pub get
-
Generate localization files
flutter gen-l10n
-
Run the application
flutter run
- flutter - UI framework
- flutter_localizations - Internationalization support
- provider ^6.1.2 - State management
- shared_preferences ^2.2.2 - Local data persistence
- path_provider ^2.1.1 - File system path access
- http ^1.1.0 - HTTP client for API calls
- google_fonts ^6.3.0 - Custom typography
- cupertino_icons ^1.0.8 - iOS-style icons
- file_picker ^10.1.1 - File selection dialogs
- permission_handler ^12.0.1 - System permissions
- url_launcher ^6.2.2 - External URL handling
- intl - Date/time formatting and localization utilities
- flutter_test - Testing framework
- flutter_lints ^5.0.0 - Linting rules
- flutter_launcher_icons ^0.14.3 - App icon generation
app/
โโโ lib/
โ โโโ components/ # Reusable UI components
โ โโโ l10n/ # Localization files
โ โโโ pages/ # Application screens
โ โ โโโ downloader/ # Download-specific components
โ โโโ providers/ # State management
โ โโโ services/ # Business logic and API services
โ โโโ theme/ # App theming and styling
โโโ assets/ # Static assets (images, fonts)
โโโ platforms/ # Platform-specific configurations
โโโ android/
โโโ ios/
โโโ linux/
โโโ macos/
โโโ web/
โโโ windows/
- YtdlpService: Core yt-dlp integration and management
- DownloadQueueService: Queue management and concurrent downloads
- FileManagerService: File system operations and organization
- PreferencesService: User settings and preferences
- EmbeddedYtdlpService: Embedded yt-dlp binary management
Sakura Connect supports multiple languages with full localization:
- English (en) - Default language
- Japanese (ja) - ๆฅๆฌ่ชใตใใผใ
- Chinese (zh) - ไธญๆๆฏๆ
- Create a new ARB file in
app/lib/l10n/app_[locale].arb - Add translations for all keys
- Run
flutter gen-l10nto generate localization files - Update the supported locales in
LocaleProvider
The application features a modern, clean design with:
- Sakura-inspired color palette with pink and purple accents
- Responsive layout that adapts to different screen sizes
- Material Design 3 components and principles
- Custom typography using Google Fonts
- Consistent spacing and visual hierarchy
- Dark/light theme support (planned)
The app automatically manages yt-dlp installation and updates. No additional configuration is required for basic usage.
- Download paths and organization
- Concurrent download limits
- Quality preferences
- Language selection
- Theme preferences
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
FuyukiSakura (ๅฌ้ชๆก)
- ๐ GitHub: @FuyukiSakura
- ๐ฆ Twitter/X: @FuyukiSakura
- ๐บ YouTube: @FuyukiSakura
- ๐ฎ Twitch: FuyukiSakura
- yt-dlp - The powerful YouTube downloader that powers this application
- Flutter Team - For the amazing cross-platform framework
- Community Contributors - For bug reports, feature requests, and contributions
- โ Core download functionality
- โ Multi-language support
- โ Cross-platform compatibility
- โ Queue management system
- ๐ Advanced filtering options (in progress)
- ๐ Dark theme support (planned)
- ๐ Playlist management (planned)
- ๐ Download history and analytics (planned)
