OpenSquare infrastructure products maintenance(2023 Q2 and Q3) and a new batch of features development
  • Beneficiary: OpenSquare(12sNU8BXivMj1xQmcd4T39ugCyHjmhir8jkPqfAw5ZDESrx4)
  • Date: 09/18/2023
  • Requested Allocation: $275,620(67,045DOT by the EMA7 price of 09.18.2023 on subscan)

OpenSquare has been actively developing new features for infrastucture products including Subsquare, dotreasury, Statescan and off-chain voting. This proposal is for 2023 Q2 and Q3 maintenance of these products, and a new batch of features to develop.


The maintenance request contains 3rd infrastructure services(servers, email services, domains) and labor cost for deployment maintenance, code refactor, bug fixes, UI tweaks, small features enhancement, etc.


Hetzner servers:

  • Subsquare(kusama, polkadot, rococo, collectives and westend collectives): 2 * CX41 * 6 monthes.
  • Dotreasury(kusama, polkadot):1 * CX41 * 6 monthes.
  • Statescan(kusama, polkadot, statemine, statemint, westmint, collectives, westend collectives): 5 * CX41 * 6 monthes, abount 4T volume * 6 monthes.
  • Off-chain voting: 1 * CPX41 * 6 monthes.
  • Development and test: 1 * CX41 * 6 monthes.
Server Amount per month Months Total
CX41 9 €152.1 6 €912.6
CPX41 1 €24.7 6 €148.2
Volume ≈ 4T €176 6 €1,056
Total in dollar $2,283

Ali email service

We used a email resource package cost ¥81, ≈ $11.2.

IPFS pin service

We used the service from $2.74.


Domain scope Cost 2023 $13.95 2023 $47.99 2023 $47.99 2023 $47.99
Total $157.92

Infrastructure summary

Item Cost
Servers €2,283
Ali email service $11.2
IPFS pin service $2.74
Domains $157.92
volatility and currency translation for servers and domains $245.5
Total $2700

Note: we paid server and domain bills with Chinese CNY, and it costed us additional fees because of currency translation and token price volatility. This is only requsted for server/domain bills, no developers payment.

Code and deployments maintenance

The maintenance work includes:

  • Server deployment maintenance: daily server monitor, upgrading products versions, emergency handling, etc.
  • Necessary context information collection, like dotreasury proposal/projects context collection and update, statescan asset information.
  • Collaboration with other teams to provide api support and some governance explanation.
  • Codebase maintenance: code refactor, bug fixes, UI tweaks, dependency upgrading, etc.

We will list the main work for codebase maintenance by products.


  • Upgrade dependency of next.js to v13 and other dependencies including polkadot.js api.
  • Enhance refernda call business extraction, show related call parameters and show system#remark content with markdown previewer.
  • Refactor page routes to make them more in line with RESTful rules.
  • Improve various detail page performance by subscribing proposal state and timeline while previously we used api loop call.
  • Subscribe info of democracy/referenda referendum and refactor related pages/components, so tally will be updated automatically.
  • Fix page crashes due to kusama removed democracy and tips pallet.
  • Add on-chain events subscription warning tip on overview panel.
  • Introduce tailwind dependency and refactor the way to define styles.
  • Show warning components when  OpenGov referendum preimage is missing.
  • Add another view for OpenGov referendum confirmation, so we can zoom in to see the latest confirmation progress.
  • Add account social links from identity settings on profile page.
  • Add voting countdown component for democracy referendum.
  • Support timeline item link to block.
  • Add treasury award countdown component on proposal detail page.
  • Show referenda aye/nay votes from SplitAbstain vote.
  • Update votes automatically when OpenGov/democracy referendum tally changed.
  • Refactor child bounty claim related components, and make child bounty claim button enabled only when it's mature; Allow anyone to claim a child bounty when it's mature.
  • Improve fellowship and referenda navigation components to better show their correlation.
  • Fix page crashes due to kusama removed democracy and tips pallet.
  • Fix various style problems and bugs.

