Skip to content

SpotiFLAC lets you download Spotify tracks in true FLAC quality using sources like Tidal and Deezer — no account required.

Notifications You must be signed in to change notification settings

weedo078/SpotiFLAC

 
 

Repository files navigation

GitHub All Releases

SpotiFLAC

SpotiFLAC allows you to download Spotify tracks in true FLAC format through services like Tidal & Deezer.

Screenshots

image

image

image

image

Lossless Audio Check

image

image

Download FLAC Checker


Development

Project Structure

SpotiFLAC follows a modular architecture for maintainability and testability:

spotiflac/
├── __init__.py              # Package initialization
├── __main__.py              # CLI entry point (python -m spotiflac.__main__)
├── controllers/             # Business logic controllers
│   └── download_controller.py
├── gui/                     # GUI components
│   ├── dashboard.py
│   ├── process.py
│   ├── settings.py
│   ├── theme.py
│   ├── about.py
│   └── theme_manager.py     # Theme management
├── models/                  # Data models
│   └── track.py
├── services/                # Service layer
│   ├── spotify.py           # Spotify metadata
│   ├── tidal.py             # Tidal integration
│   ├── deezer.py            # Deezer integration
│   ├── settings.py          # Settings persistence
│   └── theming.py           # Theme utilities
└── workers/                 # Background workers
    ├── metadata.py
    ├── download.py
    └── secret.py

Key Features

  • Modular Architecture: Clear separation of GUI, business logic, and services
  • Type Safety: Full type annotations with mypy compatibility
  • Testability: Dependency injection for easy mocking
  • Settings Management: Type-safe settings with SettingsRepository
  • Theme System: Centralized theme management with ThemeManager
  • Worker Threads: Non-blocking downloads and metadata fetching

License

See LICENSE file for details.

About

SpotiFLAC lets you download Spotify tracks in true FLAC quality using sources like Tidal and Deezer — no account required.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.7%
  • Dockerfile 0.3%