<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Hasret Özkan</title>
    <description>The latest articles on DEV Community by Hasret Özkan (@hasretozkan).</description>
    <link>https://dev.to/hasretozkan</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1058194%2Fc98f8b08-0861-4597-a3d7-3b0f35bd5c12.jpeg</url>
      <title>DEV Community: Hasret Özkan</title>
      <link>https://dev.to/hasretozkan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hasretozkan"/>
    <language>en</language>
    <item>
      <title>Understanding Zero Knowledge Proof in Blockchain</title>
      <dc:creator>Hasret Özkan</dc:creator>
      <pubDate>Fri, 07 Apr 2023 08:23:34 +0000</pubDate>
      <link>https://dev.to/hasretozkan/understanding-zero-knowledge-proof-in-blockchain-220d</link>
      <guid>https://dev.to/hasretozkan/understanding-zero-knowledge-proof-in-blockchain-220d</guid>
      <description>&lt;p&gt;Zero Knowledge Proof is a cryptographic method that allows one party to prove to another party that a statement is true without revealing any information beyond the validity of the statement itself. In the world of blockchain, this technology can enhance privacy, security and scalability. Implementing Zero Knowledge Proof can significantly improve the efficiency of blockchain transactions, while maintaining a high level of security.&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>cryptocurrency</category>
      <category>privacy</category>
      <category>security</category>
    </item>
    <item>
      <title>Wagmi: React Hooks for Ethereum</title>
      <dc:creator>Hasret Özkan</dc:creator>
      <pubDate>Mon, 03 Apr 2023 18:49:18 +0000</pubDate>
      <link>https://dev.to/hasretozkan/wagmi-react-hooks-for-ethereum-1ico</link>
      <guid>https://dev.to/hasretozkan/wagmi-react-hooks-for-ethereum-1ico</guid>
      <description>&lt;p&gt;Wagmi is a collection of React Hooks containing everything you need to start working with Ethereum. wagmi makes it easy to "Connect Wallet" display ENS and balance information, sign messages, interact with contracts, and much more - all with caching, request deduplication, and persistence.&lt;/p&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;p&gt;You can install wagmi.sh with these codes.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm i wagmi ethers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;yarn add wagmi ethers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Quick Start
&lt;/h2&gt;

&lt;p&gt;You can start with importing wagmi.sh.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { WagmiConfig, createClient } from 'wagmi'
import { getDefaultProvider } from 'ethers'

const client = createClient({
  autoConnect: true,
  provider: getDefaultProvider(),
})

function App() {
  return (
    &amp;lt;WagmiConfig client={client}&amp;gt;
      &amp;lt;Profile /&amp;gt;
    &amp;lt;/WagmiConfig&amp;gt;
  )
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then you can connect wallet with these hook methods. Also more example on website and documantation.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { useAccount, useConnect, useDisconnect } from 'wagmi'
import { InjectedConnector } from 'wagmi/connectors/injected'

function Profile() {
  const { address, isConnected } = useAccount()
  const { connect } = useConnect({
    connector: new InjectedConnector(),
  })
  const { disconnect } = useDisconnect()

  if (isConnected)
    return (
      &amp;lt;div&amp;gt;
        Connected to {address}
        &amp;lt;button onClick={() =&amp;gt; disconnect()}&amp;gt;Disconnect&amp;lt;/button&amp;gt;
      &amp;lt;/div&amp;gt;
    )
  return &amp;lt;button onClick={() =&amp;gt; connect()}&amp;gt;Connect Wallet&amp;lt;/button&amp;gt;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this example, we create a wagmi &lt;code&gt;Client&lt;/code&gt; and pass it to the &lt;code&gt;WagmiConfig&lt;/code&gt; React Context. The client is set up to use the ethers Default Provider and automatically connect to previously connected wallets.&lt;br&gt;
Next, we use the &lt;code&gt;useConnect&lt;/code&gt; hook to connect an injected wallet (e.g. MetaMask) to the app. Finally, we show the connected account's address with &lt;code&gt;useAccount&lt;/code&gt; and allow them to disconnect with &lt;code&gt;useDisconnect&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;p&gt;Wagmi supports all these features out-of-the-box:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;20+ hooks for working with wallets, ENS, contracts, transactions, signing, etc.&lt;/li&gt;
&lt;li&gt;Built-in wallet connectors for MetaMask, WalletConnect, Coinbase Wallet, and Injected&lt;/li&gt;
&lt;li&gt;Caching, request deduplication, multicall, batching, and persistence&lt;/li&gt;
&lt;li&gt;Auto-refresh data on wallet, block, and network changes&lt;/li&gt;
&lt;li&gt;TypeScript ready&lt;/li&gt;
&lt;li&gt;Test suite running against forked Ethereum network&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;…and a lot more.&lt;/p&gt;

&lt;h2&gt;
  
  
  Summary
&lt;/h2&gt;

&lt;p&gt;Wagmi is so easy to use for react. Also it solves a lot of problems and make everything easier for developer. You can read &lt;a href="https://wagmi.sh/core/getting-started"&gt;documantation&lt;/a&gt;. Also you can check more &lt;a href="https://wagmi.sh/examples/connect-wallet"&gt;examples&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;See you in next article. Also you can follow me on &lt;a href="https://www.linkedin.com/in/hasretozkan/"&gt;LinkedIn&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>web3</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>blockchain</category>
    </item>
  </channel>
</rss>