Please check the changelog and commits for more details. We will request 10 FTE equivalent work per month for subsquare, totally 60 FTE.


  • We changed the fronted site build tool from create react app to vite.
  • Update funded projects information, and update context for treasury proposals.
  • Upgrade dependencies and remove useless ones.
  • Fix OpenGov referendum call business extraction. Previously we extract the business only when referendum submitted, but the preimage maybe uploaded after that. We handled this case in this fix.
  • Fix income calculation on the treasury mountain chart by taking the transfer into calculation.
  • Save latest status to the treasury mountain chart. Previously we only saved data at a week start point.
  • Add a slider to zoom in/out treasury mountain chart.
  • Fix income scan with the transfer income by XCM.
  • Fix scan scripts for missed treasury proposals.

Please check commits for more details. We will request 6 FTE equivalent work per month for dotreasury, totally 36 FTE.


  • Upgrade dependencies.
  • Monitor and maintain deployments to kusama, polkadot, statemine, statemint, westmint, collectives and westend collectives.
  • Fix kusama governance panel crash by removal of democracy pallet.
  • Fix asset owner with assets pallet scan.
  • Improve ci to for code lint and tests.

Please check commits for more details. We will request 3 FTE equivalent work per month for statescan, totally 18 FTE.

Off-chain voting:

  • Upgrade dependencies and maintain the deployments.
  • Support quorum pre-config for a space.
  • Support democracy delegation config for a space.
  • Setup ci for code lint.
  • Fix various componenets styles.

Please check commits for more details. We will request 2 FTE equivalent work per month for off-chain voting, totally 12 FTE.

Total cost

Item Detail Cost
3rd infrastructure services $2700
Subsquare maintenance 60 FTE $30,000
Dotreasury 36 FTE $18,000
Statescan 18 FTE $9,000
Off-chain voting 12 FTE $6,000
Total $65,700

Note: We use $500($62.5/hour) for each FTE(8 hours) maintenance cost.

New features development


Off-chain discussion data decentralization

We proposed SIMA spec several monthes ago to achieve the governance off-chain discussion data decentralization. It takes advantage of system#remark and IPFS to achieve the goal. Generall the work will include:

  • Manage user signed data and upload them to IPFS.
  • Organize IPFS CIDs and submit them to the correseponding chain with system#remark extrinsic.
  • Scan scripts for submitted remarks(CIDs).
  • IPFS content fetching to get content by CIDs.
  • Populate scanned data to business database and render it to fronted pages.
  • Integrate the fronted interaction into current implementation.

We will first implement it for post discussions and OpenGov referenda, and then observe how it will affect the governance process.


Delegation UI enhancement

We've implemented some simple interfaces to show users' delegation status and help them to set delegations. We'd propose to enhance this feature with following user stories.

  1. As a user, I can select an address from a list of active governance participants to delegate. I should see their voting history, their governance participation rate, and their announcement, so I can make a correct decision.
  2. As a active voter who want to attract more delegation to me, I want to public an announcement to show my voting strategy, so token holders can decide whether they will delegate their tokens to me.

We will implement a more advanced UI for users better delegation experience.

  • There will be a dashboard to show current delegation statistics.
  • There will be a list of delegatee with their announcement, and users can sort them with various ways.
  • Any token holder can publish their announcement to attract delegations, and the data CID will be stored on chain with system#remark.
  • Token holders can view their delegation and been delegated status in a more direct way.


On-chain governance deposit management

Some amount of tokens have to be reserved if users participate some kinds of governance activities. For example:

  • Fund will be reserved after a user propose a treasury proposal.
  • A user has to deposit decision deposit to make a OpenGov referendum enter into decision period.
  • Some fund will be reserved if a bounty curator accept the curation.

We will implemente interfaces to help user view funds locked due to governance, and help them to submit on chain calls to refund the locked tokens.

Whales statistics

Whales are perfecting more important roles to affect final result of referenda, but it's hard for the community to summarize all whales and their behaviors. We propose to implement interfaces to help the community to track whales' votes. We can see a list of whales which will show there balance, votes count, aggregated votes balance, and their votes history.

