[-] ericbandrews@lemmy.ml 11 points 4 months ago

TL;DR: Mlem v1 is not fast; Mlem 2.0 (announcements coming soon!) will be.

We’re aware of a number of performance issues with the current codebase, which all together result in the app not behaving as responsively as we’d like. Unfortunately these are largely due to design choices made during the hectic sprint to App Store release last summer, and so are infeasible to fix without rewriting the app from the ground up—which is why that’s precisely what we’re doing. Our 2.0 build should be significantly faster; we’ll have some announcements about that in the near future.

[-] ericbandrews@lemmy.ml 10 points 4 months ago

Sure! One of the big things we’re reworking for 2.0 is how we handle accounts, which includes changing the format of how we persist account information. The compatibility changes in this build add extra decoding logic to the account persistence system so that both v1 and v2 can load a saved account regardless of which version saved it.

[-] ericbandrews@lemmy.ml 11 points 8 months ago* (last edited 8 months ago)

That's unfortunately not currently supported by the Lemmy backend. There is an issue open for it, though it doesn't appear particularly active right now.

We have some major changes in development that might make this feasible to implement client-side--I've put up an issue for it, but can't make any promises pending a more thorough technical investigation.

[-] ericbandrews@lemmy.ml 11 points 8 months ago

Mark read on scroll is coming in the next build!

As for searching within community, it's in the plans but I can't give a more precise delivery estimate.

[-] ericbandrews@lemmy.ml 11 points 9 months ago

Unfortunately not--Mlem is written entirely in Swift and SwiftUI, which as of right now doesn't work on Android.

[-] ericbandrews@lemmy.ml 13 points 9 months ago

Yes. As soon as we know that a pending update is going to break compatibility, we’ll put a post up announcing it.

[-] ericbandrews@lemmy.ml 10 points 1 year ago

Thank you! It means a ton to us.

