<?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>Forem: Tushar Ojha</title>
    <description>The latest articles on Forem by Tushar Ojha (@tusharojha).</description>
    <link>https://forem.com/tusharojha</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%2F548110%2Fa524418f-f769-4f81-8f03-3a5659a2c7ce.jpg</url>
      <title>Forem: Tushar Ojha</title>
      <link>https://forem.com/tusharojha</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/tusharojha"/>
    <language>en</language>
    <item>
      <title>Using Blockchain Technology Without A Wallet</title>
      <dc:creator>Tushar Ojha</dc:creator>
      <pubDate>Tue, 25 Apr 2023 15:11:50 +0000</pubDate>
      <link>https://forem.com/tusharojha/using-blockchain-technology-without-a-wallet-1383</link>
      <guid>https://forem.com/tusharojha/using-blockchain-technology-without-a-wallet-1383</guid>
      <description>&lt;p&gt;Blockchains allow for lots of novel use cases that leverage their open and decentralized tech, but the industry is still nascent, with lots of hurdles for user adoption. Let’s discuss how we can minimize these hurdles to bring blockchain tech to the masses, without them even knowing about it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Need for Wallets
&lt;/h2&gt;

&lt;p&gt;Typically, using a blockchain requires using a piece of software called a “wallet” to store your private key. These wallets often take the form of extensions for popular web browsers (like Google Chrome). There are downsides to this, such as the fact that not all wallets support every blockchain, often resulting in users having to install multiple wallets.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8sJ8VTPt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n756krhaas7o19snzh2q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8sJ8VTPt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n756krhaas7o19snzh2q.png" alt="Modal asking user to save Private Key" width="800" height="497"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The main reason to use a wallet is to manage your private key, allowing you to repeatedly access the same account, which is important if you are storing valuable assets such as tokens or NFTs on that account. These tokens are needed to pay transaction fees on blockchains, allowing users to use the network.&lt;/p&gt;

&lt;p&gt;But what if you could use a blockchain without a wallet?&lt;/p&gt;

&lt;h2&gt;
  
  
  A Wallet-Free Experience
&lt;/h2&gt;

&lt;p&gt;There are two methods of storing private keys locally (on a user’s computer), without using a wallet. The first is to use an Iframe app (like Login with Google), and the second is to simply store the private key in the local storage.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WVdqEqTs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zwph6l9gqmw9te9k27ne.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WVdqEqTs--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zwph6l9gqmw9te9k27ne.png" alt="Wallet Free Login Experience with a Simple Click" width="800" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;By using one of these methods, a user no longer needs a wallet. Applications can sign transactions on behalf of users. Obviously this can present security risks, but users can use this set up for things that are low stakes, such as liking a post on a social network. However, if this user needs tokens in order to interact with the network, they will likely still want to use a wallet, in order to better manage and secure their tokens.&lt;/p&gt;

&lt;p&gt;It is worth noting that not all blockchain users necessarily need tokens. &lt;a href="https://bit.ly/Subsocial-website"&gt;Subsocial&lt;/a&gt;, a Web3 social platform, uses a system called Energy to enable dapp developers to easily cover the transaction fees of users. This can be done with just a &lt;a href="https://bit.ly/energy-docs"&gt;few lines&lt;/a&gt; of code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const burnAmount = 1 // 1 SUB
const parsedBurnAmount = burnAmount * 10 ** 10 //SUB token uses 10 decimals
const target = '3osmnRNnrcScHsgkTJH1xyBF5kGjpbWHsGrqM31BJpy4vwn8'
const tx = api.tx.energy.generateEnergy(target, parsedBurnAmount.toString())

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Test it live on the &lt;a href="https://bit.ly/energy-playground"&gt;Subsocial Playground&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As a result of this, if a dapp supports the energy system, users of that dapp don’t even need to think about tokens — they can just use the application.&lt;/p&gt;

&lt;p&gt;By combining these two points, users can sign into decentralized applications using their locally-stored private key, with their public key acting as their user ID, and they will not need tokens (thanks to Subsocial’s energy system). In this way, anyone can interact with a blockchain without installing and setting up a wallet. This is similar to the classic Web2 model where anyone can create an anonymous account on a forum and start using it right away to discuss any topic in the world.&lt;/p&gt;

