The ecosystem around the core

Built to connect.
Open by default.

SpotiFLAC stays deliberately small: it resolves metadata, while extensions bring the services and workflows you choose to run.

no bundled providers JavaScript + Python bring your own registry
Related projects

Made by people, connected by format

These projects share ideas, formats or community context with SpotiFLAC. They are independent and are not endorsements of any service or extension.

DESK

SpotiFLAC Desktop

A standalone desktop experience for Windows, macOS and Linux, maintained as a separate project.

Visit project →
MOB

SpotiFLAC Mobile

The Android and iOS project whose JavaScript extension format is also used by this module.

Visit project →
DEV

Extension authors

Build a provider for your own workflow, publish it through a registry you control, and let users review it before installing.

Read the guide →
A clear boundary

The core does not pick sides.

No provider, registry or third-party service is configured by default. The maintainer does not review, host or control extensions that users install.

That keeps the application useful for many workflows while leaving source selection, credentials and compliance in the hands of the person running it.

# choose a registry you trust
export SPOTIFLAC_REGISTRIES="https://example.com/registry.json"

# install only what you choose
spotiflac URL ./out --service ext:your-extension
Join the network

Bring something useful

There is no application process and no official provider list. Share a focused project, document its requirements, and give users enough information to make an informed choice.

Publishing an extension?

Start with the Writing a Python Extension guide (or the JS extension notes), then publish your own registry URL. Use the ext: prefix when documenting how users should select your module.