<?xml version="1.0" encoding="utf-8"?>

Design Task:

Social Media Platform: Mastodon Social Network

Develop a button system that features varying button priorities and showcases button states.

Make sure the button system clearly outlines button parameters.

Ensure the buttons meet the accessibility color contrast requirements.

Offer an explanation for your design choices.

Button System Design 1

Prioritising User Actions in Digital Products

Effective digital products hinge on understanding which user actions are most critical. Since actions within a product hold varying levels of importance, I prioritise analysing this hierarchy first when designing.

This analysis led to the following conclusion:

Primary CTAs (Calls to Action):

Compose: This is the main action users take to create and share new posts (toots) on the Mastodon social network. This should be a primary button.

For the button colour I’ve chose brand primary colours and created a vertical gradient. This way the button was given a depth and a slight 3d look and feel, elevating it a bit and making it prominent on a screen. The padding gave the label a space to breathe within a button boundaries. Adding a relevant icon to the label increased the understanding of the button’s purpose thus reducing the users cognitive load.

Finally the colour contrast has been tested using a Figma plugin ‘Able’. This ensured that the colour contrast of a button’s label and icon against its background meet the WCAG standards with AA & AAA levels.

Button System Design 2

Secondary CTAs

Boost: This action allows users to amplify existing posts from their feed by sharing them with their followers.

Bookmark: This lets users save posts for future reference. The button might be located near the original post or within the post itself.

Follow: This action allows users to subscribe to the updates of other Mastodon accounts. The button is typically located on the profile page of the user you want to follow.

Direct Message: This initiates a private conversation with another user on Mastodon. The button might be located on the profile page of the user you want to message.

Button System Design 3

Tertiary CTAs

Edit Profile: This allows users to modify their profile information, avatar, and other settings. The button might be located in the account settings section.

Explore: This could be a secondary CTA depending on the app's design. It might take users to a curated feed or discovery tools to find new people and communities to follow.

Button System Design 4

Destructive Actions

Delete Toot: This permanently removes a user's own post from the Mastodon server. Confirmation is usually required to prevent accidental deletion.

Block User: This prevents another user from seeing your posts or interacting with you on Mastodon.

Report Post: This flags a post for the server moderators to review if it violates Mastodon's community guidelines.

Log Out: This ends the user's current session and requires them to re-enter their login credentials to access their account again.

Delete Account: This action permanently deletes user’s account and thus the confirmation is mandatory.

Icon Only Buttons

Sometimes icon is enough. If it’s a well-known icon and a well-known action users can recognise with no effort and are already very familiar with, just an icon in a button can suffice.

Button System Design 5

Automations

Making a great design is awesome but making great design fast and efficiently is a whole another level.

Button System Design 6

Thank you!

Share your insights — leave a project review and help others grow their skills

Reviews

2 reviews


Great work, Ivan!

The structure is clean, the explanation is informative, and I love your creative touch with elevation and gradients.

Your end note is crucial, especially for those of us from visual design backgrounds. We need to take the engineering of our files into account, as the products we design are living and breathing tools that most likely will be shared by multiple hands.

My only piece of feedback would be that your GIF displaying the use of the Figma toolset is rather pixelated. It doesn’t do justice to what you have built, and the Figma file isn’t linked for viewing. I would love to see this in action, and I’m sure many other users could learn from your fantastic work!

Nice job 👏

Salvatore, Thank you very much for your feedback! I'll make sure to include links to Figma projects in the future, and for this one as well. I am also glad you liked it.

Nicely done Ivan!

Love also the video demo about the structure already implemented, would be nice to have it with better quality.


15 Claps
Average 5.0 by 3 people
5 claps
4 claps
3 claps
2 claps
1 claps
<?xml version="1.0" encoding="utf-8"?>