graphito

joined 2 years ago
MODERATOR OF
 
66
submitted 2 months ago* (last edited 2 months ago) by [email protected] to c/[email protected]
 

Readme of the project:


Minimalistic opinionated Mastodon web client.

🗣️ Pronunciation: /fænpi/ (FAN-pee) 🔊 Listen

This is an alternative web client for Mastodon.

  • 🏢 Production: https://phanpy.social
    • production branch
    • break less often
    • slower fixes unless critical
  • 🏗️ Development: https://dev.phanpy.social
    • main branch
    • may see new cool stuff sooner
    • may break more often
    • may be fixed much faster too

🐘 Follow @phanpy on Mastodon for updates ✨

Everything is designed and engineered following my taste and vision. This is a personal side project for me to learn about Mastodon and experiment with new UI/UX ideas.

Features

  • 👪 Multiple accounts
  • 🪟 Compose window pop-out/in
  • 🌗 Light/dark/auto theme
  • 🔔 Grouped notifications
  • 🪺 Nested comments thread
  • 📬 Unsent draft recovery
  • 🎠 Boosts Carousel™️
  • ⚡ Shortcuts™️ with view modes like multi-column or tab bar
  • #️⃣ Multi-hashtag timeline

Design decisions

  • Status actions (reply, boost, favourite, bookmark, etc) are hidden by default.
    They only appear in individual status page. This is to reduce clutter and distraction. It may result in lower engagement, but we're not chasing numbers here.
  • Boost is represented with the rocket icon.
    The green double arrow icon (retweet for Twitter) doesn't look right for the term "boost". Green rocket looks weird, so I use purple.
  • Short usernames (@username) are displayed in timelines, instead of the full account username (@username@instance).
    Despite the guideline mentioned that "Decentralization must be transparent to the user", I don't think we should shove it to the face every single time. There are also some screen-reader-related accessibility concerns with the full username, though this web app is unfortunately not accessible yet.
  • No autoplay for video/GIF/whatever in timeline.
    The timeline is already a huge mess with lots of people, brands, news and media trying to grab your attention. Let's not make it worse. (Current exception now would be animated emojis.)
  • Hash-based URLs.
    This web app is not meant to be a full-fledged replacement to Mastodon's existing front-end. There's no SEO, database, serverless or any long-running servers. I could be wrong one day.

Subtle UI implementations

User name display

User name display

  • On the timeline, the user name is displayed as [NAME] @[username].
  • For the @[username], always exclude the instance domain name.
  • If the [NAME] looks the same as the @[username], then the @[username] is excluded as well.

Boosts Carousel

Boosts Carousel

  • From the fetched posts (e.g. 20 posts per fetch), if number of boosts are more than quarter of total posts or more than 3 consecutive boosts, boosts carousel UI will be triggered.
  • If number of boosts are more than 3 quarters of total posts, boosts carousel UI will be slotted at the end of total posts fetched (per "page").
  • Else, boosts carousel UI will be slotted in between the posts.

Thread number badge (e.g. Thread 1/X)

Thread number badge

  • Check every post for inReplyToId from cache or additional API requests, until the root post is found.
  • If root post is found, badge will show the index number of the post in the thread.
  • Limit up to 3 API requests as the root post may be very old or the thread is super long.
  • If index number couldn't be found, badge will fallback to showing Thread without the number.

Hashtag stuffing collapsing

Hashtag stuffing collapsing

  • First paragraph of post content with more than 3 hashtags will be collapsed to max 3 lines.
  • Subsequent paragraphs after first paragraph with more than 3 hashtags will be collapsed to 1 line.
  • Adjacent paragraphs with more than 1 hashtag after collapsed paragraphs will be collapsed to 1 line.
  • If there are text around or between the hashtags, they will not be collapsed.
  • Collapsed hashtags will be appended with ... at the end.
  • They are also slightly faded out to reduce visual noise.
  • Opening the post view will reveal the hashtags uncollapsed.

Filtered posts

  • "Hide completely"-filtered posts will be hidden, with no UI to reveal it.
  • "Hide with a warning"-filtered posts will be partially hidden, showing the filter name and author name.
    • Content can be partially revealed by hovering over the post, with tooltip showing the post text.
    • Clicking it will open the Post page.
    • Long-pressing or right-clicking it will "peek" the post with a bottom sheet UI.
    • On boosts carousel, they are sorted to the end of the carousel.
[–] [email protected] 1 points 3 months ago (2 children)

It might be -- the image is not oc I just used it as a template ie posted a link to it and added my caption

 

I can't believe I got away with it

 

Our relationship

 

until I'm late IRL

[–] [email protected] 22 points 3 months ago* (last edited 3 months ago)

Pure gold! Imagine how difficult it was to make hundred people to stand still holding a train-like weight over their heads to capture it on prehistoric camera 😅

[–] [email protected] 17 points 4 months ago* (last edited 4 months ago)

joke explanationit's a response to colleagues putting skill of nocode / zerocode platforms in their CV and demanding onpar compensation


"subzero" here plays a double duty bc it's a cool character and also bc code, you wrote but was never used, should be counted as negative work i.e. subzero code

 

Animated short film

[–] [email protected] 1 points 7 months ago

second half of “Invincible‘s” second season will fly its way into Amazon’s Prime Video on March 14 – the 21st

[–] [email protected] 5 points 7 months ago

Imagine having to wait for your assassin in the bathroom. Meanwhile waiting makes you unable to properly clean oneself, unable to let go of the gun, can't take cover, can't take proper position for shooting.

It very much explains the disappointed look.

[–] [email protected] 2 points 9 months ago (1 children)

Would be interested in more detailed followup about the search. Anything in particular stands out?

 

AI summary

The article discusses the importance of sponsoring open-source dependencies to ensure the sustainability of the projects. It highlights the challenges faced by open-source maintainers and the benefits of financial support from individuals and organizations. The author emphasizes the need for a sustainable funding model to support the ongoing development and maintenance of open-source software. Additionally, the article provides practical tips for individuals and companies to contribute to the sustainability of open-source projects through sponsorship and financial support.

[–] [email protected] 4 points 9 months ago

No worries, Xiaomi, my next phone is going to be fairphone. But you keep digging, girl

[–] [email protected] 3 points 9 months ago

Nice, now do twitter

[–] [email protected] 4 points 9 months ago

Yeah! now it's turn of facebook to grow friendi.ca

[–] [email protected] 2 points 9 months ago

Omg! This is amazing 🤯

Users need it so much in lemmy core 😳

view more: ‹ prev next ›