Blind Dev article

Moni sites: what breaks for screen readers and how to fix it

A practical accessibility review: navigation, forms, semantic structure, and focus.

· updated 5/10/2026 Published audit · screen reader · web

Based on Blind Dev personal experience and source posts; verify current details before applying.

Full English translation of the Teletype article published on 2025-10-24. Observations, estimates and technical claims describe the interfaces at publication time; this is not a new assessment of their current state.

Accessibility in web3 and fintech interfaces is still rarely treated as a mandatory part of the architecture. Most attention goes to visuals and functionality, while use without a mouse or a screen remains outside the focus. In this review, I examine Moni’s accessibility from a blind user’s perspective (I am blind myself), while offering specific technical recommendations that could improve the interface’s overall usability.

Introduction: improving accessibility

Main website

Some buttons on the getmoni.io homepage also lack labels (apparently they are just icons), but this is not critical:

For example, the buttons below “Alpha Reports” and the “Learn More” link (I mean their position in the HTML, not visually). They are also above the “MONI API” heading. Similar buttons appear below “LOVE IS MONI”.

On the Noti bot page, information is marked as headings from “Why choose Noti Bot?” to the “Add Noti to your group” link; from “➕” to the “Play” button; and from “Step 1” to “FAQ”.

Listening to text is very inconvenient when every line is a heading.

It sounds something like this:

heading level 1 Why choose Noti Bot? heading level 1 We get it—building a community before launch is tough. Noti Bot helps you boost virality, heading level 1 engagement, and hype. heading level 1 Alert received –> FOMO kicks in –> Community hype ignites heading level 2 Your community won’t miss a post from your Twitter account, increasing engagement for all heading level 2 participants.

The Moni extension page has a similar issue.

Extension

Interface screenshot

Interface screenshot

More on project data:

There are strings like “Smarts244+1”. Please always separate words with spaces. This particular case is fine, but sometimes it causes problems. For example, percentages on Debank are difficult to listen to because their numbers run into the balance numbers.

Everything else here is good.

The only thing I would like is to see Moni score data when visiting a project’s website, if the project is listed in Moni.

For example, I visit coredao.org and open the extension: the Moni score for its X account would immediately be visible.

Something similar could work when visiting X profile pages.

Extension data on Twitter pages

Screenshot:

Interface screenshot

That is all for the extension.

The discover.getmoni.io website

Interface screenshot

Immediately below the name and what I assume is the logo, there is an undescribed button. Its code:

<button type="button" class="baseButton_container__Le7T_ sideNavigation_collapseBtn__WKZuf sideNavigation_collapseBtnCentered__7vZJX"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" fill="currentColor" width="18"><path d="M14.89 13.656H5.75V12.25h9.14v1.406Zm0-3.515H7.86V8.734h7.03v1.407Zm0-4.922v1.406H5.75V5.219h9.14ZM2.235 11.962l2.518-2.524-2.518-2.525.992-.991L6.74 9.438l-3.515 3.515-.992-.991Z"></path></svg></button>

I never worked out what it does, but I would like it to have a description.

Other elements:

2D552 +573 53 +52 20 +20 4.24K +4 095

As you can imagine, that is difficult to understand.

About Watchlist

Interface screenshot

In “New list”:

Above “List name” is a symbol-selection button; call it “Select symbol”. Above that is the close button; call it “Close”. Do the same in the filter settings, too.

In the list of lists:

On a list’s page:

About Mentions Feed

Interface screenshot

There are unlabeled buttons in Trending here, too.

There is another unlabeled button next to profile search. Call it “Search” if it actually starts a search.

Filter management also needs a modal or focus moved to the opened controls. Change the table structure in the list and label the “Manage” button used to manage list membership.

Smart Tracker

Interface screenshot

An additional point: explain at the beginning how a watchlist differs from “Smart Tracker”. I did not understand at first. For example, a watchlist provides a feed of new posts and some other features, whereas this section monitors smarts and their actions.

Also rename “Edit” to “Edit name”, and name the close and symbol-selection buttons.

Categories are great! But I would like to select several rather than one at a time. I thought I could see accounts from Researchers, Hyperliquid Degens and AI Agents Degens together, but could not.

Also name the “Manage” button in the list.

Reports, Mindshare and Checker

The Reports page:

Interface screenshot

Everything is fine here. The only suggestion is perhaps to host reports on your own website to avoid depending on Notion. Notion is not very accessible either: in particular, automatic translation of all the text is unsupported, and there are other shortcomings.

mindshare

Interface screenshot

Surprisingly, everything is good here!

The exception is merged data on the Categories tab:

L117.62%-1.93%

Please separate it with spaces. It is also unclear what the percentages mean. Again, a table might be better.

Everything in “Projects” is excellent, as it is in Chains.

The only thing is that Chains would also benefit from a table.

Perhaps explain the settings before the list and how to use them. It is unclear whether they are filters or something else, and why, for example, only a short list of blockchains appears for projects. I prefer how the homepage filter works.

The Checker page:

Interface screenshot

In “Top Queries” there are two undescribed navigation buttons that have no effect when activated with the keyboard.

Everything else is good.

Referrals

Interface screenshot

Everything on the referral-program page is accessible.

At least at this stage: balance-related functionality is unavailable because I have 0 invitees and $0.

If you read my channel and have opened this article, I would appreciate you using my referral link: https://discover.getmoni.io/?ref=ORKFDD

Premium

Interface screenshot

Below “Pay with referal bonuses” is an unnamed button. Its purpose is unknown.

Everything else here is fine.

The Alerts page

Interface screenshot

In the list, above the name and other data, there is an unlabeled button. I never understood its purpose because I could not detect any changes.

Next to “Edit” is what I believe is a delete button: give it the name “Delete”.

When editing with “Edit” or creating with “New Alert”:

Portfolio tracker

Let us look at accessibility on https://app.getmoni.io.

Interface screenshot

What should change:

Interface screenshot

More points:

Conclusion

Some Moni interface elements are implemented correctly, but a substantial proportion of its functionality remains difficult for blind users to use. Based on my observations, approximately 40–60% of the interface needs accessibility improvements.

Most of these problems are not architecturally complex. They mainly concern correct use of ARIA attributes, a logical heading structure, and keyboard navigation. Fixing them does not require rebuilding the entire product, but it substantially affects whether users can interact with it fully.

If a product targets a broad audience, accessibility should be treated as an engineering requirement, not an optional extra.

If you are interested in practical accessibility reviews and detailed web3 project analysis using the 4K+ method (team, concept, coin, code + practice), subscribe to my channel: https://t.me/blind_dev

Source

Original Russian article on Teletype.