Git Product home page Git Product logo

big-fig / fediverse.app Goto Github PK

View Code? Open in Web Editor NEW
140.0 7.0 18.0 25.75 MB

A client for Pleroma and Mastodon instances written using Flutter

Home Page: https://fediapp.com

License: GNU Affero General Public License v3.0

Rich Text Format 0.07% Ruby 0.04% Objective-C 0.01% Dart 99.74% Kotlin 0.01% Swift 0.10% Shell 0.05%
android social ios mastodon flutter fediverse mastodon-client pleroma fediverse-client pleroma-client

fediverse.app's People

Contributors

barrettbreshears avatar esin avatar feld avatar github-actions[bot] avatar mkljczk avatar nonlin-lin-chaos-order-etc-etal avatar weblate avatar xal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

fediverse.app's Issues

Add search on page feature(Chat, Account list, etc)

Add search(actually filter items in list) to next pages:

  • chat
  • any account list
  • conversations/chats list
  • statuses list(not sure)
  • Use API to search if possible(some account list APIs have search arg) or search through items in memory or database

Add OnBoarding & Tutorial

  • It will be good to have OnBoarding to describe Fediverse and Mastodon/Pleroma fundamentals
  • New features after update and all features for new users should be highlighted with hint until first click
  • Propose people to follow for new accounts https://github.com/kensanata/trunk

Pinned posts missing from user profiles

When looking at e.g., my own user profile it should show my pinned posts at the top but they're missing. This is something clients have to implement, but I kind of feel like the server should do it for you... I'll discuss internally about improvements in this area.

Group similar notifications

It's possible to group similar notifications via awesome_notifications library. Currently, they grouped by type(chat, mention, follow, etc) but should be grouped by chat id, thread id, etc

Add timeline display type(media, non-media, etc)

Currently, Fedi has two timeline display variants:

  • media
  • non-media
    It is automatically chosen based on mediaOnly timeline settings.
    Fedi should have settings to choose this manual and add more display variants in the future.

Datetime picker rework

Fedi uses forked(simple hacks for Fedi) version of flutter_datetime_picker without adopting picker to the current locale(12/24 format).
Possible solutions:

  • refactor flutter_datetime_picker fork and publish PR and use the updated library
  • fully rework picker and remove duration_picker dependency
  • unify UI elements with #77

F-Droid release

The app is open source now, but I guess lots of users might not want to install it from Play Store because of FCM and crash reporting stuff. (Iʼm on GrapheneOS so I wonʼt benefit from this stuff) What about publishing an actually free build in F-Droid?

Propose open Fedi when click on links in other apps

Fedi should propose itself when user click on any link(like browsers). add option to disable behavior in settings.
Handling URL clicks API have different limitations and may conflict with deep links, FCM notifications clicks and other things who uses launch URI.

build error

lib/app/database/dao/remote/app_remote_database_dao.dart:109:18: Error: Type 'GeneratedDateTimeColumn' not found.

Investigate link previews

Showing link previews would be really nice which we already have in PleromaFE. I'd put this as a low priority, though.

I'm wondering if we could provide the link preview stuff as a Pleroma specific API extension since we will already do this work on the backend and cache it.

Visibility bugs in reply and conversation

I'm using version 2.7.1 on Android. No matter what visibility the toots are, I can only reply to them in public.

For the conversation (or direct messages) the issue is quite the same. The visibility for a reply to a direct message in conversation can only be private. (If replying not through conversation, again you can only write in public visibility)

Notifications unread logic is strange on Mastodon

Pleroma has 'unread' flag on notification but Mastodon doesn't.
Fedi needs special logic to mark notifications as unread/read. Currently, Fedi marks notifications as read on refresh on Mastodon but it is not very good logic

Can't un-boost a post

Attempting to unboost a post keeps incrementing the counter. It doesn't appear to unboost the post.

Enable text selection

Currently, selection working only in editing fields. Selection blocking by flutter_html library. It hadn't text selection support in the past, the newest version may have this functionality.
Should be in next areas:

  • account description, name, acct,
  • instance description
  • status body
  • chat message body
  • media alt description

Twemoji support

Mastodon web UI uses Twemoji by default, Soapbox uses them, I think Pleroma FE has them as well, having option to use them for consistent experience would be nice.

