https://github.com/ewdlop/blockchaindevelopmentnote
2bf;DIY
https://github.com/ewdlop/blockchaindevelopmentnote
dapps-development decentralized-applications gary metamask soldity web3js
Last synced: 9 months ago
JSON representation
2bf;DIY
- Host: GitHub
- URL: https://github.com/ewdlop/blockchaindevelopmentnote
- Owner: ewdlop
- License: mit
- Created: 2024-06-10T00:24:51.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2025-02-17T03:12:53.000Z (about 1 year ago)
- Last Synced: 2025-02-17T03:28:24.289Z (about 1 year ago)
- Topics: dapps-development, decentralized-applications, gary, metamask, soldity, web3js
- Language: Solidity
- Homepage:
- Size: 164 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
- Security: SECURITY.md
Awesome Lists containing this project
README
# BlockChainDevelopmentNote
--
## The 11 Layers of the Blockchain OSI Model

## DApp
https://en.wikipedia.org/wiki/Decentralized_application
## Not mine
https://roadmap.sh/blockchain
## Javascript
Play with BlockChain related stuff
Integrating Web3 functionality into React applications is streamlined by utilizing specialized hooks that manage blockchain interactions efficiently. Here are some notable React hooks and libraries designed for Web3 integration:
:::contextList
### **web3-react**
A popular framework for building Ethereum dApps in React. It offers a set of hooks and tools to manage blockchain connections, including wallet integrations like MetaMask. Developed by Uniswap, it provides a maximally extensible, dependency-minimized framework for building modern Ethereum dApps.
:::
:::contextList
### **Web3 Onboard React**
Part of the Web3 Onboard suite, this package provides React hooks to connect EVM-compatible wallets, manage transactions, and sign contracts. It supports multiple wallets and offers customization options for styling and theming, enhancing the user onboarding experience.
:::
:::contextList
### **react-use-web3**
A React hook that facilitates the use of the Web3 object in decentralized applications (dApps). It simplifies interactions with the Ethereum blockchain by providing hooks to access Web3 functionalities within React components.
:::
:::contextList
### **web3-react-hooks**
A set of convenience hooks for Web3 actions in React, enabling interactions with Web3 systems like MetaMask. These hooks assist in managing blockchain connections and user accounts within React applications.
:::
:::contextList
### **thirdweb React SDK**
A comprehensive collection of React hooks designed for Web3 applications. It allows developers to connect wallets, interact with smart contracts, and manage blockchain data seamlessly within React apps.
:::
When selecting a React hook or library for Web3 integration, consider factors such as the specific blockchain functionalities required, compatibility with existing tools, and the level of community support. Each of these libraries offers unique features that can cater to different development needs in the Web3 ecosystem.
## Crypto Wallet
https://metamask.io/
### Metamask React Hook
https://docs.metamask.io/wallet/connect/metamask-sdk/javascript/react/
https://portfolio.metamask.io/
### Codes
Not production ready
## .Net
https://medium.com/codenx/building-a-blockchain-in-net-06f5e3481aab
2019*(learning experience)
https://learn.microsoft.com/en-us/archive/msdn-magazine/2019/november/blockchain-programming-smart-contracts-in-csharp
https://www.c-sharpcorner.com/article/building-a-blockchain-in-net/
## Python
https://www.geeksforgeeks.org/create-simple-blockchain-using-python/
## Smart Contracts
### Bond Contract
The `BondContract` allows users to issue and redeem bonds. Each bond has a principal amount, interest rate, and maturity date. The contract keeps track of issued bonds and allows bond owners to redeem them after maturity.
### Code Repository
The `CodeRepository` contract manages code commits. Users can add commits with a message and hash, and retrieve commit details.
### Code Review
The `CodeReview` contract handles code submissions and reviews. It allows users to submit code, approve or reject submissions, and manage the number of required approvals.
### Donation Manager
The `DonationManager` contract manages donations and fund allocations. Users can donate funds, and the owner can allocate funds to recipients.
### Election
The `Election` contract conducts elections. It allows the owner to add candidates, authorize voters, and cast votes. The contract also provides functions to end the election and get the results.
### Experimental Data
The `ExperimentalData` contract stores experimental data entries. The owner can add data entries, and users can retrieve all entries or specific entries by index.
### Gossip Platform
The `GossipPlatform` contract allows users to register, create posts, and manage reputations. Users can upvote or downvote others, and withdraw funds from the contract.
### MyNFT
The `MyNFT` contract is an ERC721 contract for minting NFTs. The owner can mint new NFTs and assign them to addresses.
### Option Contract
The `OptionContract` defines an option contract with functions to create and exercise options. Users can create call or put options, and exercise them before expiration.
### Rock-Paper-Scissors
The `RockPaperScissors` contract implements a Rock-Paper-Scissors game with betting and reveal mechanisms. Players can create and join games, reveal moves, and determine the winner.
### Secure Cryptographic Network
The `SecureCryptographicNetwork` contract manages public keys and provides encryption and decryption functions. Users can register public keys and encrypt or decrypt data.
### Secure Voting
The `SecureVoting` contract conducts secure voting. The chairperson can authorize voters, and users can cast votes for proposals. The contract provides functions to get the winning proposal and its name.
### Social Network
The `SocialNetwork` contract allows users to create and retrieve posts. Users can create new posts and get post details by ID.
### Stable Marriage
The `StableMarriage` contract implements the stable marriage algorithm. It finds a stable matching between participants based on their preferences.
### Stock
The `Stock` contract manages stocks with functions to create, transfer, and get balances. Users can create new stocks, transfer stocks, and check balances.
## Deployment Methods
### Deploying MyNFT Contract
To deploy the `MyNFT` contract, use the `App/migrations/2_deploy_contracts.js` script. This script deploys the `MyNFT` contract using the Truffle framework.
Example:
```bash
truffle migrate --network
```
### Deploying SecureVoting Contract
To deploy the `SecureVoting` contract, use the `App/scripts/deploy.js` script. This script deploys the `SecureVoting` contract using Web3.js.
Example:
```bash
node App/scripts/deploy.js
```