I'm a massive user of IRC, and I also frequently communicate on some Discord servers that doesn't allow media uploading.
For that reason, I often need to host pictures online, and I generally prefer to use a tracker-free, ad-free, account-free tool.
For that purpose, I discovered a service a friend of mine made, called Pix (I'll refer to it as "Pix.watch" in this article).
The service is very simple, works wonderfully nicely and fits every of my needs!
Still, when on mobile, going to the website is bothersome, as I have to load its entirety (usually over slow Internet speed) and, while it's kept decently lightweight, it's still quite annoying sometimes. Moreover, the biggest drawback with using the website from my phone is that I can't directly upload an image to Pix from within the gallery or some other app that lets me share media.
For that reason, I decided to use my development skills for making something useful, a.k.a an Android client for Pix.watch.
Pix.watch is a secure, efficient and very basic image hosting server that doesn't require anything from the client, while it adds a few utilities, like an integrated image resizer.
The code for the page is as simple !
Still, using it on mobile is a bit impractical, so I wanted to find another solution.
This solution is PixDroid, an app I decided to build with lightness, speed, and privacy in mind.
It's my first Android project, so I discovered the entirety of the Android ecosystem.
As for every project, simplicity is the core, so I made a very basic layout in order to have something easy to work with and use.
The app basically have 2 features:
- List last shares
You can either share from the app's home screen or from everywhere giving a "Share" action on an image, like in your Gallery app.
The upload details window, accessible from the upload success notification, will let you directly send this newly shared text to anyone you want, open it in your favourite browser or simply copy the direct link.
The last shares list gives you every share you made (and lets you clear it with a simple button press), and, on click on any of those shares, gives you the same options as the "upload details window".
# But why a private distribution channel ?
The main concern is about privacy.
Imgur and other "big" services have little to no transparency around how data is handled, what's done with it, and more (even if it may come to some changes in a close future thanks to the GDRP).
Also, they are usually posting uploaded images to public galleries or regularly removing "expired" images.
That's definitely not what we want here.
The second concern is about trust.
We can access, read, audit, test, etc., the source-code of Pix.watch without any barrier due to its openness.
IMHO, it's a huge advantage when searching for to-be-secure private distribution channels.
# Future plans
I plan to have a few more features on the application:
- A nicer design, while keeping the minimal aspect in mind.
- An image preview on the upload details.