\r\n\r\nFinally, we have an endpoint we can start to integrate multi-chain components.\r\n\r\nAt some point would be nice to have some component which would wrap and abstract the current endpoint in case we find Supabase is not sufficient for our case. \r\n\r\n\r\n## Endpoint\r\nFollow up what can be done with new endpoint\r\nIf anyone wants to play with that here is the URL\r\n\r\n```\r\nhttps://xtnvtbdyvpbbnonbbcif.supabase.co/graphql/v1\r\n```\r\n\r\nYou need to add `apiKey` header into your request. You can find the key in the discord group.\r\n\r\n\r\nSample Query\r\n```graphql\r\nquery findCollections {\r\n\tcollectionsCollection(first: 10) {\r\n\t\tedges {\r\n\t\t\tnode {\r\n\t\t\t\tname\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n```\r\n\r\n\r\n## Tasks \r\n- https://github.com/kodadot/nft-gallery/issues/4865\r\n- https://github.com/kodadot/nft-gallery/issues/4617\r\n- https://github.com/kodadot/nft-gallery/issues/4380\r\n- https://github.com/kodadot/nft-gallery/issues/4618\r\n- https://github.com/kodadot/nft-gallery/issues/4073\r\n- https://github.com/kodadot/nft-gallery/issues/4275\r\n- https://github.com/kodadot/nft-gallery/issues/4753\r\n\r\nOnce all the above done \r\n- https://github.com/kodadot/nft-gallery/issues/4379\r\n\r\n## Ref\r\n- https://developers.cloudflare.com/d1/platform/client-api/\r\n- https://github.com/kodadot/nft-gallery/issues/1824",[1984,1987,1990,1993,1996],{"name":1985,"color":1986},"$$","0E8A16",{"name":1988,"color":1989},"p2","D4C5F9",{"name":1991,"color":1992},"A-search","FBCA04",{"name":1994,"color":1995},"chief","67EA1F",{"name":1997,"color":1992},"A-multi-chain",4257,"kodadot","nft-gallery","open","Enable Multi-chain capabilities in KodaDot","2023-03-15T14:49:24Z","https://github.com/kodadot/nft-gallery/issues/4257",0.79193634,{"description":2007,"labels":2008,"number":2012,"owner":1999,"repository":2000,"state":2013,"title":2014,"updated_at":2015,"url":2016,"score":2017},"I guess thinking for the easier check we should have one list of all URLs we need to check for a client to work?\r\n\r\nDo we have a global list of endpoints we are using? If not, let's create single file, where we can easily manage those endpoints and we can merge it with #1492\r\n\r\n_Originally posted by @yangwao in https://github.com/kodadot/nft-gallery/issues/1492#issuecomment-1100085867_",[2009,2011],{"name":2010,"color":1986},"$",{"name":1988,"color":1989},2868,"closed","Global list of endpoints for KodaDot client","2022-06-01T13:47:46Z","https://github.com/kodadot/nft-gallery/issues/2868",0.7679534,{"description":2019,"labels":2020,"number":2028,"owner":1999,"repository":2000,"state":2013,"title":2029,"updated_at":2030,"url":2031,"score":2032},"Once users mint and for whatever reasons drops connections, we should handle it in a graceful way and retry the connection.\r\nProbably we should handle RPC errors with some retry?\r\n\r\nIn my case, retry worked minting on the second try.\r\n\r\n### Handle retry for\r\n- pinning\r\n- on-chain transaction\r\n\r\n\r\n\r\n\r\n",[2021,2022,2024,2026],{"name":2010,"color":1986},{"name":2023,"color":1989},"p3",{"name":2025,"color":1992},"A-basilisk",{"name":2027,"color":1992},"A-minting",3547,"Retry on the minting in case of errors","2022-07-27T06:03:23Z","https://github.com/kodadot/nft-gallery/issues/3547",0.7687298,{"description":2034,"labels":2035,"number":2041,"owner":1999,"repository":2000,"state":2013,"title":2042,"updated_at":2043,"url":2044,"score":2045},"okay, it's happening on slow internet.\r\n\r\nProbably enable submit button only once client is connected to RPC node\r\n\r\n\u003Cimg width=\"514\" alt=\"image\" src=\"https://user-images.githubusercontent.com/5887929/156878151-b3939471-5135-44c2-8c77-8f6f4d986c06.png\">\r\n",[2036,2039,2040],{"name":2037,"color":2038},"bug","d73a4a",{"name":2010,"color":1986},{"name":2023,"color":1989},2502,"Transfer has issues with sending tx for sign for PolkadotJS extenstion","2022-03-14T15:29:56Z","https://github.com/kodadot/nft-gallery/issues/2502",0.7700734,{"description":2047,"labels":2048,"number":2053,"owner":1999,"repository":2000,"state":2013,"title":2054,"updated_at":2055,"url":2056,"score":2057},"We should rework `components/rmrk/utils.ts` and how it's used, and in the main objection, it's not `rmrk` only tools anymore.\r\n\r\nWe should put it in some config best plus handle image serving to be prioritized from https://image.w.kodadot.xyz \r\n\r\n@vikiival can input best practices what we should be done here\r\n\r\n### Ref\r\n[`258c7de` (#4596)](https://github.com/kodadot/nft-gallery/pull/4596/commits/258c7deb30663e9a0100e8e09e72acf92e72d526#diff-23f4d28ea6c1dced01ff7dc49c47048b1299702926107fb9e54c9e10362560aaR34)\r\n- #4596 \r\n",[2049,2050,2051],{"name":2010,"color":1986},{"name":2023,"color":1989},{"name":2052,"color":1992},"A-refactoring",4598,"Rework image serving gateways ","2023-01-05T14:25:17Z","https://github.com/kodadot/nft-gallery/issues/4598",0.77145725,{"description":2059,"labels":2060,"number":2061,"owner":1999,"repository":2000,"state":2013,"title":2062,"updated_at":2063,"url":2064,"score":2065},"> probably due to some blocking requests for the profile endpoints.\r\n\r\nCc @daiagi\r\n\r\n_Originally posted by @vikiival in https://github.com/kodadot/nft-gallery/discussions/10294#discussioncomment-9442524_",[],10301,"blocking requests for the profile endpoints","2024-05-15T12:23:04Z","https://github.com/kodadot/nft-gallery/issues/10301",0.7722775,{"description":2067,"labels":2068,"number":2076,"owner":1999,"repository":2000,"state":2013,"title":2077,"updated_at":2078,"url":2079,"score":2080},"I knew we had workers to pin all RMRK pictures to Cloudflare Images, and I know it needs to be reworked to drop one round-trip\r\n\r\nMaking this a reminder issue and can expand on it later\r\n\r\n\r\nhttps://beta.kodadot.xyz/rmrk/collection/6e2d7ed8cfdba08927-KUSAMA%20INVADERS?tab=items&page=1",[2069,2070,2073,2075],{"name":2023,"color":1989},{"name":2071,"color":2072},"🧙♀️ - bug-hunt","DC2653",{"name":2074,"color":1992},"A-worker",{"name":2052,"color":1992},3826,"Slow loading on particular collections","2023-01-07T11:17:43Z","https://github.com/kodadot/nft-gallery/issues/3826",0.773252,{"description":2082,"labels":2083,"number":2088,"owner":1999,"repository":2000,"state":2013,"title":2089,"updated_at":2090,"url":2091,"score":2092},"Hence there were unknown changes or at least on Basilisk we've noticed that after fresh minting things are not working. \r\nThus time to revisit the initial implementation of cf workers and how we have it in the current state.\r\n\r\nCurrently, the user pins stuff on Estuary, which we've found acting suboptimal as it's being stored on Filecoin (archive nodes(?) and retrieving through pinata gateway takes a long time (peering issues?). (Something has changed outside of our control, we are investigating, it till we are looking to mitigate it and make a more resilient and antifragile scenario) \r\n\r\n### Future proposed changes are \r\n- [x] #3358 temp hotfix\r\n- [ ] Pinning metadata on Pinata (as we are blazingly fast here for end-user experience) and rest pinning could be kept on Estuary -> We are pinning rn on NFT.storage and seems temporary hotfix is okay\r\n- [ ] At minting, we should push media to CF images (might not happen during BSX mints?)\r\n- [ ] At the new implementation, we would doesn't need durable objects at all and fetch images by IPFS hash from CF images to accelerate end-user experience while they browsing collections/explorer\r\n- [x] https://github.com/kodadot/nft-gallery/issues/3745\r\n- [x] https://github.com/kodadot/nft-gallery/issues/3296\r\n\r\n### Long-term goal\r\n\r\nCurrently, we are fairly doing close to 1TB on Pinata Gateway monthly as transfers for users and this would be an interesting way to offload as public goods for storage providers, like those around the Filecoin provider's circle\r\n\r\n### Suggested would be to recycle code from\r\n- https://github.com/kodadot/nft-gallery/blob/main/src-functions/pinJson.js \r\n- https://github.com/kodadot/workers/blob/master/pinning/src/lib.rs#L84\r\n\r\nTo make it work with Pinata directly from workers to pin JSON metadata there\r\n\r\nCheck the links below for more context \r\nLet's comment below if you want to thrill on this issue \r\n\r\n### Ref\r\n- https://github.com/kodadot/packages/issues/17\r\n- https://github.com/kodadot/workers/issues/7\r\n- https://github.com/kodadot/workers/issues/8\r\n- https://github.com/kodadot/nft-gallery/issues/3253\r\n- https://github.com/kodadot/bao/issues/10",[2084,2085,2086,2087],{"name":1985,"color":1986},{"name":1988,"color":1989},{"name":2025,"color":1992},{"name":1994,"color":1995},3334,"Rework current pinning & storage strategy","2023-02-08T11:21:12Z","https://github.com/kodadot/nft-gallery/issues/3334",0.77766114,{"description":2094,"labels":2095,"number":2100,"owner":1999,"repository":2000,"state":2013,"title":2101,"updated_at":2102,"url":2103,"score":2104},"I think we are having downtime.\r\n\r\nhttps://deploy-preview-2859--koda-nuxt.netlify.app/rmrk/collection/800f8a914281765a7d-KITTY?tab=holders\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n",[2096,2099],{"name":2097,"color":2098},"subquery","EC2C6D",{"name":2023,"color":1989},2862,"App is fragile to the indexer swap ","2023-01-12T14:04:42Z","https://github.com/kodadot/nft-gallery/issues/2862",0.77774346,{"description":2106,"labels":2107,"number":2112,"owner":1999,"repository":2000,"state":2013,"title":2113,"updated_at":2114,"url":2115,"score":2116},"Right now, we are suffering terrible service & support from Pinata for $1k/mo, which gives us randomly 400,401,403,504 HTTP errors and over 48h no response; it's not suitable for us as a reliable partner, where we've made over 2TB+/4M req on monthly average (anticipation we will make much higher numbers in upcoming months) we need to look for a provider who has at least half of serving costs for us to grow our profits and cover burn.\r\n\r\nIt turns out to end users don't care where their images are served from (IPFS or Arweave), but instead, they are served well & fast.\r\n\r\nWe will keep minimal viable IPFS links to keep our web3 ethos at this level and steer ourselves to being a fat layer over better serving NFT media. \r\n\r\nWe will keep using Filecoin Storage Deal for storage, so you can still fetch media outside of KodaDot with IPFS links.\r\nFor serving, we will leverage CF images and R2 fully to achieve the most user comfort. \r\nIt's vendor lock-in we will trade-off we are making for customer satisfaction.\r\n\r\nWe will introduce CORS for our CDN in terms of whether it would be available from whitelisted domains. \r\n```\r\nkodadot.xyz\r\nbeta.kodadot.xyz\r\ndeploy-preview-WXYZ--koda-nuxt.netlify.app\r\n```\r\n\r\n## Ref\r\n- https://github.com/kodadot/workers/issues/7\r\n- https://github.com/kodadot/nft-gallery/issues/3334\r\n- https://github.com/kodadot/nft-gallery/issues/3745\r\n- https://github.com/kodadot/nft-gallery/issues/3296\r\n- https://github.com/kodadot/nft-gallery/issues/4551\r\n- https://github.com/kodadot/nft-gallery/issues/4574\r\n- https://github.com/kodadot/nft-gallery/issues/4583\r\n- https://github.com/kodadot/nft-gallery/issues/4586\r\n- https://github.com/kodadot/nft-gallery/issues/4169\r\n- https://github.com/kodadot/nft-gallery/issues/4199\r\n- https://developers.cloudflare.com/images/cloudflare-images/make-an-image-private/\r\n- https://developers.cloudflare.com/images/cloudflare-images/\r\n- https://developers.cloudflare.com/images/cloudflare-images/serve-images/serve-private-images-using-signed-url-tokens/",[2108,2111],{"name":2109,"color":2110},"p1","D93F0B",{"name":1994,"color":1995},4587,"Reworking media serving for edge caching, speed and costs","2023-01-04T15:13:06Z","https://github.com/kodadot/nft-gallery/issues/4587",0.78071415,["Reactive",2118],{},["Set"],["ShallowReactive",2121],{"TRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"6kSUC_l7DyxUFwATNhet7aoP_lObXvSZHMlzgF06Wf8":-1},"/kodadot/nft-gallery/3170"]