Media description

  • Search for issues. Perhaps similar issue already opened

I can't find a way to add a media description when posting images on Fedi. I don't recall seeing a related string when translating, so I guess it might not be implemented yet.
That would probably be the only reason I still use browser for Pleroma now that #56 is correct

Emoji packs support

Is your feature request related to a problem? Please describe.

  • Pleroma emoji packs not supported. They are additional(not replacement) emojis.
  • Also, it will be good option to use emoji packs chosen by the user to replace system emoji. For example Twemoji support - #68

Describe the solution you'd like

  • Fedi should download or cache from network emojis not downloadable emojis, like emoji packs and use them during text rendering.
  • Nothing shouldn't be bundled with app, only download on user request.
  • All texts in Fedi rendered via flutter_html and it is possible to replace emoji codes/names with <img> tag and link to svg/png image (local/remote)
  • it is possible to add Twemoji support via .ttf font, but using images should be easier solution

Add local on device filters with enhanced features

Currently, Fedi supports filter feature provided by API. However, this functionality is limited.
It will be good to have better filters that work only locally(on device). it will possible to set up global(multi-account) filters with improved functionality like regex

Cannot open post or user profile at originating instance

The fediverse does not guarantee consistency of any kind. It's possible to be missing replies in a thread or to not have the full history of a user's post when you look at their profile because the content was simply never federated to your server for various reasons.

It's common for users to check the thread in their browser or open a user's profile on their instance so you can see their entire post history. You have to do this outside of Fedi which is difficult when you can't even get a link to a post, for example.

Cannot save media attachments

It would be nice to be able to save/share media attachments. It's difficult to share amusing things with friends that do not use the Fediverse yet.

Add localization messages for all known API error identifiers

Currently, Fedi has special localized messages only for several common API error codes (like token is expired). Fedi displays raw REST response content(not localized and not always human-readable) if special message does not exist for the identifier.

Unifedi API added several new error messages identifier, which not handle by Fedi yet. Perhaps additional identifiers should be added

Multi push notifications

Need to investigate, the push server doesn't loop through anything so this would have to be either an issue from the instances sending multiple pushes or creating multiple push subscriptions with multiple auth tokens. I am adding log out functionality that makes sure to unsubscribe from. Got more info and it sounds like there might have been connectivity issues at fist and they may have logged in multiple times, causing the push error

My Pleroma server is (sort of) detected as Mastodon

Describe the bug
My Pleroma server is detected as Mastodon. It's available under the pl.fediverse.pl domain. I can't react to posts and there are probably too few icons on the top of Notifications page. It allows me to view announcements, even though they are not supported by Pleroma. Featured tags and other unimplemented features of course return an error.

Weirdly, if I go to instance settings, it shows as Pleroma, displays correctly my version, shows all the capabilities and MRFs.

To Reproduce
Steps to reproduce the behavior:

  1. Click on Chats icon
  2. See Chat not supported on Mastodon instances

Expected behavior
I should see whatever the chats UI is intended to look like on Fedi app. I should have no problem using other Pleroma-only features and the mastododn-only ones should not appear to be available

Smartphone (please complete the following information):

  • Device: Google Pixel 2 XL
  • OS: GrapheneOS RQ3A.210705.001.2021.07.13.21 (Android 11)
  • App version: 2.6.1

Additional context
I installed the Play Store version of the app from Aurora Store, I don't have google services installed.

Duration picker rework

Fedi uses forked(simple hacks for Fedi) version of duration_picker without adopting picker to the current locale.
Possible solutions:

  • refactor duration_picker fork and publish PR and use the updated library
  • fully rework picker and remove duration_picker dependency
  • unify UI elements with #78

Too many toasts when network not available

Fedi displays network error message each time user navigates to the new screen. It is annoying

  • don't send network requests when offline
  • show small badge somewhere when offline
  • add option to settings for this behaviour

Replies do not auto prefix @mentions

It's not clear if direct addressing is being used here, but the lack of any visual indicator of who the reply is going to mention is confusing.

Can't open links in posts

Was sent a link in a post. It was blue and underlined like a link should be but the link could not be tapped and opened. Nothing happened for touch events.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.