78
submitted 1 year ago* (last edited 11 months ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

Hi Mlem Community,

It’s been a bit quiet here recently, so I just wanted to let you all know what we’ve been up to in the last couple weeks.

Development Progress

The current development cycle has been very backend-focused, so there hasn’t been much shiny new stuff to push to the TestFlight. We’ve instead been developing stable long-term solutions to thorny problems that we didn’t have time to address while we were racing towards core features. There should be a TestFlight coming out soon-ish with some major backend rework that will make the app more stable and robust.

Donations

We are extremely excited to announce that you can now donate to the project!

Where do I donate?

Right here

What will the money be used for?

100% of the money that you donate goes directly towards the project. It will be used to cover operating expenses (e.g., Xcode cloud server time), dev tools, and new features like push notifications that cost some money to operate.

Our donations are run through Open Collective, which means that all of our income and expenses are fully transparent so you can donate with confidence.

What do I get for donating?

The eternal gratitude of the development team, a bright future for Mlem, and some cool updates down the line. Due to App Store restrictions, we cannot currently offer perks as a reward for donation; see below for more details.

Can I donate in-app?

Not yet. In-app purchases must go through the App Store, which requires a whole bunch of additional setup that we are currently still working on. The App Store also prohibits us from selling “content or functionality” through any market but the App Store (App Store review guidelines §3.1.1), which is why we can’t offer tangible rewards right now.

Will functionality ever be paywalled?

Absolutely not, and nor will we ever run ads. Ads and paywalled functionality violate the fundamental philosophy of the Fediverse: social media created by and for the community, free of corporate influence, supported by nothing more than the community’s desire for the platform. When we do get our in-app purchases up and running, we will never restrict the functionality of the app; every feature will be available to every user. Rewards will be in the form of digital bling (e.g., a custom flair visible to all Mlem users), wholly cosmetic perks (e.g., special icons or color themes), or bragging rights (e.g., a shoutout on our info page).

If you have any questions, drop them below and we’ll do our very best to answer them.

Cheers,

The Mlem Group

182
submitted 1 year ago by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

At long last, Mlem 1.1 is ready! We’ve been working on this one for a while and are super excited to bring what we’ve been working on to the App Store:

Major Features

Fully Customizable Interaction Bar

All the buttons you want, exactly where you want them. Want to be able to upvote from both sides of the post? You can do that. Instance doesn’t support downvotes? You can remove the downvote button. Want six separate upvote buttons? Yup, you can do that too. Check it out in Settings -> Appearance - Posts or Comments -> Customize Widgets.

Enhanced Search

Search has been given a major facelift, and we’ve added the ability to search for both users and communities. You can also now subscribe directly from search results.

New Icons

We have two all-new icons for the app:

  • Classic Lemmy, designed by Eric Andrews, based on the Lemmy icon
  • Stargazer, designed by Sjmarf

Jump Button

We’ve added a button to the comments view to let you jump to the next comment, because scrolling is just too much work sometimes.

Image Uploading

Our team is never afraid to push the envelope. After countless hours of groundbreaking development, we give you the ability to upload an image while creating a post. Revolutionary, we know.

Onboarding

We now have a proper onboarding flow for new Lemmy users. If you already have an account but want to see it anyway, you can remove all your accounts from Mlem.

Minor Features

  • Collapse comments. Swipe all the way to the left to collapse a comment.
  • Collapse post content. Posts are overrated—comments are where it’s at. In the detailed post view, you can tap a post to collapse it and get straight into the comments.
  • Adjustable haptic levels. You can disable some or all of the haptic feedback in Settings -> General -> Haptic Level.
  • Opaque insets. If you think material design is just a silly fad and solid colors are the one true path, you can make your navigation and tab bars fully opaque in Settings -> Accessibility -> Translucent Insets.'
  • Added an option to upvote posts on save. You can find it in Settings -> General -> Upvote on Save.
  • Added an option to show the user avatar in the tab bar instead of the generic profile picture. You can find it in Settings -> Appearance -> Tab Bar -> Show User Avatar.
  • Edited posts and comments now display the updated time.

Quality-of-life and Other Improvements

  • Instant vote feedback. Voting on posts and comments now displays the vote instantaneously, rather than waiting for that sluggish speed-of-light roundtrip to the server.
  • Link posts now have an indicator on their thumbnail in Compact and Headline mode.
  • You can now block communities directly from posts.
  • Various actions have been flagged as destructive and given a nice little warning popup.
  • Fixed some issues with images embedded in links displaying poorly.
  • Fixed nav bar disappearing on device rotation.
  • Haptic feedback no longer causes an animation hitch on first play.
  • Made profile headers more readable.
  • Updated the behavior of the NSFW filter. In expanded post mode, tapping anywhere on the image will dismiss the filter; in feed, the filter can still only be dismissed by tapping the warning sign.
  • Very tall images now shrink to a max height. You can make them display in their full, glorious height in Settings -> Appearance -> Posts -> Limit Image Height In Feed.
  • Smoothed out editor sheet animations.
  • Clarified error message when trying to log into a private instance.

Bug Fixes

  • Addressed scrolling jumpiness. Again. I really think I’ve got it beat this time, though. Please?
  • Fixed a problem where the account switcher would be open when re-opening the app.
  • Inbox now persists unread status.
  • Search no longer has auto-correct or auto-capitalization.
  • Fixed the “share” button crashing the app on iPad.
  • Fixed feed refresh not behaving consistently
  • Fixed login not handling incorrect 2FA code properly
  • Added handling for inconsistent date formats across instances
  • Fixed unencoded URLs breaking the feed
  • Fixed instances with optional .admin field not loading
  • Fixed large posts rendering incorrectly on iPad.
  • Fixed the first ~40 posts not showing up
  • Fixed posts loading after the end of the feed
  • Fixed settings icons not rendering properly on iOS 17
  • Fixed a bug where connecting to instances on localhost was impossible
  • Fixed logging in before email verification crashing the app
  • Fixed opening posts from URL links crashing the app
  • Fixed swipey action animation and context menu animation trying to run at the same time (ONLY on iOS 17—some of the changes made in iOS 17 gave us the tools to disable this behavior, but there’s unfortunately nothing we can do about it in iOS 16).

Cheers,

The Mlem Group

43
submitted 1 year ago* (last edited 1 year ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

Ahead of our App Store update tomorrow, we’ve fixed a whole lot of bugs and refined some of our new features:

Features and Improvements

  • Recent searches are now stored per-account
  • Optimized search view rendering
  • Added a swipe gesture to delete a recent search
  • Improved account switching screen
  • Added an option to disable the “swipe up from tab bar” gesture

Bug Fixes

  • Recent searches from instances not federated with the current account no longer appear
  • Refreshing your own profile no longer causes an error
  • Refreshing a profile now also refreshes the content of that profile, including things like vote counts
  • Fixed certain actions being published on background threads
  • Fixed inbox unread count incrementing every time you vote on a mention or reply
  • Fixed search spamming the API
  • Fixed home page sometimes having no items when navigating back from search
  • edit Fixed info stack not aligning properly

Cheers,

The Mlem Group

100
submitted 1 year ago* (last edited 1 year ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

It’s here: our 1.1 release candidate! This is the last set of features for our App Store update next week, and we’ve got some exciting ones for you:

Features and Improvements

  • Brand new search interface, allowing you to search for users or communities (posts coming soon) and featuring a beautiful new result preview
  • Image uploading. You can now upload an image when creating a post!
  • New icon: “Stargazer", designed by Sjmarf
  • Edited posts and comments now display the updated time

Bug Fixes

  • Fixed images all appearing as squares (and, I hope, finally put our scrolling issues to bed)
  • Fixed settings icons not rendering properly on iOS 17
  • Fixed a bug where connecting to instances on localhost was impossible
  • Smoothed out editor sheet animations
  • Fixed logging in before email verification crashing the app
  • Fixed opening posts from URL links crashing the app
  • Fixed swipey action animation and context menu animation trying to run at the same time (ONLY on iOS 17—Apple fixed this behavior generally in iOS 17, there’s unfortunately nothing we can do about it in iOS 16)
  • Clarified error message when trying to log into a private instance

Known issues

  • Tapping a “recent searches" suggestion for a community or user not federated with the current account will fail to load
  • "Official Community" link on some instances federated with lemmy.ml still opens in-browser
  • Items to the right of the spacer in the widget customizer do not initially register taps if the widgets have not been customized since the last build. This is due to inconsistencies in the saved widget config data, and can be fixed by simply moving some widgets around.
  • Info stack does not properly adjust its alignment when it is the leftmost or rightmost element

Cheers, The Mlem Group

[-] ericbandrews@lemmy.ml 10 points 1 year ago* (last edited 1 year ago)

I'm one of the Mlem devs. We don't have it yet, but it's on our roadmap--its planned to be implemented within the next couple of weeks.

57
submitted 1 year ago by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

We're back with bugfixes, bugfixes, a new icon, and more bugfixes! Thanks to all of our wonderful TestFlight members for finding and reporting bugs--we really couldn't do it without you.

Small patch today, but we figured that the fixes are important enough to be worth releasing ahead of our regular cadence.

Features and Improvements

  • Added a new "Classic Lemmy" icon, designed by yours truly, based on the Lemmy logo
  • Refined the onboarding flow. The instance list now only shows the top 30 instances, with the others accessible via search; we've also smoothed out the navigation between pages.
  • Refined the editor. Now it can be pulled down to only cover half the screen so you can see context while you're composing, and it can't be swipe-dismissed so you won't accidentally lose a half-written post.

Bug Fixes

  • Fixed images not prefetching
  • Fixed the first ~40 posts not showing up
  • Fixed posts loading after the end of the feed
  • Fixed large posts rendering incorrectly on iPad

Cheers, The Mlem Group

40
submitted 1 year ago by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

We've rolled out a patch to the App Store that fixes some instances not loading properly. lemmy.world, beehaw.org, and others should work properly now.

Cheers,

The Mlem Group

76
submitted 1 year ago* (last edited 1 year ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

I'm going to start by saying we didn't actually want to release this one just yet. A couple major instances changed their API spec without updating the published build number, which led to us needing to rush out a fix, so what we've got isn't quite fully cooked yet. Anyway, we figured it would be more fun to ship what we've got then to ship a patch, so here's what's new:

Features and Improvements

  • Added an option to upvote posts on save (comments still WIP)
  • Added an option to show the user avatar in the tab bar instead of the generic profile
  • Made profile headers more readable
  • Updated the behavior of the NSFW filter. In expanded post mode, tapping anywhere on the image will dismiss the filter; in feed, the filter can still only be dismissed by tapping the warning sign.
  • Added post overscroll for the jump button

Bug Fixes

  • Fixed website icon not appearing in the right place on thumbnails
  • Fixed the "share" button crashing the app on iPad
  • Fixed the widget customizer not working on iOS 17
  • Fixed feed refresh not behaving consistently
  • Fixed login not handling incorrect 2FA code properly
  • Fixed instances with optional .admin field not loading
  • Added handling for inconsistent date formats across instances
  • Fixed unencoded URLs breaking the feed

Known issues:

  • Swipe voting in inbox has an animation hitch
  • Comments don't apply interactions instantly
  • It's hard to get image posts to collapse
  • Putting too many widgets and too much info in the bar causes view clipping
  • Onboarding flow is kinda rough. If you've got thoughts on how to make it smoother, please share!
  • In Large Post mode, all images are crunched into a square. This is a temporary hack for performance reasons while we polish up some fun new changes, and will be gone in the next build.

Cheers, The Mlem Group

83
submitted 1 year ago by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

We're motoring on ahead towards our 1.0.2 RC. It's a little ways off yet, but we've just got so many new changes that we couldn't help but share them with you.

What's new:

  • The Widget Wizard: fully customize your post and comment interaction widgets with a new drag-and-drop interface! Check it out in Settings -> Appearance -> Posts or Comments -> Customize Widgets
  • Jump button: we've added a handy little button to jump to the next top-level comment. You can disable it in Settings -> Comments.
  • Instant post feedback: we've done some major backend work on how we handle posts to make the app more stable and set up new features down the line. You'll notice that posts now apply your interactions immediately, rather than waiting for network round trip. You might also notice some new bugs, which we would love to hear about.
  • Onboarding: new users now get a proper onboarding flow. You can check it out by removing all your accounts from Mlem.
  • Collapse post content: in the detailed post view, you can tap the title or body of a post to collapse it and get right to the comments
  • Collapse comments: swipe way to the left to reveal a new swipe action: collapse comment
  • Haptic levels: you can now disable some or all of the haptic feedback in the app in Settings -> General -> Haptic Level
  • Opaque tab bars: in case you think material design is so 2014 and yearn for strong, assertive views, you can now make the tab bars fully opaque in Settings -> Accessibility -> Translucent Insets.

Quality of life updates:

  • Link posts now have an indicator on their thumbnail in Compact and Headline mode
  • Fixed a problem where the account switcher would be open when re-opening the app
  • Inbox now persists unread status
  • Search no longer has auto-correct or auto-capitalization
  • Large images now display as shrunk. You can make them display in their full, glorious height in Settings -> Appearance -> Posts -> Limit Image Height In Feed.
  • You can now block communities directly from posts
  • Various actions have been flagged as destructive
  • Fixed some issues with images embedded in links displaying poorly
  • Fixed nav bar disappearing on device rotation
  • Haptic feedback no longer causes an animation hitch on first play

Known issues:

  • Swipe voting in inbox has an animation hitch
  • Comments don't apply interactions instantly
  • It's hard to get image posts to collapse
  • Putting too many widgets and too much info in the bar causes view clipping
  • Onboarding flow is kinda rough. If you've got thoughts on how to make it smoother, please share!

Cheers, The Mlem Group

[-] ericbandrews@lemmy.ml 13 points 1 year ago* (last edited 1 year ago)

We're currently elbows deep a backend overhaul that should smooth out a ton of weird little state issues (things like the saved button "flickering" and interactions waiting on network round trip to apply). This touches so much of the app that shipping a TF now would turn up a ton of stale-on-arrival bugs, so we've been holding off shipping a TF until we get that merged.

By the same token, we're targeting a TF build more or less the moment that drops--the PR is https://github.com/mlemgroup/mlem/pull/556 and it just entered draft yesterday, so I'm hoping to have it in by the end of the week.

Re: pinned posts, that's an instance sync issue as far as I can tell--they're not pinned on .ml, but we've heard similar reports from beehaw users.

[-] ericbandrews@lemmy.ml 12 points 1 year ago

Oh yeah, whoops! Bumped the build, it should be the same in both now.

Normally the deployment strategy is to merge the TestFlight tagged code into master once we're ready to submit, then rebuild from master and submit that build--it's a "different build" but the exact same code. This time we ran into some Apple Review snags (they wanted a way to permanently delete your Lemmy account from within the app), so we had to hotfix that on master and forgot to release that to back to the TestFlight.

[-] ericbandrews@lemmy.ml 11 points 1 year ago* (last edited 1 year ago)

There are! We haven't implemented it yet out of concerns around API etiquette--there is no batch mark read endpoint yet, so it's kind of a "scroll fast to spam server" feature and we really don't want to build something that's harmful to the Lemmy ecosystem. We'll run some numbers and reach out to a couple admins, see what their sense of the impact might be, and proceed from there.

Lemmy does have rate limiters, so it's probably fine, but it's still something we want to make sure isn't going to be a headache for instance owners, especially small ones.

123
submitted 1 year ago* (last edited 1 year ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

Download Mlem 1.0.1 on the App Store

We are absolutely thrilled to announce the release of our 1.0.1 update to the App Store. New in this update:

Editing Posts and Comments

You can now edit your posts and comments using the new button in the context menu. Groundbreaking, we know.

Demo


Account Quick-Switcher

Swipe up anywhere on the tab bar or long press on the profile tab to quickly hop between your accounts. For those of you who use accessibility font sizes and rely on the tab bar info HUD, don't worry--we've made sure the long press gesture opens the HUD instead, and you can still access the quick-switcher with the swipe up.

Demo


Profile Nicknames

Do you have twelve profiles on eight instances using three names? Do you have so many accounts that you no longer know who or where you are? No longer! You can now add nicknames to your accounts and display them in the tab bar--or display the instance, or the username, or the enigmatic 'Profile.'

Demo


Compact Comments


Customizable Post and Comment Info

Only see what you care about. Just about every piece of meta-information about a post or a comment can be toggled on and off to suit your whims.


Quality of Life Improvements

  • Implemented aggressive background prefetching, caching, and processing to smooth out the feed scrolling
  • Image previews can be swiped down to dismiss
  • Read posts are now indicated by grayed out title text. For users who use "differentiate without color," we've added two different options to indicate read posts: a gray bar on the leading edge or a checkmark by the ellipsis menu. You can configure them in the new "Accessibility" settings menu.
  • Read posts can now be hidden using a new button in the navigation bar ellipsis menu
  • Added an unread count on the inbox tab (it can be disabled)
  • Organized and beautified settings
  • Refined haptics across the app
  • Added .webp image support
  • Improved animations
  • Fixed comments not collapsing interaction bar

Cheers, The Mlem Group

[-] ericbandrews@lemmy.ml 11 points 1 year ago

We've got a big customization update slated to start development soon, full gesture control will definitely be in it!

77
submitted 1 year ago* (last edited 1 year ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

Thanks to all your feedback on the first 1.0.1 Release Candidate build, we've smoothed out some of the edges and are targeting an App Store submission tomorrow.

The Highlights:

  • Added swipe down to dismiss QuickLook preview
  • Added the ability to give profiles nicknames to display in the tab bar (settings -> appearance -> tab bar)

Full Changelog:

  • Added swipe down to dismiss QuickLook preview
  • Added the ability to give profiles nicknames
  • Fixed "show instance" toggles not doing anything
  • Fixed voiceover on the tab bar. It now properly announces each tab and is considered the last item in the view, so the reader starts in the right place and will select the tab bar on four-finger tap at the bottom of the screen
  • Improved voiceover on posts. The items in the info stack are now properly grouped and annotated.
  • De-emphasized the body of text posts in feed. Text post bodies now appear as secondary content (gray) in the feed instead of primary (black or white)
  • Added haptic feedback on long press account quick switcher
  • Fixed tab bar spacing on devices with a physical home button
  • Tightened up tab bar animations significantly
  • Added auto-selection of text fields in post and comment editors
  • Improved consistency of settings menus
  • Fixed an issue where all users in community feeds were being flaired as OP
  • Improved comment folding animation
  • Changed some stale links
  • Added .webp image support
  • Even more caching to further improve feed performance

Cheers, The Mlem Group

127
submitted 1 year ago* (last edited 1 year ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

We've been hard at work tuning our image caching, prefetching, and optimizations, and are excited to finally bring you a smooth and highly performant feed with none of the stuttering or jumping that's been plaguing us.

This build also brings a few new smaller improvements:

  • Read posts are now indicated in the feed and can be hidden using the "hide read" button in the navigation bar ellipsis menu. By default read posts are indicated with grayed title text, but if the system-wide "differentiate without color" setting is enabled we've added two different ways to indicate read posts: a checkmark by the ellipsis menu on read posts or a gray bar on the leading edge on unread posts.
  • New accessibility menu in settings. Right now it's just got the settings to customize differentiation without color, but long-term it's going to serve as a place to house all the customizations needed to make Mlem work smoothly and easily for everybody.
  • Updated thumbnail behavior. Tapping an image post's thumbnail opens the image quicklook and tapping a link post's thumbnail opens the link. Both of these actions mark a post as read.
  • Greatly improved the robustness of our haptics system, which previously would sometimes just stop working if the app was closed.

This build's our 1.0.1 App Store Release Candidate, so if testing goes well it'll be hitting the App Store in the next couple days.

Cheers,

The Mlem Group

57
submitted 1 year ago* (last edited 1 year ago) by ericbandrews@lemmy.ml to c/mlemapp@lemmy.ml

We've been hard at work over the past couple weeks on our 1.1 build. We're excited to be rolling out our first set of new features to the TestFlight beta (and, soon, to the App Store). The highlights:

  • Editing posts and comments
  • Account quick-switching. You can access the new accounts menu by long pressing on the profile tab, swiping up from the tab bar, or going to your profile and using the button in the navigation header.
  • More post customization
  • Compact comments option. Also, the interaction bar now properly collapses when you collapse a comment.
  • Organized the settings and gave them a facelift while we were at it
  • Unread count on the inbox tab (this can be disabled it in settings)
  • The inbox menu now has options to show only unread and mark all messages as read

We've also got a ton of bugfixes, backend changes, minor tweaks, and other goodies for you. You can see the full details on our GitHub page, or just jump into the app and see what's new. Check it out and let us know what you think!

Cheers,

The Mlem Group

Download Mlem on the App Store

view more: ‹ prev next ›

ericbandrews

joined 1 year ago
MODERATOR OF