user-avatar
O
Ozovehe001
Joined
icon image
Celo Community
166 REP
26 Feedbacks
4 predaji zadatkas

Submissions

166 REP
Submitted

A decentralized marketplace application will allow users to list their items for sale, purchase items, view listed items and lookup products they purchased and/or uploaded on a profile page. It is built on the pre-existing marketplace smart contract with added functionalities for better user experience, to access special features offered by the marketplace and improved interactivity between users of the marketplace. These functionalities are highlighted in detail in the README.md file of the GitHub repository below.

95Points
166 REP
Submitted

## Building a Whitelist Dapp on the Celo Blockchain Using Vue.JS In this tutorial, we will walk you through the steps of building a decentralized application (dApp) on the Celo blockchain that allows users to add addresses to a whitelist. We will be using Vue.js as our frontend framework as opposed to React, to build the user interface, and the Celo blockchain platform to store the whitelist data on the blockchain. More details are provided in the README.md file.

16Points
2 Feedbacks
166 REP
Submitted

Neil & Collen (N&C) is a property dApp built on CELO blockchain where users can buy and sell properties using celo

15Points
6 Feedbacks
166 REP
Submitted

A marketplace for anime lovers to mint their animes into NFT and sell them. Users having connected their wallet to the platform can mint, buy, sell, resell, gift out and remove their anime NFT. They can also view their profile to see owned NFT's.

16Points
3 Feedbacks

FEEDBACK

Submitted

Welcome to NFT Collection, a web application enable user to create their own NFTs, also list NFTs into the marketplace to sell, update price, remove from the marketplace. This project was built as part of a coding challenge and serves as a showcase for my coding abilities.

16Points
2 Feedbacks
166 REP
Feedback

Hello @nguoibian, love your project. I have gone through your code and made a few changes as stated below;

Fixes and Improvements

  • Added NatSpec comments for better documentation. Read more here
  • Edited the modifier to use the require statement rather than the if statement
  • Changed the activeItem() mapping name to better fit the recommended naming convention. You can read more here
  • Removed the notListed() modifier as it serves the same purpose as the isListed() modifier
  • Removed the require statement on the listNft() function as the modifier isListed() is already used
  • I changed the createNft() function name to mintNft() to indicate what the function does, which is to mint an Nft
  • Noticed some code warnings on the frontend, went ahead to fix them replaced string concatenation using + with the backticks

That's all from me. I have made a pull request for you to go through and make the changes as you see fit. Great work once again

10 cUSD
10 REP
188 REP
Submitted

Neil & Collen (N&C) is a property dApp built on CELO blockchain where users can buy and sell properties using celo

15Points
6 Feedbacks
166 REP
Feedback

yeah, just noticed that too...will fix it immediately. Thank you

19.8 REP
Submitted

Decentainment is a dapp that connects every artist to their fans - Artist can come in to upload and create their nft by filling out the form properly - The specified price is the listed amount - Any fan can come in to purchase his/her artist fan card - it can serve as a utility for the fan depending on the artist - Users can see the list of their owned fan card by checking the profile tab - Artist can withdraw profit made from selling their fan card in the withdraw page The smart contract is well commented

20Points
6 Feedbacks
166 REP
Feedback

Hello @Kayzee, nice submission, I love the implementation. I went through the smart contract, and I would like to suggest a few changes and/or improvements.

Fixes and Improvement

  • Changed the event name to better suit the naming convention. More info on this here
  • Made changes to the struct property names, removing OG from struct property names as the struct already describes what the properties are for
  • Added comments to some of the mapping variable and code blocks in the joinOG() function to better understand what they are meant to hold
  • Noticed an owner of a fan card can purchase the fan card, added a check to prevent this from happening
  • Add a check for the joinOG() function to prevent users from buying OG that do not exists, so I created a isValidId() modifier for this as it can be used in other functions
  • I would suggest you use a better more descriptive variable name than OG to help other developers understand what the variable is meant to hold or store.

Below is the pull request for you to go through and make the changes as you see fit. Great submission again and have a nice weekend.

30 cUSD
30 REP
19.8 REP
Submitted

association-bank is an association based bank where members of association can deposit into association banks and only excutive members can withdraw, the withdrawal of any executive member can only be possible with the approval of other executive members. * Member of an association can view association balance by using the association password * Only executive members can initiate withdrawal, approve withrawal, revert approval and withdraw * The status page in the dashboard is available for any member to check the status of any transaction in the association for transparency

80Points
4 Feedbacks
166 REP
Feedback

