Polkassembly Logo

Head 1
Head 2
Head 3
Head 4
Create Pencil IconCreate
TRACKS
ORIGINS
Report an issueNeed help with something?
Foot 1
Foot 2
Foot 3
Foot 4
OpenGov
View all Medium Spender Referenda
Requested:444.12K USDC
Deciding

Subsquare new batch of features development and maintenance

inMedium Spender
3 days ago
BeneficiaryBeneficiary:

(444.12K USDC)

Subsquare is well known as a governance platform for polkadot, and it has become a top DAPP(over 250k unique visitors in the latest month) for polkadot by the team members' continuous maintenance and deliveries. This proposal seeks a new funding for the continuous maintenance and new batch of features development, and the time scope is from 2024.Q3 to 2025.Q2.

image.png

Infrastructures

ItemsDetailsper monthMonthsTotal
Servers5 servers + 500GB volume$1359€1,215 ≈ $1,388
Vercel-2$2,500
Domain1 io domain-12 of 2025$44.89
Ali email service-9$46
IPFS pin service-9$35
AI verndors-9$10
Totalwith 5% currency exchange--$4,024

Note: we switched to vercel because some users gave us feedback sometimes in their zones visiting subsquare is very slow. Though the cost is a little higher, it will bring more visit performance stability to users.

Maintenance

The maintenance work includes:

  • Server deployment maintenance: daily server monitor, upgrading products versions, emergency handling, etc.
  • Codebase maintenance: code refactor, bug fixes, UI tweaks, dependency upgrading, etc.
  • Answer user questions, collect user feedback and then design new features.
  • Collaboration with other teams to provide api support and some governance explanation.

Picked work includes:

  • Deploy polkadot/kusama to vercel. This will bring users more performance stability to global users.
  • Server and client error report and we can get subsquare user errors in time.
  • Skeleton loading and load more effect for comments.
  • Treasury panel update with multiple assets.
  • Upgrade dependencies to polkadot.js API, next.js, etc.
  • DV members update.
  • 500 and 404 error pages customization.
  • Show valid/expiration count down on treasury spend list and fix treasury spend payout button status.
  • Remove rococo and deploy subsquare for paseo testnet.
  • Try different AI vendors besides OpenAI, including deepseek and kimi.
  • Refactor user panel and show fiat value for their balances.
  • Fix bugs about on-chain data subscription.
  • Fix the whole deciding time scrope for an approved OpenGov referendum. It should be the normal deciding time plus the exceeding confirming time.
  • Update proposal context sync scripts by polkassembly new API.
  • Fix the child bounty data indexing problem caused by all a child bounty lifecycle in one block. Write several scripts to fix the history data.

Please check the changelog and commits for more details. We will request 15 FTE equivalent work per month.

New features development

New design of profile page

With the new design of profile pages, users can use it as their landing pages. So for small teams or individuals, they don't have to develop their own sites.

  • We can see votes power including delegations and self balance. Delegation details of each track is also available.
  • User relatives info is implemented on the profile page. We can see the signatories of an address if it's a multisig address, and we also can see proxy and identity relationships.
  • We can set an avatar and a banner to customize our profile pages to apply customization.
  • We can delegate our votes to an address on its profile page if this address published its delegation announcement.
  • A new components layout will be developed for better information organization.

Identity business support

Identity is an important part of polkadot. With this implementation, users can:

  1. View my identity, judgements, identity timeline info.
  2. Set/edit/remove their identities.
  3. Set/remove their sub-identities.
  4. Request judgements from registrars, and we can see a registrar's latest judgement given time when picking a registrar.
  5. All on-chain identities will be listed and we can search them by identity display name.
  6. We can see all registrars with their basic info and statistical data including their fee request, how many judgement requests they received, how many judgements they give out, their revenue and their latest

Check here for features.

Assethub migration support

Most relay chain functionalities will be migrated to assethub. Check more detail here. For data continuity and validity, we'd have to support it. Work includes:

  • Write code logic to support stop indexing relay chain at the migration height and begin indexing assethub. We'd have to switch context to query block storage.
  • Fronted work:
    • Config assethub RPCs for relay chains in fronted.
    • Subscribe assethub indexing height instead of relay chain height.
    • We need to keep relay chain API instances for history proposal storage queries.
    • Fix explorer links. Use relay chain explorer link before migration and use assethub explorer link after migration.
    • Fix various time related calculations because referenda related time is still calculated with relay chain block number.

Check fronted issues on github here.

Proxy support

Proxy is important in governance. We will add following features:

  • Proxy management
    • An user can see all his/her proxies.
    • An user can add or remove a proxy.
    • An user can see proxies he/she received.
  • Users can sign extrinsics as a proxy account.
  • Users can leave comments as a proxy account.
  • Users can set their avatars and publish their delegation announcement as a proxy account.
  • We can check Any address' proxy info on its profile page. Check here for an example.

Coretime support

This feature provides users with a better UI to understand coretime business and on-chain status. Pages include:

  1. Coretime landing page which shows the active coretime sale status and its renewal and purchase records.
  2. Sales page on which we can see all history sales.
  3. On the sale detail page we can see any history sale details.

Check pages here.

Search