&lt;p&gt;A great example of this in Web3 is &lt;a href="https://bit.ly/grill-chat"&gt;Grill.chat&lt;/a&gt;, an anonymous and censorship-resistant chat application powered by Subsocial. However, unlike in Web2, users don’t even need to create an account to get started chatting on &lt;a href="https://bit.ly/grill-chat"&gt;Grill.chat&lt;/a&gt;, they just need to send a message, and an account will be generated for them, along with some energy. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MZxgs9Nw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ae0crj9qxzzs42jps40n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MZxgs9Nw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ae0crj9qxzzs42jps40n.png" alt="Login Modal" width="800" height="1407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Not all blockchain use cases require wallets and token ownership, and Subsocial’s Grill.chat is a great example of pioneering ways to onboard more users to Web3, without them even realizing it. We are moving towards a time where people will be using blockchain tech without knowing it, and solutions like this help move us toward that future.&lt;/p&gt;

&lt;p&gt;Thanks a lot for reading!&lt;/p&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;p&gt;Wallet-free On-Chain Chat Experience: &lt;a href="https://bit.ly/grill-chat"&gt;https://grill.chat&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Subsocial Network: &lt;a href="https://bit.ly/Subsocial-website"&gt;https://subsocial.network&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Try Energy System on Subsocial Playground: &lt;a href="https://bit.ly/energy-playground"&gt;https://play.subsocial.network/energy/generate&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Subsocial Developer Chat: &lt;a href="https://bit.ly/43XKGsU"&gt;Join Now&lt;/a&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>webdev</category>
      <category>web3</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Building a Decentralized Twitter in 50 minutes using the Subsocial SDK</title>
      <dc:creator>Tushar Ojha</dc:creator>
      <pubDate>Tue, 02 Aug 2022 04:48:00 +0000</pubDate>
      <link>https://forem.com/tusharojha/building-a-decentralized-twitter-in-50-minutes-using-the-subsocial-sdk-86l</link>
      <guid>https://forem.com/tusharojha/building-a-decentralized-twitter-in-50-minutes-using-the-subsocial-sdk-86l</guid>
      <description>&lt;p&gt;Ever wondered how you can create decentralized web apps?&lt;br&gt;
You don't need to learn Rust or Solidity to create a decentralized social media website, I built a &lt;strong&gt;Twitter dapp in just 50 minute live on YouTube&lt;/strong&gt;.&lt;/p&gt;
&lt;h2&gt;
  
  
  What does a decentralized Twitter mean?
&lt;/h2&gt;

&lt;p&gt;Twitter as you may know is a micro-blogging site and is governed by a centralized organization. That's not good for the following reasons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;They get to choose which topics are trending&lt;/li&gt;
&lt;li&gt;They can ban and remove any creator's content&lt;/li&gt;
&lt;li&gt;Often times you see hate speech content because that increases the retention on such platforms&lt;/li&gt;
&lt;li&gt;Private content suggestion algorithms&lt;/li&gt;
&lt;li&gt;You don't own the content you create&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now, imagine having all the functionalities of Twitter but this time people own the content they create, the data isn't stored on any centralized server but spread across multiple nodes around the world.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--b8uDE4N7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4rxrjg799n7ilhgqp2qr.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--b8uDE4N7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4rxrjg799n7ilhgqp2qr.gif" alt="Wow" width="498" height="277"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Amazing!
&lt;/h3&gt;

&lt;p&gt;But that sounds like a lot of work. Here comes Subsocial:&lt;/p&gt;

&lt;p&gt;A specialized blockchain for creating decentralized social media apps, built in the Polkadot ecosystem.&lt;/p&gt;

&lt;p&gt;Now, rather than using a centralized server, you can implement all these features using the Subsocial SDK. Plus, you don't need to worry about running a blockchain, making sure all nodes are up, it's secure, etc.&lt;/p&gt;

&lt;p&gt;You can easily integrate the &lt;strong&gt;Subsocial JS SDK&lt;/strong&gt; into your frontend in &lt;strong&gt;React&lt;/strong&gt; / &lt;strong&gt;Vue&lt;/strong&gt; / &lt;strong&gt;Angular&lt;/strong&gt; to achieve it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SScVnVgm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5284vu0zafqsh8civnrh.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SScVnVgm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5284vu0zafqsh8civnrh.gif" alt="WoW" width="480" height="347"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  How did I build it?
&lt;/h3&gt;

&lt;p&gt;I created a detailed video on how to build it, and covered all common questions in it.&lt;br&gt;
You can watch it here:&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/jeTrpltqAqc"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Resources
&lt;/h3&gt;

&lt;p&gt;Project Code: &lt;a href="https://github.com/dappforce/twitter-example"&gt;https://github.com/dappforce/twitter-example&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Subsocial Docs: &lt;a href="https://docs.subsocial.network/docs/develop"&gt;https://docs.subsocial.network/docs/develop&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Subsocial Playground: &lt;a href="https://github.com/tusharojha/playground"&gt;https://github.com/tusharojha/playground&lt;/a&gt;&lt;/p&gt;

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