Skip to content

marksuth/indigenous-android

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
app
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Indigenous for Android

An open social app with support for IndieWeb, Mastodon, Pleroma and Pixelfed.

Get it on Google Play Get it on F-Droid

More information at https://indieweb.org/Indigenous and https://indiepass.marksuth.dev

iOS: https://github.com/marksuth/indigenous-ios
Desktop: https://github.com/marksuth/indigenous-desktop

Features

  • Login with multiple domains and account types:
    • IndieWeb: discover IndieAuth, micropub, microsub and media endpoints. The micropub and microsub endpoints are optional, but at least one should be available. Token revoke happens when deleting an account. PKCE support for additional security when authenticating.
    • Fediverse: Mastodon, Pleroma and Pixelfed.
  • Comes with a built-in anonymous user which allows reading channels and posts coming from https://mastodon.social, https://pleroma.site or https://pixelfed.social. Posts can be send to a custom endpoint and token.
  • Posting
    • post types: article, note, reply, repost, like, bookmark, event, issue, rsvp, geocache, read, checkin, trip and venue (h-card).
    • add multiple images, videos, audio, tags, toggle syndication targets
    • share location on note, article, event, checkin, geocache and venue
    • send image to media endpoint
    • apply filters, add text and emojis on images
    • Toggle post-status (published vs draft)
    • Toggle sensitivity and visibility
    • Save as local draft to finish later. This also includes coordinates, so you can finish later even when you are on a different location then. Place suggestions are also supported.
    • Allow autocomplete of usernames in body text
    • Manage contacts (add/delete/update)
    • Query, update and delete: get a list of posts and update basic properties (experimental)
  • Reader
    • read channels, with pull to refresh
    • read items per channel, with pull to refresh, response actions per item
    • reply, like, repost, rsvp, bookmark, upload or add feed directly
    • listen to audio or watch video if available
    • view fullscreen images, zoom and pinch
    • Manage channels and feeds
    • Offline reading, optional via settings
    • Main content becomes selectable after long click
    • Browse by tag for Mastodon
  • Share intents: receive text or images to directly share

Checkin, Geocache and Venue are experimental and pass on all information into a Geo URI in the geo property, e.g.

geo:51.5258325,-0.1359825,0.0;name=london;url=https://hwclondon.co.uk

Some features are not available for Mastodon and Pixelfed, because they either don't make sense or the API doesn't support it yet. Pull requests welcome of course! To check authorizations of this app on your accounts, go to following url on your instance:

Mastodon: oauth/authorized_applications Pixelfed: settings/applications Pleroma: not found yet (info welcome!)

Screenshot

Known issues

Authentication loop

When authenticating for the first time, you might see a message "Authentication successul" but then returning to the Sign in screen. While the account has been created, the default was not set. In this case, the sign in screen will allow you to select the account.

See #84
This happens sometimes, but not always.

Known syndication targets not parsed

See #152

Authenticating

  • Some browsers (e.g. the default browser on LineageOS), won't allow Indigenous to listen to the callback to verify the authorization code. Install a browser like Firefox (any flavor) so you can login.
  • When your account requires 2FA, put the apps in split screen mode, see #210

Notifications don't arrive after the app is closed

This is due to new default settings in the latest Android versions. Try turning of battery optimization for the Indigenous app and it should work fine.

Translations

Thanks to everyone who has contributed to the translation project so far. The translation project will restart in 2022.

API

If you'd like to add a new account type, checkout API.md for a quick guide.

Credits

This app uses following external libraries:

Other IndieWeb and Fediverse clients

Issues

If you found a bug, open a request. Feature requests might be closed as I love having a clean queue. Pull requests are welcome though!

Things I'd love to explore one day:

  • allow posting to multiple accounts at once
  • detail views for Fediverse
  • cleaner account names (am.renameAccount())
  • better UI/UX for managing feeds
  • cleanup the various ways of requests

Sponsors

I would like to extend many thanks to the following sponsors for funding development.

About

An open social app with support for IndieWeb, Mastodon, Pleroma and Pixelfed.

Topics

Resources

License

Stars

Watchers

Forks

Languages