Previously we used google in-site search for subsquare content, but in many cases we can not search the latest content, results are not accurate and we can only search subsquare data with SSR.

With the new search feature, we can:

  • Get various proposals by their titles.
  • Go to list pages by proposal types.
  • Get addresses by their identities and go to their profile pages.

Bounties enhancement

  • Bounty list page is refactored. Active bounties will be shown first as cards. On each bounty card we can see bounty balance, curators and child bounties.
  • Enable users to do various actions
    • Create a new parent bounty.
    • Create a new child bounty.
    • Propose/accept a child bounty curator.
    • Accept curator on a parent bounty page.
  • Correct the claim button visibility by checking on chain status.
  • Support new child bounty index data structure. New child bounty index grows only under a parent bounty, so we'd have to adjust code and UI for a child bounty identification and child bounty search under a parent bounty.

Multisig enhancement

We improved the usability of multisig on Subsquare. Users can approve, cancel and execute a multisig on their account pages. There will also be a notification if there are pending multisigs for connected users.

On chain data explorers

Users can use these pages to explorer on chain data.

  • proxies.
  • vesting
  • multisigs

For proxies and vestings, users can search related addresses by identity name or address. A connected user can filter out data only related with his/her own address. For multisigs, all history data will be listed too, and users can search multisigs by an address.

UX enhancement after UX bounty audit

UX bounty did an audit to subsquare and Braille gave many valuable suggestions. Check here for the issues we created to improve user UX/UI. Following are some picked issues:

  • Add wizards on the new referendum popup to give users a step to step guide.
  • Add more tooltips on various proposal components to explain concepts.
  • Always show a vote button on the proposal footer to help users quickly vote in a referendum.
  • Refactor tracks list: remove tracks on menu and develop a tracks panel on referenda page.
  • Show warnings when users' free balance is not enough to pay deposits for a new referendum.

Walletconnect support

With walletconnect, users can connect their addresses to subsquare, do discussions and sign extrinsics, same with operations as users with browser extensions. Walletconnect support will facilitate operations of mobile users.

Others

  • Address unification support. Some chains may have multiple different addresses due to address format change. We'd have to handle user data search and address match with different ss58 format.
  • Support switching accounts. This will help users with multiple addresses, and they don't have to disconnect and reconnect other addresses.
  • Extension metadata update notifications. We show this on the overview page user account panel and popups when users need to sign an extrinsic.
  • Add a prompt on the overview page account panel to warn users there are expired vote locks.
  • Extract cross chain call detail on referendum detail page. Check the issue here. So we can see calls in detail if a relay chain referendum is proposing a call on system para chains.
  • Performance issue about referendum detail
    • Store calls data in indexedDB.
    • Keep only server query for votes data and refresh it after vote actions.
    • Add lazy loading for votes on votes popup, so the scroll will be more smooth.
  • Refactor NumberInput component and create a new CurrencyInput component, so we can see comma separators in currency numbers.
  • Refactor indexing scripts to scan an extrinsic and its corresponding events then another extrinsic. Previously we first indexed all events, then all extrinsics.

Budget:

ItemWorkloadCost
New design of profile page4 FTE * 3 weeks, 480 hrs$43,200
Identity business support3FTE * 3 weeks, 360 hrs$32,400
Assethub migration support3FTE * 4 weeks, 480 hrs$43,200
Proxy support3FTE * 4 weeks, 480 hrs$43,200
Coretime support3FTE * 4 weeks, 480 hrs$43,200
Bounties enhancement3FTE * 3 weeks, 360 hrs$32,400
Multisig enhancement2FTE * 2 weeks, 160 hrs$14,400
On chain data explorers2FTE * 2 weeks, 160 hrs$14,400
UX enhancement after UX bounty audit3FTE * 2 weeks, 240 hrs$21,600
On chain data explorers2FTE * 3 weeks, 240 hrs$21,600
Search1 FTE * 2 weeks, 80 hrs$7,200
Walletconnect support1FTE * 5 days, 50 hrs$4,500
Others2FTE * 3 weeks, 240 hrs$21,600
Total3,810 hrs$342,900

Total budget

ItemWorkloadCost
Infrastructuresservers, vercel, domains, email, IPFS and AI services$4024
MaintenanceCode refactor, UI tweaks and polish, bug fixes, etc;97,200
Common features developmentPlease check the development section$342,900
Total-444,124

Q&A

1. Why subsquare?

We are dedicated to the polkadot ecosystem over 5 years, delivering products and features to improve polkadot's usability. Our monthly unique visitors are over 260k.

2. What's your plans?

Subsquare will be a full-featured dapp for polkadot. It will help the community to understand polkadot, track polkadot status and provide good UX for users.

Comments

Voting has Started

2

of 3

Decision Period

3 / 28 days

Confirmation Period

0 / 4 days

Summary

Voting Data

Approval%

Support%

Threshold0.00%

Threshold0.00%

Help Center

Report an Issue
Feedback
Terms and Conditions
Github

Our Services

Docs
Terms of Website
Privacy Policy

A House of Commons Initiative.

Polka Labs Private Limited 2025

All rights reserved.

Terms and ConditionsTerms of Website
Privacy Policy