Open-source project
ultranity/Pix-EzViewer avatar
ultranity/Pix-EzViewer

Pix-EzViewer: a third-party Pixiv client for Android with the rough edges filed off

一个支持免代理直连+多种额外特性功能优化的第三方 Pixiv android 客户端 | A third-party Pixiv Android client with modern design and many other enhancements

1,278 stars41 forksKotlinMIT

At a glance

What is it?
Pix-EzViewer is a Pixiv client for Android written in Kotlin with Jetpack, and what distinguishes it from the stock application is the long list of conveniences, content filtering, batch downloading, one click collection, multiple account switching, an integrated reverse image search, and a direct connection path that avoids the usual proxy. It suits a heavy Pixiv user on Android, and it is a third party client that reaches a service it does not own.
Who is it for?
Adopt Pix-EzViewer if you are a heavy Pixiv user on Android who wants filtering, batch downloads, multiple accounts and reverse image search in one client, because those are the features the project is built around. Do not adopt it if you need the official application's guarantees, since a third party client reaches a service it does not own and will break when that service changes.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 12 days ago.
What is it written in?
Mainly Kotlin, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 21, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What the project is

Pix-EzViewer is a third-party Pixiv Android client, written in Kotlin with Jetpack, and the readme describes it as supporting direct connection without a proxy along with a range of additional feature optimisations. The minimum supported version is Android 5.0.

The category matters. This is not a viewer for the public parts of Pixiv, it is a replacement for the official application, and it is written by people who use Pixiv heavily and found the official client wanting in specific ways.

The readme is written in Chinese with an English summary, and it points to a release notes and to-do document in the repository for the change history. It also says that feedback is currently best submitted as an issue on this repository, and there is a note that the project is maintained on a particular fork of the original source, with a request that anyone whose work draws on the direct connection implementation credits the original author.

The project is MIT licensed, the site is at the ultranity GitHub pages address, and the last push to the repository was on 2026-10-11, with the most recent releases being 2.3.0 and 2.2.6 on the same day in September and 2.2.5 in June.

The features, and what they are for

The feature list is long and it is the product description, so it is worth sorting it by what problem each group solves.

The interface group is about making it yours. There is a switch between Material 2 and Material 3, a night mode and custom themes, a customisable interface with layouts that adapt to portrait and landscape, and a choice between a top and a bottom navigation bar. There are preview screens for the home page, the filter screen, search, the detail view in dark mode, the interface configuration and the landscape layouts, which tells you the customisation is a first class feature rather than an afterthought.

The content group is about handling a large library. There is content filtering that hides images you have already favourited or saved, batch download, history and download history, a one click collection mode that does download, favourite and follow in one action, and separate download folders.

The search group is stronger than the official client's. There is enhanced search, image search through a reverse image lookup service, and a local feature that detects the picture identifier of images on your device and renames them in bulk, which is aimed at people with a downloaded library in a mess.

Then the smaller ones that show the scope of a project built by users for users. There is an aria download acceleration option, GIF playback and saving, Google Translate integration that requires the translation app to be installed, viewing, adding and replying to comments, Pixiv special features, an option to show content normally hidden by the official client's age setting that has to be enabled on the official site, automatic private favourites, and custom file naming that can include the tags.

The theme is consistent, though. Every one of these exists because the official application does not do it.

The direct connection, and how it is done

The feature that distinguishes this client in the Chinese market is the ability to reach Pixiv without a proxy, and the readme explains the technique.

The Java side achieves the bypass of SNI inspection, which is the blocking of the connection, by modifying the SSLSocket of the OkHttp library. The implementation is in the networks package of the application, and the readme asks that if the direct connection code inspires you, you credit the author of that piece in your project or program.

That request is worth noting because it tells you the direct connection work is a contribution from another developer, credited in the readme and traceable to a specific directory in the source. The mainline project is the wrapper around it.

There is a related table of third party rule data, and the row explains the arrangement. The WebView bypass rules, in the assets bypass directory, come from another project and are distributed under the Boost Software License 1.0, with the full statement in a notice file, while the surrounding Pix-EzViewer source code remains under the project's MIT licence. The table also notes that no site favicons are bundled.