I have gone through your code and it's really amazing, the thought and the execution is really great. I noticed a few things with the project and they are;

  1. I noticed that the create account modal wasn't centered on the page. So, edited the createAccount.tsx component to properly center the modal.

  2. I noticed an error when a user tries to deposit an amount in a particular account after click on the view more button. This was because the type attribute for the input field was set to tel in the [id].tsx file. So, I changed it to number, and it can work as intended.

  3. Rather than using 0001 as the account number, I would suggest you use a randomly generated value as the account number, this can then be sent to the smart contract and stored while creating an account. This will help separate the account index in the associationCreator mapping created from the account number. You can check out this package on how to do that and use it in your project.

  4. I would suggest you create an orders.tsx in the executives folder located in pages/dashboard/[id] path, this way, executives will be able to see all withdrawal orders and their order number before knowing which order to approve or revert.

  5. I would suggest you include an instruction on how to carry out certain actions on your project. This will help users get a better idea of what to do, how to do it and the expected result or outcome.

That's all the observation and changes I made. I couldn't make some of the changes as I would be altering the initial state of the project or adding a new feature. I have made a pull request below with the few changes I could make (staying in line with the feedback rules) for you to go through and make the changes suggested as you see fit.

Great project once again and all the best with your submission.

19.4 REP
Submitted

ceAffairs is dapp where users can: 1. Create an event. 2. View list of events created by you and others. 3. Join an event. 4. View a event with all necessary information. 4. Delete an event only if you are the owner of that event.

16Points
7 Feedbacks
166 REP
Feedback

Hello @chigozie, I really love your project and the idea behind it. It's amazing. In addition to the changes proposed by @Farzeen, I made a few myself

H2 Improvements

  1. In the getEventsById function of the smart contract, I edited the return statement to return an Event without specifying each property to return. This will help with the limitations associated with the number of properties a function can return
  2. In the deleteEvent function in the main.js file, I added a check to prevent the wallet pop up from coming on when the button is clicked by a user other than the owner.
  3. Although not a functionality problem, I edited the styles to prevent text overflowing outside its container.

That's basically everything, once again great submission and good luck.

I made a pull request with the proposed changes. You'll need to deploy the smart contract again and change the market contract address to effect these changes.

32 cUSD
32 REP
188 REP
Submitted

A marketplace for anime lovers to mint their animes into NFT and sell them. Users having connected their wallet to the platform can mint, buy, sell, resell, gift out and remove their anime NFT. They can also view their profile to see owned NFT's.

16Points
3 Feedbacks
166 REP
Feedback

Thanks @Farzeen for your feedback. I really appreciate it

5940 REP
Submitted

This is an improved version of the course's marketplace dApp with a custom review system and new hooks.

95Points
1 Feedbacks
166 REP
Feedback

Hello Farzeen, I noticed your git repository you submitted is empty and only contains a README file.

Submitted

A celo frontend marketplace with an added feature that allows user to change the price of their listings.

54Points
2 Feedbacks
166 REP
Feedback

Hello maryjobs, the GitHub repository you submitted is empty.

2 REP
Submitted

