Android app for filesharing via Http UPLoads
Find a file
2025-10-06 18:00:44 +02:00
.github/workflows gh plumbering: release build pipeline 2025-02-17 19:41:26 +01:00
.idea gh plumbering: release build pipeline 2025-02-17 19:41:26 +01:00
app add "ingoreCertificate" setting 2025-10-06 18:00:44 +02:00
gradle add build.gradle.kts and friends 2024-10-17 19:47:37 +02:00
images_src add image stuff 2017-03-26 04:48:21 +02:00
.gitignore update stuff to work with the SDK version required by the play store 2024-03-05 01:59:16 +01:00
build.gradle.kts add build.gradle.kts and friends 2024-10-17 19:47:37 +02:00
gradle.properties gh plumbering: release build pipeline 2025-02-17 19:41:26 +01:00
gradlew update stuff to work with the SDK version required by the play store 2024-03-05 01:59:16 +01:00
gradlew.bat update stuff to work with the SDK version required by the play store 2024-03-05 01:59:16 +01:00
LICENSE un-delete licence,privacy policy, readme 2024-03-06 09:43:11 +01:00
PRIVACY un-delete licence,privacy policy, readme 2024-03-06 09:43:11 +01:00
README.md rm mention of play store 2025-02-22 17:12:17 +01:00
settings.gradle.kts add build.gradle.kts and friends 2024-10-17 19:47:37 +02:00

Hupl

Short for Http UPLoad (imaginative, I know)

Simple Android app, that lets you upload files to servers through the share menu. You can configure any servers you want, but also feel free to use any of the preconfigured ones.

Should work with most simple filehosts, that take files via POST. At the very least, it works with ones based on these:

Support for more complicated http-based uploads, (S)FTP, etc. might follow in future versions.

Other features:

  • Keeps a history of files you upload and resulting links
  • Can optionally resize/compress image files before uploading

Binaries are available as releases on Github: https://github.com/Rouji/Hupl/releases

Uploaders

Uploader configs are stored, and can be imported, as JSON. Importing works by either pasting an URL in the appropriate menu, or clicking a web link that points to a .json or .hupl file.

Http Uploader Json Example

HTTP is currently the only supported uploader type. Here's an example of what a config for that might look like:

{
  name: "example uploader",                     //(optional)human-readable name; pulled from the filename, if not given here 
  type: "http",                                 //type of uploader
  targetUrl: "https://example.com/upload.php",  //url to POST to
  fileParam: "myfile",                          //parameter containing your filename
  responseRegex: "<a href=\"(.*)\">",           //(optional)regex to filter the server's response (always uses the first capturing group)
  authUser: "hoge",                             //(optional)http basic auth user
  authPass: "secret"                            //(optional)http basic auth password
}

Default Uploaders

A few preconfigured uploaders get baked into the .apk and imported at first launch of the app. The files for this are in app/src/main/assets/uploaders.

Building

This repo contains an Android Studio (v2) project. You should be able to open it with that and just run/compile from there.

Known Issues

Closing the app (e.g. by swiping the main activity off the recent apps screen) sometimes clears notifications of finished uploads. (Though it shouldn't ever cancel ongoing uploads.) This is "working as intended", and I'm not aware of any workaround for this on Android.
If this ever happens to you, the uploads will still be listed in the history.