So the licensing picture is two licences for two components, with the third party data clearly attributed, which is the right way to do it and rare enough to be worth pointing out.

Two download channels, and the package name trap

There are two ways to install, and the readme includes a table whose point is the difference between them.

The GitHub Release is the full APK, downloaded from the releases page, and the note says to use it when there is no Play, or when sharing it with someone else.

F-droid is the other channel, and the note there is the one to read carefully, because the package name differs from the GitHub release build. They are separate applications with separate identities, so installing one after the other leaves both on the device, and any file the two share is a different file.

That is the kind of detail that normally goes in a support article rather than in a readme, and here it is in the download table.

The readme also carries a downloads badge, which is a rough measure of how widely the GitHub route is used, and the release badge points at the latest release page.

For the rest of the project, the build is the usual Android arrangement with a Gradle wrapper, a Kotlin build script and a settings file, plus the release automation in the fastlane directory, the donation page assets, a scripts directory, a help directory that holds the frequently asked questions and a preview directory with the screenshots, and two library directories, one of them a subproject that is included as a submodule, which is the usual arrangement for a forked or borrowed component.

The rest of the ecosystem, and where feedback goes

The readme points at other clients for other platforms, which is a useful map of what exists for people who want a Pixiv client on a device that is not Android.

For Android home screens there is a Pixiv art widget for the Muzei wallpaper app, developed by someone else, described as a good choice if you use Muzei. For a Windows Store style application there is a UWP client, and for a desktop application on Windows there is a WPF client. There is also a list of reference links at the bottom of the readme, which is the kind of thing that makes a project a hub rather than an island.

The feedback section is specific about the process. For ordinary users, if you have any question while using it, the readme asks you to check the frequently asked questions page first for a quick self check, and only then to reach out by email, through GitHub issues, or in the chat group. There is a QQ group and a Telegram group, and the number for the former is given.

And for contributors, the readme asks directly that if you are able to and willing to contribute code, do not hesitate to open a pull request, with a pull request welcome badge next to it.

The funding section is split by region, with a donation page in the repository for users in China and a Ko-fi link for users elsewhere, which is a detail that tells you about the project's geography.

Editorial conclusion

Adopt Pix-EzViewer if you are a heavy Pixiv user on Android who wants filtering, batch downloads, multiple accounts and reverse image search in one client, because those are the features the project is built around. Do not adopt it if you need the official application's guarantees, since a third party client reaches a service it does not own and will break when that service changes. Before you install, note that the GitHub release build and the F-droid build use different package names, so installing one over the other leaves two copies on your device, and read the help pages before filing an issue, since the project asks users to check the frequently asked questions first.

Frequently asked questions

What is Pix-EzViewer?

It is a third-party Pixiv client for Android, written in Kotlin with Jetpack, requiring Android 5.0 or later. It provides content filtering, batch download, a one click collection mode, multiple account switching, an integrated reverse image search, GIF support and a direct connection to Pixiv that works without a proxy.

Where can I download Pix-EzViewer, and is there a catch?

The full APK is on the GitHub releases page, and there is an F-droid package. The readme notes that the F-droid distribution uses a different package name from the GitHub release build, so installing one over the other leaves both applications installed.

How does Pix-EzViewer connect to Pixiv without a proxy?

On the Java side it bypasses SNI inspection, the blocking of the connection, by modifying the SSLSocket of the OkHttp library, with the implementation in the networks package of the application. The readme asks that anyone whose work draws on that implementation credits the original author.

What licence applies to the Pix-EzViewer bypass rules?

The WebView bypass rule data comes from another project and is distributed under the Boost Software License 1.0, with the full statement in a notice file, while the surrounding Pix-EzViewer source code remains under the project MIT licence. The readme also states that no site favicons are bundled.

Official sources

  1. License: MIT
  2. Project website
  3. README
  4. Releases
  5. ultranity/Pix-EzViewer on GitHub
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.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/ultranity-pix-ezviewer.svg)](https://hysenlabs.com/projects/ultranity-pix-ezviewer)

Was this useful?