ComeFundMe is a crowdfunding app where users can create a campaign and also donate to campaigns. Campaign creator can also withdraw the funds donated at any time. On [ComeFundMe](https://hexdee.github.io/ComeFundMe/), users can: * See Campaigns created by other users * Donate to a campaign * Create their own campaign * Withdraw funds raised from their campaign

16Points
2 Feedbacks
166 REP
Feedback

Hello @hexdee, loved you project, great submission. I have gone through your code base and made a few adjustments as stated below.

Fixes and Improvements

  • Added NatSpec comments for better documentation of code. You can read more about it here
  • I created an isValidId() modifier to replace the repeated use of the require statement to check if an ID is valid
  • I changed the total variable name to totalCampaign to better describe what it is meant for.
  • I removed the getTotal() function and made the totalCampaign variable public to access its value as the getTotal() function only returns its value.
  • I added a require statement to the withdraw function to check if funds are available for withdraw and also reduced the raised property of the campaign by the amount withdrawn.
  • On the frontend, I noticed a ReferenceError when a user tries to withdraw funds from a campaign due to the use of index in place of id in the main.js file. I made the necessary correction.
  • I think you could add other functionalities like close a campaign, reopen campaign if it fits the purpose of the project.

I have made a pull request for you to go through the changes and make adjustments as you see fit. Really great submission and goodluck.

24 cUSD
24 REP
188 REP
Submitted

Neil & Collen (N&C) is a property dApp built on CELO blockchain where users can buy and sell properties using celo

15Points
6 Feedbacks
166 REP
Feedback

thanks Emmanuel...I was reading on modifier in solidity but couldn't figure out how to apply it to my code, wanted adding more features to it. I'll review your changes. Thanks again

Submitted

I added some new features and functionalities to the celo marketplace frontend project. owners of products can now pause and resume the sale of their product as needed.

80Points
2 Feedbacks
166 REP
Feedback

Hello 4undRaiser, the GitHub repository you submitted is empty.

Submitted

VoteKasta is a decentralized application on the celo blockchain that allows you to vote on your favourite proposals. Users can add proposals, vote, close and delete proposals.

0Points
6 Feedbacks
166 REP
Feedback

I would advise you build the project after making the changes so as to see the effected changes on the deployed live demo

Submitted

VoteKasta is a decentralized application on the celo blockchain that allows you to vote on your favourite proposals. Users can add proposals, vote, close and delete proposals.

0Points
6 Feedbacks
166 REP
Feedback

Oh, I am sorry about that. The changes were made in RemixIDE, you can go through the pull request now. You should see the changes there now.

Submitted

This is an beginner social media dapp for celo named cwett. Cwett has some features like normal socail apps, posting , like , comment and profile of the user. I'm waiting feedbacks abbout both UI and Contract

72Points
2 Feedbacks
166 REP
Feedback

Hello @bezat, great project, loved the implementation. I went through your project and noticed a few things, though minor but I believe they will improve the user experience.

  1. I added loading process to tell user a transaction is currently ongoing. This way multiple transactions will not be made or requested for
  2. Noticed that when a user sends a message, the input fields doesn't clear after the message has been sent. Edited the code to clear the input field after a message has been sent or a comment has been made.
  3. I would advise you add comments to your code for easy readability and although this is a frontend project, I would also advice you document your solidity code for the same reason.

That's all from me, overall, it was an amazing project. I've made a pull request with the suggested changes. Good luck.

6.25 cUSD
6.25 REP
Submitted

Hospital Dapp. :This is a platform that where hospitals can receive assistance from their communities and well wishers. *- Hospitals can register patients who are in need of help.* *- Hospitals can also organize their fundraising projects on the platform.* *- Only whitelisted hospital accounts can register patients and fundraising projects.* *- Well wishers can contribute to the fundraising projects. * *- Well wishers can pay for specific patient's needs.* *- Well wishers can view their past donations for different causes.*

16Points
3 Feedbacks
166 REP
Feedback

Hello @Samthetutor, great work, I love the idea and the implementation. I went through you code (smart contract and the main.js file), didn't notice and bug. So in addition to @SinzuCrypto's feedback I made the following changes

Fixes and Improvement

  • Added a loader to functions like donations, patients list etc to indicate fetching data
  • Added a check to know if an address is whitelisted and if so, change and disable the whitelist button
  • Removed the whitistedAddress array from the smart contract as there's already a mapping for this.

I've made a pull request so you can go through the changes. Great work and good luck with you submission.

Submitted

Auction Artifacts Nft's pitches off the idea of an auction market where User's with wallet compatible to interact with the Dapp connects, mint artifacts, place them on auctions and these artifacts gets to go through bidding at their auction run time. After auctions they are made available to be collected by the highest bidders for the highest bid price. A more suitable description could be found in the repo.

16Points
5 Feedbacks
166 REP
Feedback

Hello @Samm_47, the GitHub repository link you sent isn't working. It's redirecting to a 404 error page, saying page is not found

Submitted

A simple decentralized voting system with a front-end where users can vote for any candidate of their choice and paying 1cusd to that candidate. Only the Organizer can give right to vote to an address and add a new candidate. I disabled that security feature to allow anyone to give right to vote and add candidates to the system for the sake of testing the functions.

0Points
2 Feedbacks
166 REP
Feedback

Great submission @Princeemmy, loved the implementation. I have gone through your code base (the smart contract and the App.js file as it holds the logic) and this is my contribution:

Feedback/Improvements

  • Noticed you had functions in the ERC20 contract interface that were not used, so I removed those functions
  • Removed and renamed some variables in the Voter struct as they were not really needed, I also added a votes mapping to keep track of all the votes of a particular voter
  • Replaced how a new candidate is been added and how they are assessed, thus improving the solidity static analysis. Did the same for how a new voter is added in the giveVotingRight function. I also applied a check to determine if a voter has been given the right to vote or not.
  • I removed some functions that only returns a variable already defined. I used these variables in place of the functions to access their values.
  • I also noticed that the frontend has no notifications when performing certain actions like adding a candidate or giving voting rights so I added a simple notification for that to prevent users from initiating multiple clicks on a single action.
  • I also added check similar to the checks in the smart contract on the frontend to prevent users from initiation a transaction before noticing an error with the initiated transaction.
  • A user is allowed only a single vote and can't vote for multiple candidates, which is okay, but if you would like users to vote for multiple candidates, I added a function for that (although it's in comments so you can go over it if you feel there's a need to).

That's all from me, I have made a pull request with the suggested changes for you to go through and implement as you see fit. Once again great submission and good luck.

Submitted

This web application is a platform designed to showcase and explore the street food scene in Saigon (Ho Chi Minh City), Vietnam. The platform provides a user-friendly interface that allows visitors to view various street food locations and their specialties on a map. Users can search for specific dishes or filter locations based on different criteria, such as price range and type of cuisine. The map interface also provides a street view feature, allowing users to virtually explore the surroundings and get a sense of the ambiance of each location. Each street food location on the map is accompanied by a detailed description, including photos, ratings, and reviews from previous visitors. Users can also leave their own ratings and reviews to share their experiences and provide feedback to other users. Overall, the Street Food Saigon web application provides a comprehensive and interactive platform for both locals and tourists to discover and appreciate the rich and diverse street food scene in Saigon.

16Points
2 Feedbacks
166 REP
Feedback

Hello @nguoibian, loved you project, and the functionalities implemented. It's really great. I have gone through your code base and made a few adjustments as stated below.

Fixes and Improvements

  • Removed functions from the IERC20Token interface that were not used in the project
  • Added NatSpec comments for better documentation of code. You can get more info on this here
  • Changed the contract's file name to better suit the project
  • Changed the mapping of name s_boughtItems to suit the naming convention for variables
  • Edited the readProduct function to be able to return all the data about a product irrespective of the amount of data stored
  • Removed the getProductLength function as it only returns the value of the productsLength variable. Made the productsLength varaible public so it can be used to get the product length.
  • Added a .gitignore file to prevent uploading the node_modules folder to Github
  • Added a require statement to prevent owners from buying their own products. This was done on the smart contract and on the frontend as well
  • I made the necessary changes to the frontend code to accommodate the changes made to the smart contract.

I have made a pull request for you to go through the changes and make adjustments as you see fit. Really great submission and goodluck.

8 cUSD
8 REP
Submitted

VoteKasta is a decentralized application on the celo blockchain that allows you to vote on your favourite proposals. Users can add proposals, vote, close and delete proposals.

0Points
6 Feedbacks
166 REP
Feedback

Hello @DextinyAB, great submission. I have gone through your code base and was able to find the reason for the error. Below are my observations and feedback on your submission.

Fixes and Improvement

  • Modified the voters mapping to use uint mapped to a mapping of addresses and a Boolean indicating their voting choice. This was the reason behind the error you got earlier after creating the second proposal and trying to vote on that proposal.
  • Added NatSpec comment, you can read more about it here
  • Edited the readProposal() function to display all the properties of the Proposal struct for increased efficiency
  • Removed the getProposalLength() function as it only returns the proposalLength. Made this variable public so it value can be read.

That's all from me. I have made a pull request for you to go throw and make the necessary changes as you see fit. Great submission, goodluck.

Submitted

A simple web tool for managing music shows tickets. This app enables users to reserve and purchase tickets for various music events that are happening right now. The viewer can view a list of available musical performances, the venue's capacity, and the total number of people who have purchased tickets. A user can also buy tickets for several performances. The creator creates a show ticket by inputting specific fields such as the title of the show, the name of the performing artist, the date of the event, the banner image, etc. Only the performing artist's name and the show's title can be changed in this application by the creator, also known as the owner or management. This reduces the number of show edits. The app also provides the opportunity to delete a show ticket if it has zero participation. The information about music shows and tickets is maintained on the blockchain, and any random users cannot alter it using a contract unless they have the necessary privileges.

14Points
9 Feedbacks
166 REP
Feedback

Thats great...loved the project, these are my observations and feedback on your project

Fixes and Improvements

  • Noticed that any user can delete the content, so I added a check on the smart contract and the frontend to prevent this.
  • I also added a check on the frontend to prevent owner from initiating the booking function. This was already added in the smart contract.
  • Deleted the getTotalShows() function as it only returns the value of totalShows() variable. So, I used the totalShows variable instead of the getTotalShows() function.

Great submission by the way, I have made a pull request for you to go through the changes and implement as you see fit. Make sure you test your application after implementation to make sure it works as planned. Good luck

8 cUSD
8 REP
Submitted

Lypso's recipe is a decentralized application built on the celo blockchain, that allows users/members to upload and buy uploaded recipes. Owner of each recipe can delete their uploaded recipe.

16Points
4 Feedbacks
166 REP
Feedback

Hi @Lypso, I really love your project. I have gone through the contract and made a few addition to it.I added an email and a password verification code to the JavaScript file and a little notification on the HTML file as well. I've made a pull request, so you can review the additions I've made. Once again, great submission.

32 REP
Submitted

Con-tracker: This is a simple Dapp that allows users to access previous transaction history from different addresses all in one place. View transactions from contract addresses as well as personal addresses. Users can also view account balances of different tokens held by the addresses in real time.

16Points
4 Feedbacks
166 REP
Feedback

Hello @Peacevian, great submission, loved the idea, implementation and the simplicity of the project. I went through you code (the smart contract and the code in the main.js file) and have a few observations.

Feedback/Improvements

  • Noticed some functions in the smart contract only returns a state variable, so I removed those functions and made the state variable public so it can be accessed outside the contract
  • Deleted the array emailAddress as there's a mapping (emailExist) that can perform the same purpose as the array.
  • I noticed you requests for user's email to get started with the DApp, this kind of defeats the major purpose of a decentralized application which is anonymity, where user's details are secured by cryptography. So, I used the user's wallet address instead and made the relevant changes to the frontend code in the main.js file.
  • I also made changes to the smart contract to fit the observation above.

I've made a pull request with the proposed changes for you to go through and implement if it meets the dApp specifications. Great work again and all the best on your submission.

24 cUSD
24 REP
Submitted

A simple web tool for managing music shows tickets. This app enables users to reserve and purchase tickets for various music events that are happening right now. The viewer can view a list of available musical performances, the venue's capacity, and the total number of people who have purchased tickets. A user can also buy tickets for several performances. The creator creates a show ticket by inputting specific fields such as the title of the show, the name of the performing artist, the date of the event, the banner image, etc. Only the performing artist's name and the show's title can be changed in this application by the creator, also known as the owner or management. This reduces the number of show edits. The app also provides the opportunity to delete a show ticket if it has zero participation. The information about music shows and tickets is maintained on the blockchain, and any random users cannot alter it using a contract unless they have the necessary privileges.

14Points
9 Feedbacks
166 REP
Feedback

Hello @Temi_empirical, the GitHub link you are to submit is a link to your project repository and not the live link of the project you built.

188 REP
Submitted

Neil & Collen (N&C) is a property dApp built on CELO blockchain where users can buy and sell properties using celo

15Points
6 Feedbacks
166 REP
Feedback

The correction has been made. Thank you

19.8 REP
Submitted

association-bank is an association based bank where members of association can deposit into association banks and only excutive members can withdraw, the withdrawal of any executive member can only be possible with the approval of other executive members. * Member of an association can view association balance by using the association password * Only executive members can initiate withdrawal, approve withrawal, revert approval and withdraw * The status page in the dashboard is available for any member to check the status of any transaction in the association for transparency

80Points
4 Feedbacks
166 REP
Feedback

Hello Kayzee, I noticed that the link you submitted is not the projects GitHub repository link but a link to deployed project on vercel. Please send the repository link so feedbacks can be made, if any, on your project.

Submitted

Movie Collection Library Dapp: This is where movie enthusiasts can share movies they have watched with others. A user shares the movie title, movie avatar, movie imbd link, imbd score, content-rating and also some thing along the movie review numbers. Users can follow the movie IMBD link to watch the trailer to see if they are interested.

16Points
2 Feedbacks
166 REP
Feedback

Hi @patrickcmd, love your project and the implementation. I have gone through you smart contract code and made a few changes

Fixes and Improvements

  • Changed the variable naming convention to mixedCase. You can read more here for variable naming conventions Naming Convention
  • Removed the getMoviesLength function as it can be accessed from the moviesLength variable by making it public
  • Removed the getMovieUserReviews, getMovieImbdScore, getMovieContentRating, getMovieImbdLink functions as the values they return can be accessed from the readMovies function
  • Edited the readMovies function, this way you can access any and all the properties of a movie.
  • Used a NatSpec format for better documentation of the smart contract code. You can read more about it here
  • Added a require statement to prevent an owner of a movie to view his/her own movie as this will falsely increase the reviews of a movie.
  • Made the necessary changes to the main.js file to align with the changes made to the smart contract

That's all from me. I have made a pull request for you to go through and see the changes made. To effect the changes, you'll need to build the project again. Great submission and good luck.

24 cUSD
24 REP