Other enhancement features

  • To help user better view the call info on various referendum/proposal pages, we will implement another call data tree view which is similar with that on polkadot apps. We believe it's a good supplement to current table and JSON view.
  • [Delivered] Add circle packing view(votes bubble) to show democracy/referenda votes distribution.
  • [Delivered] Show OpenGov referendum confirmation attempts info so users can see the complete confirmation process in the whole decision period.
  • [Delivered] Support search on the votes popup, so users can find whether an address have voted a referendum.
  • Notification through telegram. Currently we support notification by email, and telegram support will provide users another choice to get notifications in time.
  • Bounty & child bounty info enhancement.
    • Show bounty address on the detail page.
    • Show bounty current balance, how much spent on the detial page.
  • Profile page enhancement.
    • Show user balances on profile page, so users can see the vote weight of this user.
    • Multisig check. An address maybe a signatory of one or more multisig addresses. We will scan data on-chain and extract signatories of all multisig addresses, and then show all the multisig addresses which an address is a signatory.
  • My vote view and management on referendum detail page. Previously we only show the on-chain storage vote info. In this proposal, we will support showing the info even it's removed, and we will also support removing vote.


Development Estimated hours memo
Off-chain discussion data decentralization 640 4 FTE * 4 weeks
Delegation UI enhancement 480 4 FTE * 3 weeks
On-chain governance deposit management 240 3 FTE * 2 weeks
Whales statistics 160 2 FTE * 2 weeks
Other enhancement features 640 4 FTE * 4 weeks
Total 2160


Separate deployments for chains

We'd plan to extend dotreasury to support the treasury statistics data in the whole dotsama ecosystem. Development plans includes:

  • Separate the deployments for each chain, so there will be, So it will become easier to integrate more chains with less code coupling.
  • Implement a page to show the whole eco treasury statistics on It will sum all chains' treasury data and show them in various visualized components.

Othe features

  • Previously we implemented spents by periods, we propose to implement income by perious, so we can know both the income/output data by periods.
  • Add a failed tab to treasury proposals list, so we can know which proposals are failed.


Development Estimated hours memo
Separate deployments for chains and sum the whole treasury of deployed chains 240 3 FTE * 2 weeks
Othe features 72 3 FTE * 3 days
Total 312


Off-chain voting

  • Dark mode. As more projects get to use off-chain voting, and there are more users, we think it makes sense to implement dark mode for better user experience.
  • Proposal template. This feature will enable space admins set a template for proposals to be created, which will make proposers follow space community rules for new proposals.


Development Estimated hours memo
Dark mode 80 2 FTE * 1 weeks
Othe features 72 3 FTE * 3 days
Total 152

Total budget

Please check above sections for details of each item. Taking hour rate $80, please check following budget list.

Items Estimated hours Budget memo
Maintenance 2023 Q2 and Q3 $65,700
Subsquare new features 2,160 17,2800
Dotreasury new features 312 24,960
Off-chain voting new features 152 12,160
Total 275,620
  • Beneficiary: 12sNU8BXivMj1xQmcd4T39ugCyHjmhir8jkPqfAw5ZDESrx4(identity is OpenSquare)
  • We will update the allocated DOT by the price of subscan on the submission date.

Possible questions

Why the amount is greater than last propolsal?

  • We merged maintenance proposal and new features development into one proposal to reduce community votes. We believe the proposed new features are beneficial to the whole ecosystem.
  • We added off-chain voting into maintenance request and propose to implement darkm mode for it, as it's accepted by teams for some kinds of off-chain governance scenarios.

How many users are visiting your products?


What's your longterm plan and why your team?

We're a group of experienced developers who are dedicated in the dotsama ecosystem for more than 4 years. Our longterm vision is to build a decentralized collaboration network in web3. We are focusing on infrastructure building because we found there are not good enough infrastructure products in the ecosystem and they are necessary to all further products in the web3 world based on polkadot. Main topics we are focusing include data indexing, anaylyzing and visualization which we think will help the whole ecosystem understand how polkadot works.


No comments here