From dc7367d76860fa99819eda5f34783abfadf18049 Mon Sep 17 00:00:00 2001 From: Nikos Kontakis Date: Tue, 20 Aug 2024 23:00:12 +0200 Subject: [PATCH] Fix the network switch --- src/App.tsx | 27 +-- src/consts.ts | 2 - src/contexts/DelegateesContext.tsx | 17 +- src/contexts/NetworkContext.tsx | 59 +++++++ src/header.tsx | 49 ++++-- src/kusama.json | 274 +++++++++++++++++++++++++++++ src/navigation.tsx | 9 +- 7 files changed, 404 insertions(+), 33 deletions(-) create mode 100644 src/contexts/NetworkContext.tsx create mode 100644 src/kusama.json diff --git a/src/App.tsx b/src/App.tsx index b102752..e5a4a7d 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -12,6 +12,7 @@ import { ReDotProvider, ReDotChainProvider } from '@reactive-dot/react' import { Suspense } from 'react' import { AccountContextProvider } from '@/contexts/AccountsContext' import { DelegateeContextProvider } from '@/contexts/DelegateesContext' +import { NetworkContextProvider } from './contexts/NetworkContext' const App = () => { const [settings] = useLocalStorage('fellowship-settings', { @@ -24,19 +25,21 @@ const App = () => { - - - -
- -
-
- + + + + +
+ +
+
+ +
-
- - - + + + + diff --git a/src/consts.ts b/src/consts.ts index ecd105f..8cd428d 100644 --- a/src/consts.ts +++ b/src/consts.ts @@ -6,8 +6,6 @@ const DappName = 'Polkadot DelegIt Dashboard' const PolkadotUrl = 'https://delegit-xyz.github.io/dashboard' const GithubOwner = 'delegit-xyz' -export const DelegeeList = - 'https://raw.githubusercontent.com/novasamatech/opengov-delegate-registry/master/registry/polkadot.json' const SideMenuMaximisedWidth = 185 const SideMenuMinimisedWidth = 75 diff --git a/src/contexts/DelegateesContext.tsx b/src/contexts/DelegateesContext.tsx index 1f185f4..dff2b98 100644 --- a/src/contexts/DelegateesContext.tsx +++ b/src/contexts/DelegateesContext.tsx @@ -1,7 +1,13 @@ /* eslint-disable react-refresh/only-export-components */ import { createContext, useContext, useEffect, useState } from 'react' -import delegateesList from '@/polkadot.json' +import polkadotList from '@/polkadot.json' +import kusamaList from '@/kusama.json' +import { useNetwork } from './NetworkContext' // import { dotApi } from '@/clients' +export const DelegeeListPolkadot = + 'https://raw.githubusercontent.com/novasamatech/opengov-delegate-registry/master/registry/polkadot.json' +export const DelegeeListKusama = + 'https://raw.githubusercontent.com/novasamatech/opengov-delegate-registry/master/registry/kusama.json' type DelegateesContextProps = { children: React.ReactNode | React.ReactNode[] @@ -25,11 +31,16 @@ const DelegateesContext = createContext( ) const DelegateeContextProvider = ({ children }: DelegateesContextProps) => { + const { network } = useNetwork() const [delegetees, setDelegatees] = useState([]) useEffect(() => { - setDelegatees(delegateesList as DelegateeProps[]) - }, []) + setDelegatees( + (network === 'polkadot' + ? polkadotList + : kusamaList) as unknown as DelegateeProps[], + ) + }, [network]) // Votes thingy - pause for now // useEffect(() => { diff --git a/src/contexts/NetworkContext.tsx b/src/contexts/NetworkContext.tsx new file mode 100644 index 0000000..6b0354d --- /dev/null +++ b/src/contexts/NetworkContext.tsx @@ -0,0 +1,59 @@ +/* eslint-disable react-refresh/only-export-components */ +import { createContext, useContext, useEffect, useState } from 'react' +import { dot, ksm } from '@polkadot-api/descriptors' +import { PolkadotClient, TypedApi, createClient } from 'polkadot-api' +import { getWsProvider } from 'polkadot-api/ws-provider/web' + +type NetworkContextProps = { + children: React.ReactNode | React.ReactNode[] +} + +// const polakdotEndpoints = ['wss://rpc.ibp.network/polkadot'] +// const kusamaEndpoints = ['wss://rpc.ibp.network/kusama'] + +export type NetworkProps = 'polkadot' | 'kusama' + +export interface INetworkContext { + network: NetworkProps + setNetwork: React.Dispatch> + client: PolkadotClient | undefined + api: TypedApi | undefined +} + +const NetworkContext = createContext(undefined) + +const NetworkContextProvider = ({ children }: NetworkContextProps) => { + const [client, setClient] = useState() + const [api, setApi] = useState>() + const [network, setNetwork] = useState('polkadot') + + useEffect(() => { + let cl: PolkadotClient + let typedApi: TypedApi + if (network === 'polkadot') { + cl = createClient(getWsProvider('wss://rpc.ibp.network/polkadot')) + typedApi = cl.getTypedApi(dot) + } else { + cl = createClient(getWsProvider('wss://rpc.ibp.network/kusama')) + typedApi = cl.getTypedApi(ksm) + } + setClient(cl) + setApi(typedApi) + }, [network]) + + return ( + + {children} + + ) +} + +const useNetwork = () => { + const context = useContext(NetworkContext) + if (context === undefined) { + throw new Error('useNetwork must be used within a NetworkContextProvider') + } + return context +} + +export { NetworkContextProvider, useNetwork } diff --git a/src/header.tsx b/src/header.tsx index 5d6650e..4bd5437 100644 --- a/src/header.tsx +++ b/src/header.tsx @@ -12,19 +12,21 @@ import { routes } from '@/lib/utils' import { useWalletDisconnector } from '@reactive-dot/react' import { Settings2, PanelLeft } from 'lucide-react' -import { - Menubar, - MenubarContent, - MenubarItem, - MenubarMenu, - MenubarSeparator, - MenubarShortcut, - MenubarTrigger, -} from '@/components/ui/menubar' +// import { +// Menubar, +// MenubarContent, +// MenubarItem, +// MenubarMenu, +// MenubarSeparator, +// MenubarShortcut, +// MenubarTrigger, +// } from '@/components/ui/menubar' import { useAccounts } from './contexts/AccountsContext' import { useEffect } from 'react' +import { useNetwork } from './contexts/NetworkContext' export const Header = () => { + const { network, setNetwork } = useNetwork() const { accounts, selectAccount, selectedAccount } = useAccounts() const [, disconnectAll] = useWalletDisconnector() @@ -67,7 +69,7 @@ export const Header = () => {
- {/* TODO: split submenu based on routes */} + {/* TODO: split submenu based on routes File @@ -82,9 +84,32 @@ export const Header = () => { Print - + */}
-
+
+ + + + + + setNetwork('polkadot')} + > + Polkadot + + setNetwork('kusama')} + > + Kusama + + + {!accounts.length && ( Connect )} diff --git a/src/kusama.json b/src/kusama.json new file mode 100644 index 0000000..885c46a --- /dev/null +++ b/src/kusama.json @@ -0,0 +1,274 @@ +[ + { + "address": "GqPDeJBexSsvEq6gBzrnMCn7KNYbzn9bX9ePCjEDN3EikoV", + "name": "Alex PromoTeam", + "image": "https://raw.githubusercontent.com/novasamatech/opengov-delegate-registry/master/images/IMG_5814%204.JPG", + "shortDescription": "Polkadot Head Ambassador | PromoTeam Member | Validator ", + "longDescription": "PromoTeam is a diverse team of specialists and blockchain activists with various skills that actively promotes the Polkadot ecosystem. Our main activity is content production, offline and online event organization, community management and creation, product marketing, development of ambassador programs, network validation.", + "isOrganization": false + }, + { + "address": "F1wAMxpzvjWCpsnbUMamgKfqFM7LRvNdkcQ44STkeVbemEZ", + "name": "Polkassembly", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/polkassemblylogo192.png", + "shortDescription": "Governance platform for polkadot ecosystem", + "longDescription": "We are building governance platform for Polkadot & Kusama ecosystem", + "isOrganization": true + }, + { + "address": "H3cSNjAW86NfTecufGPhxutea8KrEcZdPa4XgVKfhTMugej", + "name": "Novasama Technologies", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/novasama_technologies.png", + "shortDescription": "Company behind Nova Wallet", + "longDescription": "We are building high quality and community-oriented apps for Polkadot & Kusama ecosystem", + "isOrganization": true + }, + { + "address": "DCZyhphXsRLcW84G9WmWEXtAA8DKGtVGSFZLJYty8Ajjyfa", + "name": "ChaosDAO", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/chaosdao.png", + "shortDescription": "Community org with a dedicated internal voting process and multisig for OpenGov referenda", + "longDescription": "## About us\nChaosDAO is a curated community of Polkadot & Kusama natives. Our members are involved with every aspect of the ecosystem as developers, community organizers, [Twitter](https://twitter.com/ChaosDAO) and YouTube educators, and as ordinary retail investors.\n\n## Voting Process\nAs part of our own organization’s evolution we have developed a robust [internal governance mechanism](https://github.com/ChaosDAO-org/ChaosDAO_docs/blob/main/governance/OpenGov.md) to determine how our community will publicly vote on referenda. By voting on behalf of the long-time Dotsama community we strive to ensure that all votes we cast reflect the true best interests of our native ecosystem.\n\n![ChaosDAO Manifesto image](https://raw.githubusercontent.com/ChaosDAO-org/ChaosDAO_docs/main/.gitbook/assets/ChaosDAO_Manifesto_600px.jpg)", + "isOrganization": true + }, + { + "address": "Day71GSJAxUUiFic8bVaWoAczR3Ue3jNonBZthVHp2BKzyJ", + "name": "Anton Khvorov", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/day_7.jpg", + "shortDescription": "CEO @ Novasama Technologies", + "longDescription": "## About me\nMy name is Anton Khvorov, I’m CEO of [Novasama Technologies](https://novasama.io) & Head of Engineering @ [Nova Wallet](https://novawallet.io).\nPassionate to build new innovative & amazing\nproducts, with a mindset to make the world a better place.\n\n## Voting strategy \n\nI do support referendums focused on the core values of Polkadot (decentralization, democracy, interoperability, reliability), as well as referendums that are focused on brining the power of Polkadot to mass adoption (products with great UX, open source, etc). \n\nI do not support entities that are active against any of these values and/or human rights. \n\nI often express my opinion on Polkassembly, especially in the case of controversial referendums.\n\n## Incentives\nEach month I’m going to mint & send NFT with my cat to each of my fellow delegators! 🐊\n\n![](https://i.ibb.co/5YtW1hn/Pelmeshka-small.jpg)\n\n## Stay in touch!\nIf you have any questions regarding my votes, feel free to contact me via email: anton@novawallet.io", + "isOrganization": false + }, + { + "address": "HqRcfhH8VXMhuCk5JXe28WMgDDuW9MVDVNofe1nnTcefVZn", + "name": "Will | Paradox | ParaNodes.io", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/paradox.png", + "shortDescription": "Former Kusama Council Member & Validator Operator at ParaNodes.io", + "longDescription": "## About me\nMy name is Will and I was a member of Kusama's council. My council experience allows me to better understand the technical aspects of governance and appreciate the general 'values' of the chain.\n\nI am also a well known within the validator community and operate validators under the moniker [ParaNodes.io](https://paranodes.io).\n\nIf you'll like to hear my thoughts on governance, please tune in to [AAG](https://www.youtube.com/playlist?list=PLtyd7v_I7PGkXbJmKojrZ1KXwspR1JkpV) I make live appearances on the first Monday of each month.", + "isOrganization": false + }, + { + "address": "EcRZnQmd7NHLRYNFnHiiWHm1Xd1VSEZufB7ZviGTX25xoDh", + "name": "😐 ghost | 🪬", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/ghost-192.png", + "shortDescription": "COO @ 🪬", + "longDescription": "I am who I am because of the choices I made yesterday.\n– First Lady Eleanor Roosevelt\n\nFor Polkadot to succeed, we need to take stewardship of the ecosystem seriously and work to build processes and conventions that enable us to make decisions that benefit users. Growth is enabled by superior technology, but that is not sufficient; it will require that we successfully navigate the needs of stakeholders in the real world, including technologists, businesses, organizations, governments, and, ultimately, regular citizens worldwide.", + "isOrganization": false + }, + { + "address": "GqC37KSFFeGAoL7YxSeP1YDwr85WJvLmDDQiSaprTDAm8Jj", + "name": "Adam Clay Steeber", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/adam_clay_steeber_nova.png", + "shortDescription": "My name is Adam. I have a Bacholor of Science degree in economics from the University of Minnesota Twin Cities. I operate a Kusama validator node, build dApps, and mint NFTs.", + "longDescription": "[**History of my votes here.**](https://docs.google.com/spreadsheets/d/1zxyKnwo7arFT7vloHbBzykNDfhrAuIhhz5rNSp0A4OU/edit?usp=sharing)\n\nI have been an active member of the Kusama ecosystem since April 2021 and started my web3 career in November of 2021. My primary focus is on Kusama and its parachains and my main goal in web3 is to bring revolutionary technology to my sphere of influence and educate as many individuals as possible about the web3 paradigm.\n\nI approach governance referenda with some simple questions:\n\n- Does the referendum uphold the values of innovation, integrity, and transparency?\n\n- Does the referendum bring value to the ecosystem as a whole?\n\n- Has the proposer shown competence in whatever project or on-chain action they are proposing?\n\n- If the referendum is a Treasury spend, has the proposer shown financial competence and have they meticulously budgeted their ask?\n\n- Did the proposer actively engage with the community and earnestly implement feedback before submitting their referendum on chain? Is the proposer actively engaging with the community after they have submitted their referendum on chain?\n\n- Does the proposer show competence in submitting on chain referendum successfully (i.e. are they avoiding spamming governance tracks)?\n\n- Has the proposer been modest in submitting referenda before?\n\nLearn more about me and my projects: [Twitter](https://www.twitter.com/adamsteeber1) | [Website](https://www.steebersolutions.com) | [Project Gweihir](https://github.com/Gweihir) | [Green Bay Dollar](https://www.greenbaydollar.com) | [RMRK DAO](https://github.com/rmrkdao)", + "isOrganization": false + }, + { + "address": "GU77syTfPXdzKCuqASura9ZKgxmD2rEDhj89c9TGL6vc9Qw", + "name": "Math Crypto", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/mathcrypto.png", + "shortDescription": "Active OpenGov contributor | 1kv validator", + "longDescription": "We run [validators for Kusama and Polkadot](https://www.math-crypto.com/) within the 1kv programme. From the beginning of OpenGov, we have contributed to governance by participating in discussions, diligently voting on each proposal, and making user-friendly tools for participating in OpenGov. \n Delegation to MathCrypto means that you care about proposals that focus on a decentralized but secure validator network, developing novel use-cases for Dotsama, and cost efficient education and media content.", + "isOrganization": false + }, + { + "address": "CrbJuFZWjY3yft424EMTY9hdbWoU878DFs74v3a8nNDeKJD", + "name": "Leemo", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/Leemo.png", + "shortDescription": "Hi I'm Leemo! A frequent governance enjoyoooor and active Polkadot ecosystem community member.", + "longDescription": "## About Me\n\n😻 Chief Nice Officer at Nova Wallet\n\n🤖 Doing cool shit with Robonomics\n\n☯️ Co-founder of ChaosDAO\n\n🌅 Co-founder of GmOrDie\n\n🐍 Councillor at HydraDX & Basilisk\n\nI'm an active Polkadot ecosystem governance participator, and often share my insights over at [my Twitter](https://twitter.com/LeemoXD), within various communities such as ChaosDAO, Polkahaus, and the Polkadot/Kusama directions channel.\n\nI frequent the weekly episodic podcast [Attempts at Governance](https://www.youtube.com/watch?v=hboOYAmindk&list=PLtyd7v_I7PGkXbJmKojrZ1KXwspR1JkpV), where I often give updates about governance topics and participate in discussion.\n\nI'm often looking for new ways for communities to excel in Governance and have lead the implementation and continued operations of ChaosDAO's governance participation. You can find out more about this setup [in this video](https://www.youtube.com/watch?v=MqY6yU-YLO0).\n\n## Voting Methodology\nI typically have been delegating most of my voting power to ChaosDAO – however, depending on the interest of the community to delegate to me, I will vote independently also, and will likely follow a similar direction to that of ChaosDAO.", + "isOrganization": false + }, + { + "address": "HERTWZK4ZpmuXsEgW3UfL5x27XCdT5fE9x4QRbyNWifafdU", + "name": "Stake.Plus", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/stakeplus.png", + "shortDescription": "Validation, Collation and Infrastructure Services", + "longDescription": "We are committed to providing quality infrastructure services for the Polkadot ecosystem on owned hardware powered by renewable energy.", + "isOrganization": true + }, + { + "address": "GCMGu8sjEuEZuMZavo5PLvAhr8fJXAty76jDV1YPquG9erp", + "name": "CoinStudio", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/coinstudio.png", + "shortDescription": "Kusama and Polkadot Validator, Governance participant ", + "longDescription": "Check our active attempts to improve the Governance process https://kusama.polkassembly.io/post/2431", + "isOrganization": true + }, + { + "address": "HWyLYmpW68JGJYoVJcot6JQ1CJbtUQeTdxfY1kUTsvGCB1r", + "name": "Sik | crifferent.de", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/sik-crifferent.png", + "shortDescription": "DotSama native node operator and community supporter", + "longDescription": "## About Sik\nFounder of [Crifferent Staking Services](https://crifferent.de) \n\nDeveloper for [Staking Facilities](https://stakingfacilities.com) \n\nMember of [DOT Validator Alliance DAO](https://dotvalidators.org) \n\nTeam member @[HydraDX](https://hydradx.io)/[Basilisk](https://bsx.fi) \n\nRPC provider @[UnitedBloc](https://unitedbloc.com/) \n\nMember of the [Infrastructure Builders Program](https://ibp.network/)\n\n---\n\n**From within the ecosystem - for the ecosystem!** \n\nI'm evaluating proposals by taking different views into consideration. I'm not only looking at it from the perspective of a community member, but also as a developer/founder/infra-provider/human being. \n\n---\n## Contact me \n\n@dev0_sik @[Twitter](https://twitter.com/dev0_sik) \n\n@dev0_sik @[Telegram](https://t.me/dev0_sik) \n\nsik#3706 @[Discord](https://discord.com/) \n\n@dev0_sik:matrix.org @[Element](https://element.io/) \n\n[simon.kraus@crifferent.de](mailto:simon.kraus@crifferent.de) \n\nWhatsApp/Callboy +49 157 377 309 02", + "isOrganization": false + }, + { + "address": "HBtJ7Poz9ya9pzS8AXK16tAqJ1qxXbVspkM9E6p57BJ1hJs", + "name": "Abdulbee", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/Abdulbee_Nova.jpg", + "shortDescription": "Polkadot Community Moderator, Anti-Scam executive team member, Head ambassador for content, a Rust afficionado", + "longDescription": "## About Abdulbee\n\nMy name is Abdulbasit (Abdulbee), a Rust afficionado/technical writer who currently contributes full-time in the ecosystem as a Polkadot head ambassador for content, an executive team member of the Polkadot anti-scam team, a community moderator of Polkadot’s official channels, and a QA officer at Dot.alert().\n\nI also currently curate two bounties (the anti-scam bounty and the community moderation team bounty).\n\nMy ecosystem philosophy is that good reputation (within or outside the ecosystem) is a good internal incentive for successful deliveries and that a key criteria to take into consideration when making governance decisions is the reputation of teams/individuals who submit proposals via governance. \n\nYou can reach me on discord (abdulbee#4681) or matrix (abdulbee:matrix.org). \n\nThank you!", + "isOrganization": false + }, + { + "address": "FLKBjcL1hXtX7PHF5zrVwQTWQSKg7PCMQ5w6ZU7qvQGsvZR", + "name": "KRYPTOSCHAIN", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/KryptosChain_Logo.png", + "shortDescription": "Polkadot and Kusama Content Creator", + "longDescription": "Content Creator for the Polkadot & Kusama ecosystems since late 2020 (soon after launch) and a Crypto Content Creator since 2018 : https://www.youtube.com/c/kryptoschain and on Twitter: https://twitter.com/KryptosChain I'm also an active contributor to Open Governance.", + "isOrganization": false + }, + { + "address": "Hf8C626KBAjitMV7w8AhQWDCiPgUU47htEwbomq5mDMKeyL", + "name": "bLd", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/bLd.png", + "shortDescription": "Web3 buildooor @ Astar Network & validator", + "longDescription": "## About bLd\n\nDevops engineer at [Astar Network](https://astar.network) \n\nValidator at [bLd Nodes](https://bldnodes.org) \n\nMember of [DOT Validator Alliance DAO](https://dotvalidators.org) \n\nOrganizer at [ParisDotComm](https://parisdotcomm.org) \n\nCurator for [IBP program](https://ibp.network) \n\n---\n\nVoting constantly with conviction, I believe governance is the affair of everyone and public blockchain is a common good.\nMy votes represent my personal opinions, not in any case the views of any of my organisations.\nI happily explain my votes to anyone reaching and change my vote when I'm proved mistaken. \n\n## Contact \n\n@[Twitter](https://twitter.com/bLd77) @bLd77 \n\n@[Telegram](https://t.me/bLd759) @bLd759 \n\n@[Github](https://github.com/bLd75) @bLd75", + "isOrganization": false + }, + { + "address": "H1tAQMm3eizGcmpAhL9aA9gR844kZpQfkU7pkmMiLx9jSzE", + "name": "TurboFlakes", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/turboflakes.png", + "shortDescription": "We Validate, Collate, Build and Vote for the Polkadot future", + "longDescription": "## About us\n\nTurboFlakes builds end-user tooling and provides validators and collators for the Polkadot ecosystem since 2021. We also provide RPC infrastructure powered by 100% renewable energy for the common good.\n\nWe believe in the Web3 vision of a decentralized web. We love experimentation and ideation.\n\nIn Open Governance we participate and support proposals that overall would bring joy, evolution and success to the Polkadot ecosystem.\n\nRead more about us at https://turboflakes.io", + "isOrganization": true + }, + { + "address": "JA9TjkzZzsJnBC8igbnLZ2WYvgsYHd6fu54QJAViqnADoZq", + "name": "DOZENODES", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/dozenodes.png", + "shortDescription": "Kusama Validator Operator www.dozenodes.com", + "longDescription": "## About me\n\nMy name is Marcin and I'm the main technical guy behind dozenodes.com.\n\nI'm an active memeber of communities for multiple project in dotsama ecosytem\n\n I have vast technical expirience which allows me to properly assess proposed changes.\n\n Feel free to contact me via contact section of dozenodes.com.", + "isOrganization": false + }, + { + "address": "FSRywMqAT92LJ8ihaQ7w1N8dXvLau53nEQx3EmNdGns2QAY", + "name": "Kobredabre", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/KobreDabre.jpg", + "shortDescription": "Missed referenda? Not an option", + "longDescription": "Member of Kusama ecosystem for more than a year, not a single missed referendum vote during that time (Gov1 or Gov2). Dedicated voter and voting with understanding. ", + "isOrganization": false + }, + { + "address": "DG8Q1VmFkmDwuKDN9ZqdB78W6BiXTX5Z33XzZNAykuB5nFh", + "name": "DrCAO | Web3 Education And Investment", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/logo_WEAI.png", + "shortDescription": "DrCAO - Dotsama Content Creator", + "longDescription": "Content creator for dotsama and long term supporter: https://www.youtube.com/channel/UCi8YP0VB_gfOLtmp0sgLYew and on Twitter: https://twitter.com/cao_lab. I am mod/CM in few parachain projects.", + "isOrganization": false + }, + { + "address": "HPD6vbDL87yEFkKcpzLKuTbkQrvQXWMwbEzegvKvYDHVcT2", + "name": "AIWeb3 community", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/logo_aiweb3_192_192.png", + "shortDescription": "AIWeb3 Chinese community", + "longDescription": "The mission of the AIWeb3 Chinese community is to continue building the Dotsama community, supporting Chinese content creators to focus on content creation related to Dotsama, establishing connections with different parachain projects, and providing the latest information about Dotsama. Chinese content creators can focus on researching and producing high-quality content, including dubbing, translation, and original content within Dotsama. Additionally, we will allocate more resources to support early stage content creators, helping them establish their audience and brand.", + "isOrganization": true + }, + { + "address": "EAMbhBVW7SpJfH332uABbDNtsbNnaZBBXeGJwdfxkxkPm6o", + "name": "Dotcast", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/Dotcast%20Expect%20Chaos.png", + "shortDescription": "Dotcast Community", + "longDescription": "Dotcast believes that Open Gov is a key factor related to adoption and participation in governance should be encouraged among our community.", + "isOrganization": false + }, + { + "address": "CrhqZ5oPjYSA92ZjxA1jguCrjKvjT3jR4HoHbuHbrVwEqB6", + "name": "Georgi 🧩", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/georgi.png", + "shortDescription": "As a committed Kusama member, I have a deep understanding of governance and am an impartial advocate for treasury funds.", + "longDescription": " ## About me, \n\n As a dedicated member of the Kusama ecosystem, I am passionate about the potential of blockchain technology to transform society.\n\n I am an advocate for transparency, accountability, and fairness in governance, and my impartiality allows me to make informed decisions that benefit the ecosystem as a whole.\n\n As the founder of Polkadot Prodigy and the development community in Bulgaria, \n\n I am committed to fostering collaboration, innovation, and growth within the Polkadot ecosystem.", + "isOrganization": false + }, + { + "address": "EpeeGt1x3kju8TZmfcaHTkBwTn7eyq4Sxy8Z3dPU88chMcN", + "name": "CertHum, Inc.", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/CertHum%20Logo3-192x192.png", + "shortDescription": "CertHum.com - Community Validator", + "longDescription": "CertHum is a community validator that provides Web3 infrastructure in support of decentralization.", + "isOrganization": true + }, + { + "address": "DDbQ9YnjeLS6DvZgvTgFvttnqJZrD12gVq4889yh9opXVS6", + "name": "Amforc", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/amforc-Icon_rund_192x192.png", + "shortDescription": "Independent and experienced staking provider from Switzerland", + "longDescription": "## Voting Methodology\nWe are strong believers in a free market, and focus on the protection of privacy, political freedom, and economic freedom for the long-term growth of the network.\n\n## About us\nAmforc is a bootstrapped company based in Switzerland, and is exclusively committed to the Polkadot ecosystem. We run a hybrid-cloud setup in combination with our own data center (colocation) in a former military bunker. Our expertise covers the areas of IT infrastructure and security, legal and regulatory matters, as well as tokenomics and game theory.", + "isOrganization": true + }, + { + "address": "ESQzLXFRon3h5hUfNN9QTSQQTEzto5XNTGxF3g1myZELwX6", + "name": "Polkadotters", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/polkadotters.png", + "shortDescription": "Polkadotters - community validators and media house", + "longDescription": "We started in Polkadot ecosystem in 2020 by creating the first Czech & Slovak [Polkadot community](https://twitter.com/Polkadotters1), becoming ambassadors for Polkadot and various ecosystem projects and by educating the community about this wonderful ecosystem and its parachains.\n\n To this day, we have more than 200 articles and reviews published with more than 1500 followers on our [Medium](https://polkadotters.medium.com/)! But not only that, we are also one of the first community validators on both Polkadot and Kusama. Besides being active on the relay chain, we also run collators on most of the parachains, founded [DOT Validator Alliance](https://dotvalidators.org/) and recently became members of [United Bloc](https://unitedbloc.com/) and [IBP](https://dotters.network/).\n\n As we are quite active in the ecosystem, governance is our true passion and we take our job really seriously - and given our experience activities, we believe that we are quite suitable for the job.", + "isOrganization": true + }, + { + "address": "FcjmeNzPk3vgdENm1rHeiMCxFK96beUoi2kb59FmCoZtkGF", + "name": "Staker Space", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/staker-space.png", + "shortDescription": "Staker Space independent node operator and community member", + "longDescription": "## About Staker Space\nWe are an independent node-operator group called [Staker Space](https://staker.space). We have been a part of Polkadot since the early testnets. As a node operator we maintain highly available and reliable nodes that contribute to the overall health and stability of the network. Besides our specialization we are committed to serving the community and contributing to the growth and success of the network on all fronts.\n\n## Our Strategy\nWith referenda we care for protocol-security and enabling builders and users in the bigger Polkadot ecosystem. We support open networks in order to secure the future of the decentralized systems.\n\n## Contact us\nPlease feel free to contact us.\n\n[Staker Space Discord](https://discord.gg/9AREXj8ESr)\n\n[Staker Space Twitter](https://twitter.com/stakerspace)\n\n[Staker Space Telegram](https://t.me/staker_space)\n\n[Staker Space Email](mailto:hello@staker.space)", + "isOrganization": true + }, + { + "address": "D5khA3qGvd8SDXepSrCGmYRWbNUzdJpjEyg6m1mFT7VtHpw", + "name": "UTSA", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/utsa.png", + "shortDescription": "Validator Polkadot, Kusama, Cosmos | Senior Ambassador Moonbeam", + "longDescription": "𝐔𝐓𝐒𝐀 is a trustworthy and high performance validator that supports public hotspots, relaying, and required documentation. Our team is actively working to develop local crypto communities, create a WIKI in Russian about the Polkadot and Cosmos ecosystems https://teletype.in/@lesnik13utsa. We consider Governance to be the backbone of Polkadot development and pay great attention to it. Your delegations to us = getting the right choice and free time!", + "isOrganization": false + }, + { + "address": "CdvQpMBfaFGz4K5n9ibcQqyCQxGqdpNLVeRVQwuip6hr7Ew", + "name": "muddlebee", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/muddlebee.png", + "shortDescription": "Polkadot Moderator, Ambassador and full time Dev. I actively contribute to, advocate for, and guide the community's growth and progress.", + "longDescription": "As a voting delegate at Kusama, I vote on proposals after deep understanding and discussions with community members. If a proposal is unclear, I abstain from voting. My aim is to ensure informed voting that benefits our community and drives progress.", + "isOrganization": false + }, + { + "address": "JKupaoCtkRzMjCDQJbVMbG1jmEr8ebtoRG7cmxWkc8vM2uZ", + "name": "INFRASTRUCTURE CORPORATION", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/INFRASTRUCTURE_CORPORATION.png", + "shortDescription": "validator | elector | kusama | polkadot", + "longDescription": "[INFRASTRUCTURE CORPORATION](https://infrastructurecorporation.com) provides dependable stake nomination and vote delegation targets. Our mission is to contribute foundation under the emerging digital renaissance by providing robust, innovative, and sustainable digital infrastructures that empower individuals and organizations to participate in the unfolding digital age.", + "isOrganization": false + }, + { + "address": "FZ71egMouzdJJhdougGW3KFiLAXsEeSkYwNn5drXSEvH3FM", + "name": "Alianza Hispana", + "image": "https://raw.githubusercontent.com/nova-wallet/opengov-delegate-registry/master/images/alianza.png", + "shortDescription": "Representamos a la comunidad de habla hispana en el proceso de gobernanza y en la toma de decisiones.", + "longDescription": "Este colectivo está formado por personas del ecosistema de Polkadot y Kusama que cuentan con una pluralidad de perfiles, experiencia en el ecosistema y un fuerte compromiso con el bienestar de la red y sus usuarios, unidos bajo la misión de fortalecer y empoderar a nuestra comunidad en el ecosistema de Polkadot y Kusama. \n[ver mas en el manifiesto](https://cloudflare-ipfs.com/ipfs/QmSW7cLigiMR9wsnmPopE6z4RE1XXdDYd8SebA6A6nwqbJ)", + "isOrganization": true + }, + { + "address": "HyLisujX7Cr6D7xzb6qadFdedLt8hmArB6ZVGJ6xsCUHqmx", + "name": "metaspan", + "image": "https://raw.githubusercontent.com/novasamatech/opengov-delegate-registry/master/images/metaspan-logo-white-on-trans.png", + "shortDescription": "Validating on Polkadot & Kusama. Actively supporting and contributing to the community via development, utils, education, and advocacy.", + "longDescription": "**metaspan** is a trusted network infrastructure provider and validator on Polkadot and Kusama.\n\nWe are a team of experienced engineers and developers with a passion for blockchain technology and the Polkadot ecosystem.\n\nWe are actively involved in the community and contribute to the ecosystem via development, utilities, education, and advocacy.\n\nWe are committed to the long-term success of Polkadot and Kusama and are excited to be a part of the journey.", + "isOrganization": true + }, + { + "address": "HLsPiB2amYFPFYMcYqKxGFLgDUVd4UP1kdA4QdZsH3e91LP", + "name": "Faraday Nodes", + "image": "https://raw.githubusercontent.com/FaradayNodes/opengov-delegate-registry/master/images/faraday.png", + "shortDescription": "Kusama validator. We help you get involved in governance proposals with ease.", + "longDescription": "If you have no time to follow on-chain governance proposals at least delegate your votes to a experienced user.\n\nWe don't think is sensible to pretend the Treasury is a VC Fund so we only support proposals with skin in the game and added value for Kusama.", + "isOrganization": false + }, + { + "address": "FqoyFHg87YVYvRLGRr2M2x3AZ8SKEt4D7vQb9uPFHnCDN66", + "name": "ValidOrange.Net", + "image": "https://raw.githubusercontent.com/novasamatech/opengov-delegate-registry/master/images/ValidOrangeLOGO192x192.png", + "shortDescription": "Independent validator operator based in US. Infrastructure experience and active in OpenGov.", + "longDescription": "ValidOrange operates Polkadot and Kusama validators. I vote on all OpenGov proposals and try to cast votes that support the best interests of the ecosystem. Decisions posted on X.", + "isOrganization": false + } +] diff --git a/src/navigation.tsx b/src/navigation.tsx index e800b2c..53a5cc4 100644 --- a/src/navigation.tsx +++ b/src/navigation.tsx @@ -8,7 +8,7 @@ import { routes } from '@/lib/utils' import { useLocation } from 'react-router-dom' import PolkadotIcon from '@/assets/img/polkadotIcon.svg?react' -import { Github, Moon, Settings, Sun } from 'lucide-react' +import { Github, Moon, Sun } from 'lucide-react' import { Button } from '@/components/ui/button' import { useTheme } from '@/components/theme-provider' @@ -54,7 +54,8 @@ export const Navigation = () => { @@ -77,7 +78,7 @@ export const Navigation = () => { Toggle theme - + {/* { Settings - + */} )