this post was submitted on 19 Jun 2023
494 points (100.0% liked)

Programming

13376 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

Hi all, keeping this post short, I am working on a new Lemmy app for iOS and Android, heavily inspired on the Infinity for Reddit app.

The app is very much still a work in progress, but I's like to share some screenshots and a few MVP functionalities already implemented:

Screenshots

Already implemented:

  • Anonymous browsing;
  • Login;
  • Multiple accounts support;
  • Account switcher;
  • Post cards
  • Sorting posts by Lemmy's sorting options (Active/Hot/New/etc..);
  • Listing posts by Lemmy's listing options (Subscribed/Local/All);
  • Upvote, downvote (and counters), comment counter, save;
  • Mark post as read;
  • Infinite post scrolling (keep on scrolling, app loads more posts in the background);

What's next before I make it available in the app stores (MVP):

  • Post view (see post's comments);
  • Add a comment to a post;
  • Create a post;
  • A sexier selected account card on the sidebar;

What's still to do before I can call it a beta version:

  • Profile view;
  • Community view (rules mods other details);
  • Search;
  • Dark mode;

What's to come after:

  • Custom theming/Material You support;
  • Advanced post filters;
  • Community groups (Add communities to a group, see posts only from selected group);
  • A video player with controls over speed playback and maybe quality if possible;
  • Alternative posts view (compact card, list, etc)
  • Other cool misc options.

Dreams:

  • Kbin and Mastodon accounts support.

Keep an eye for future posts, I may be able to announce the MVP by the end of this week if everything goes well, but I can't promise anything :)

EDIT:

This post got so much traction than I had predicted. Thank you so much for all your comments and ideas! I tried to reply to as many as I could.

I also collected from this post a bunch of good suggestions from you which for now I am keping track of here: https://brunofinger.notion.site/brunofinger/Beyond-45cabaae7f724cd5ad2b77d902e9a97e

The app name probably will be "Beyond" as suggested by a couple of users here, and really like this idea as it creates a sort of symbolic link to Infinity as the inspiration for my work by the famous "To Infinity and Beyond" phrase :)

you are viewing a single comment's thread
view the rest of the comments
[–] LunarticBot@beehaw.org 20 points 1 year ago (2 children)

Thank you for this.

Lemmy definitely needs more and better apps.

But just a curiosity question if you don't mind. You said that your app is heavily inspired by Infinity which is already open source, so why not just fork that and modify it to work with Lemmy?

[–] knova@links.dartboard.social 16 points 1 year ago (1 children)

I think swapping from one API to another is not just a drop in replacement; it might be easier to start fresh from the ground up.

Disclaimer: I am not a developer so I honestly don’t actually know

[–] OneDimensionPrinter@lemm.ee 13 points 1 year ago (1 children)

Am a developer, and there's a few patterns to make this sort of thing easier, but Lemmy/kbin is pretty different than the reddit APIs as I understand it with the federation aspects, so swapping wouldn't be THAT easy. Doable, but not a drop in replacement.

[–] lhamil64@beehaw.org 5 points 1 year ago (1 children)

It's the age old "writing code is easier than reading code"

[–] OneDimensionPrinter@lemm.ee 2 points 1 year ago

Oh absolutely this. Far far easier. It's a sign of a good dev who can come in and improve things without needing to rewrite everything. That said, refactors are fun as hell.

[–] brunofin@beehaw.org 1 points 1 year ago

That's honestly a good point but:

  • Infinity is written in Java code specifically targeted to Android only, I am targeting both iOS and Android with the same code using React Native (maybe even web in the future but it's a little more complicated due to CORS);
  • I have worked with React for at least the past 4 years, so using React Native now for me feels like almost no learning curve at all, while if I'd be given a Java-based Android codebase now, I'd probably need to spend the first week figuring out the basics :)