Inspiration

What it does

How we built itFilo is a Flutter remote media browser and player for WebDAV, SMB, OpenList, FTP, SFTP, and Emby servers. The app uses a Bloc-style feature-first structure, flutter_bloc for state, go_router for navigation, shared protocol providers for cross-platform remote access, and fvp through Flutter's video_player interface for playback.

Highlights Save multiple server profiles and switch between them in one app shell Browse remote directories with sorting, filtering, selection, and capability-aware actions Preview images and open playable media from remote providers Browse Emby media libraries, detail pages, people pages, and cache settings Play media through direct URLs or a local/native proxy when required Queue uploads and downloads on native platforms through the tasks flow Persist appearance, player preferences, profiles, credentials, and entitlement cache across launches Support Chinese and English UI plus theme, app icon customization, and Pro entitlement integration Protocol Support Native builds currently expose:

WebDAV SMB OpenList FTP SFTP Emby Web builds currently expose:

WebDAV OpenList Emby On web, SMB/FTP/SFTP remain in the protocol enum but resolve to unsupported provider stubs.

Built With

Share this project:

Updates