Seeker is a free Soulseek client for Android, and the protocol work is done for it
Android client for the Soulseek peer-to-peer network
At a glance
- What is it?
- jackBonadies/SeekerAndroid is a GPL-3.0 C# Android client for the Soulseek peer-to-peer network, covering downloads, search with wishlists and filters, sharing, messages, chatrooms, port forwarding and privileges. It borrows a modified Soulseek.NET for the protocol and the unofficial protocol documentation published by the Nicotine+ developers, which keeps the client small and the maintenance cost low.
- Who is it for?
- Adopt Seeker if you want a Soulseek client on Android and you would rather not write or maintain a protocol implementation, since the project reuses a modified Soulseek.NET and publishes through Google Play and IzzyOnDroid at no cost and with no advertising.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 4 days ago.
- What is it written in?
- Mainly C#, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A full feature list for a peer-to-peer music network
Seeker is described simply as a Soulseek client for Android written in C#, and the topic tags place it on Xamarin.Android. The feature list is what makes it more than a download screen. It supports downloading, searching including a wishlist and filters, sharing, messages, chatrooms, port forwarding, user info and privileges, with an and more on the end. Those are the parts of a Soulseek session that a long time user would recognise: the wishlist is a standing search that runs for you, the filters decide what results come back, and sharing is how you are useful to the rest of the network rather than only consuming from it. The README also states the project's position on money clearly. The app will always be completely free and open source software, with no ads, no premium versions and no paid features, and the Soulseek server itself, on which the whole thing depends, relies on donations.
The protocol lives in a modified Soulseek.NET
Here is the decision that shapes the repository. The app does not implement the Soulseek protocol itself. It uses a modified version of the Soulseek.NET library for communicating with the Soulseek server and with network peers, and it also references the unofficial Soulseek Protocol Documentation, which the README credits as implemented by the developers of the Nicotine+ client. Put together, that is a two part strategy. The wire format comes from a community maintained .NET library, and the specification comes from the client community that had to reverse engineer the protocol in the first place. The consequence for an adopter is that most of the hard, protocol level work is inherited, and the work that remains in this repository is the Android application itself: the interface, the search and download flows, the background behaviour and the packaging. It also means a fork or a rebuild starts from a much higher baseline than a from-scratch client would.
Port forwarding is in the feature list, and it is the real constraint
Port forwarding appears in the README's feature list, and it is worth pausing on that, because it is the feature that decides whether a peer-to-peer client is usable on a typical home connection. A client that cannot be reached from the outside is a client that downloads from others and cannot serve them, and on a network behind carrier grade NAT you may not be able to open a port at all. Seeker exposing port forwarding means the app tries to arrange an inbound path, and that in turn depends on the router, the network operator and the client on the other end. The screenshots named in the repository give a sense of the shape of the app, with home, search, a download dialog, downloads, uploads and browse views, but the README does not document the port forwarding behaviour in detail, so anyone evaluating it should test that path on their own network before committing to it.
Distribution through Google Play and IzzyOnDroid, with Crowdin translations
The app is published through the Google Play store, which the README calls the official release channel, and there is also an IzzyOnDroid badge pointing at a F-Droid style repository listing, so an sideloaded APK is available for people who prefer not to use the Play store. The store metadata lives in the repository under fastlane, with the icon at fastlane/metadata/android/en-US/images and the screenshots in the same tree, one file per screen: 01_home, 02_search, 03_download_dialog, 04_downloads, 05_uploads and 06_browse. Translations are handled through a crowdin.yml configuration and the Crowdin project the README links, so translating the interface is a contribution rather than a patch. One detail worth noticing when you look at the store links: the application identifier in the Play and IzzyOnDroid URLs is a placeholder looking package name in the com.companyname form, so check the actual identifier in the listing you install from.
Three test projects tell you how this app is built
The top level of the repository shows a project with a real engineering setup rather than a single application folder. There is Seeker.sln as the solution, a Seeker directory for the app itself, a Common directory for shared code, and then three test projects with distinct names: UnitTestCommon, InstrumentationTests and MaestroTests. That last pair is the interesting combination. Instrumentation tests exercise the app on a device or emulator, while the MaestroTests project points at user interface level testing alongside them. Alongside them sit Directory.Build.props for shared build properties and global.json for the pinned.NET SDK, plus a Misc directory, an apx directory, DEVELOPMENT.md for contributor documentation and a crowdin.yml at the root. The presence of three separate test layers is the clearest signal of how the project expects changes to be verified.
GPL-3.0-only with additional terms, which is not plain GPL-3.0
The licensing line is precise and worth reading in full. Seeker is licensed under the GNU General Public License v3.0 only, spelled GPL-3.0-only, with additional terms pursuant to Section 7 of the GPLv3, and the LICENSE file is at the repository root. Section 7 is the clause that allows a licence to add extra conditions to a GPL grant, and it is why the licence field in the repository metadata could not simply be called MIT or GPL-3.0. If you intend to redistribute a build, to bundle the code into another product, or to run a modified version as a service, those additional terms are the part you need to read, and this is not legal advice. The strict only qualifier also means there is no or later version grant, so a fork cannot simply be relicensed under a newer GPL revision. On the release side, the project is clearly active, with v3.11.0 on 2026-09-25, v3.11.1 on 2026-10-08 and v3.11.2 on 2026-10-11, and the last push was on 2026-10-19.
Another client, or the same client with a different base
The alternative to Seeker is another Soulseek client, and the README points at one of them by name, crediting the Nicotine+ developers as the authors of the unofficial protocol documentation this project references. The difference in approach between the two is instructive even before any feature comparison. A client that implements and documents the protocol itself owns that work, including the documentation that other implementations then follow, and it has to keep up with the network as it changes. Seeker takes the opposite route, building on a modified Soulseek.NET for the protocol and using that documentation as the reference, which means the client can spend its effort on the mobile experience instead of on wire format compatibility. For a user, both approaches produce an application that joins the same network. For someone evaluating the codebase, the split tells you where the risk sits: in the modified library and its version, rather than in the protocol code.
Editorial conclusion
Adopt Seeker if you want a Soulseek client on Android and you would rather not write or maintain a protocol implementation, since the project reuses a modified Soulseek.NET and publishes through Google Play and IzzyOnDroid at no cost and with no advertising. Do not adopt it if you need a desktop client or if you cannot accept a GPL-3.0-only licence with additional terms under Section 7, and do not assume the Android build covers the same ground as a full desktop client, since the feature list is mobile sized. Before you install, read the additional terms in the LICENSE file, check that your network can handle the port forwarding the client needs, and confirm with the project which modified library version your build will carry.
Frequently asked questions
What is Seeker and what can it do?
Seeker is a Soulseek client for Android written in C# on Xamarin.Android. The README lists downloading, searching including wishlist and filters, sharing, messages, chatrooms, port forwarding, user info and privileges.
How does Seeker communicate with the Soulseek network?
It uses a modified version of the Soulseek.NET library for communicating with the Soulseek server and network peers, and it also references the unofficial Soulseek Protocol Documentation that the README credits to the developers of the Nicotine+ client.
Does Seeker cost anything and does it contain ads?
No. The README states that the app will always be completely free and open source software, with no ads, no premium versions and no paid features. The Soulseek server itself relies on donations, which the README links.
Where can I download Seeker for Android?
The official release channel is the Google Play store, and the README also links an IzzyOnDroid listing for sideloading. The store metadata and screenshots are kept in the repository under fastlane, and translations are managed through Crowdin.
What licence is Seeker released under?
Seeker is licensed under the GNU General Public License v3.0 only, GPL-3.0-only, with additional terms pursuant to Section 7 of the GPLv3. The full text including those additional terms is in the LICENSE file at the repository root.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/jackbonadies-seekerandroid)Was this useful?