horuslabsio / karst-core

Karst is a permissionless and composable social graph built on Starknet, empowering creators to own every part of their social experience.
MIT License
21 stars 27 forks source link

Implement Profile onchain token uri #98

Closed Darlington02 closed 1 month ago

Darlington02 commented 1 month ago

Implement the get_token_uri method within the ProfileTokenUri module

PS: feel free to use any random SVG for now for your implementation

Resource: https://github.com/lens-protocol/core/blob/master/contracts/misc/token-uris/ProfileTokenURI.sol

quentin-abei commented 1 month ago

Hello , can I work on this as part of ODHack

onlydustapp[bot] commented 1 month ago

Hey @quentin-abei! Thanks for showing interest. We've created an application for you to contribute to Karst. Go check it out on OnlyDust!

ShantelPeters commented 1 month ago

Please can I work on this issue

onlydustapp[bot] commented 1 month ago

Hey @ShantelPeters! Thanks for showing interest. We've created an application for you to contribute to Karst. Go check it out on OnlyDust!

zarah-s commented 1 month ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

With my strong background in Rust, Solidity and JavaScript, I can apply my expertise in solving this issue

bitfalt commented 1 month ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

I've done the Starklings tutorial. Also, I've contributed to the Carbonable project (which you can check on my GitHub profile), where I've dealt with modules and testing. I've done some projects and solved a challenge in a CTF (partnered with NodeGuardians) using Solidity. Due to my background previously mentioned, I'm confident I can solve this issue because of my proficiency in both languages.

How I plan on tackling this issue

I would do the following:

If I have any questions during the process, I would ask one of the project maintainers for clarification.

PavitraAgarwal21 commented 1 month ago

I am applying to this issue via OnlyDust platform.

My background and how it can be leveraged

I have a strong background in Solidity, Rust, and Cairo development, with significant experience in the blockchain industry. I won the StarkNet hackathon by creating the ZKTPS ticketing solution. Additionally, I participated in the StarkNet Token Bound hackathon, where I successfully submitted a project independently, namely the CCNFT.

My proficiency in writing complex logic in Cairo language is demonstrated through these achievements. My recent project involved creating dynamic NFTs, specifically SVG chessboards. Although I initially faced issues with SVG visibility on the Argent Wallet, I successfully addressed them and gained valuable insights into how SVGs work within the StarkNet ecosystem. I also gained insights from senior developers at Carbonable and explored tools like SVGGenerator to enhance my understanding and capabilities in this area. This experience positions me well to leverage my skills and knowledge effectively in your project.

How I plan on tackling this issue

Given my extensive experience with the token_uri in StarkNet through my past nft project , I understand the challenges, such as the token URI length exceeding display limits in wallets . To address this, I would first generate a personalized SVG using the profile_id and mint time(which i think is not wanted ). Then, I would convert the SVG into an Array.and Using the Alexandria library, which have 64 encoding library in cairo encoded into token_uri of array and convert it into the byteArray or we can do directly with some additional changes . This approach ensures the token URI remains within display limits and simplifies the encoding process, making the implementation efficient and effective. and i have researched all the repo which is working or worked on svg in cairo so i am well researched in this topic .