<?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: aprajita singh</title>
    <description>The latest articles on DEV Community by aprajita singh (@aprajita_singh_0a13f19010).</description>
    <link>https://dev.to/aprajita_singh_0a13f19010</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%2F3945822%2Fac315007-48b9-4a34-84a4-f6598bcd1fe3.jpg</url>
      <title>DEV Community: aprajita singh</title>
      <link>https://dev.to/aprajita_singh_0a13f19010</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aprajita_singh_0a13f19010"/>
    <language>en</language>
    <item>
      <title>From Web2 to Web3: My First Solana Tokens</title>
      <dc:creator>aprajita singh</dc:creator>
      <pubDate>Sun, 24 May 2026 11:37:45 +0000</pubDate>
      <link>https://dev.to/aprajita_singh_0a13f19010/from-web2-to-web3-my-first-solana-tokens-cf2</link>
      <guid>https://dev.to/aprajita_singh_0a13f19010/from-web2-to-web3-my-first-solana-tokens-cf2</guid>
      <description>&lt;p&gt;Introduction&lt;br&gt;
Moving from traditional web development to blockchain can feel like entering a completely different dimension. As a student developer, I recently took the plunge into the Solana ecosystem during the #100DaysOfSolana challenge.&lt;/p&gt;

&lt;p&gt;In just a few days, I went from knowing absolutely nothing about smart contracts to launching real tokens with built-in economic rules. Here is exactly how I did it, what I built, and the mind-blowing concepts I learned along the way.&lt;/p&gt;

&lt;p&gt;🛠️ The Tech Stack &amp;amp; Setup&lt;br&gt;
Before writing any code, I set up my workspace using modern cloud and blockchain tools:&lt;/p&gt;

&lt;p&gt;Environment: Google Cloud Shell (for a seamless, zero-installation terminal experience)&lt;/p&gt;

&lt;p&gt;Language/Runtime: Node.js &amp;amp; TypeScript&lt;/p&gt;

&lt;p&gt;Version Control: GitHub (for managing repository states)&lt;/p&gt;

&lt;p&gt;SDKs: Solana Web3.js and the @solana/spl-token library&lt;/p&gt;

&lt;p&gt;🚀 The Core Walkthrough: Building the Token Architecture&lt;br&gt;
Instead of using the old, rigid Token Program, I utilized Solana’s cutting-edge Token Extensions Program (Token-2022). This allows developers to hardcode complex financial and structural behavior directly into the token mint itself, without writing custom Rust smart contracts.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Creating the Mint with Metadata
The first milestone was creating a completely customized token mint. I attached a name, symbol, and an official metadata pointer directly to the mint account.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;TypeScript&lt;br&gt;
import { &lt;br&gt;
  createMint, &lt;br&gt;
  token2022ProgramId, &lt;br&gt;
  TYPE_SIZE, &lt;br&gt;
  LENGTH_SIZE &lt;br&gt;
} from "@solana/spl-token";&lt;/p&gt;

&lt;p&gt;// Initializing the advanced Token-2022 Mint&lt;br&gt;
const mint = await createMint(&lt;br&gt;
  connection,&lt;br&gt;
  payer,&lt;br&gt;
  mintAuthority,&lt;br&gt;
  freezeAuthority,&lt;br&gt;
  decimals,&lt;br&gt;
  keypair,&lt;br&gt;
  undefined,&lt;br&gt;
  token2022ProgramId&lt;br&gt;
);&lt;br&gt;
console.log(&lt;code&gt;✅ Token Mint Created Successfully: ${mint.toBase58()}&lt;/code&gt;);&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Protocol-Level Transfer Fees
One of the coolest aspects of Solana Token Extensions is implementing a native transfer fee. Instead of enforcing royalties or transaction taxes on a centralized website or application layer, the Solana network handles it automatically at the ledger level.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Every time a user moves the token, a fixed percentage or absolute fee is automatically deducted and sent to a designated fee authority account.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Creating "Soulbound" Permanent Credentials
The journey culminated in experimenting with Non-Transferable Tokens. These are tokens that, once minted into a user's wallet, can never be transferred out or sold.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This creates a bulletproof mechanism for digital identity, permanent certifications, and credentials that exist strictly on-chain. Traditional Web2 platforms rely on heavy database policy documents to protect accounts; Solana enforces it natively through cryptographic immutability.&lt;/p&gt;

&lt;p&gt;💡 What Surprised Me the Most&lt;br&gt;
Coming from a Web2 mindset, I expected blockchain deployment to be filled with heavy boilerplate configuration and endless debugging. However, two things caught me off guard:&lt;/p&gt;

&lt;p&gt;On-Chain vs. App Logic: In traditional development, if you want to charge a transaction fee, you write a line of code in your server (like Express or Python). On Solana, you program it directly into the money itself. The token carries its own laws wherever it goes.&lt;/p&gt;

&lt;p&gt;The Power of Cloud Shell: Running complex Solana command-line tools and managing private keypairs directly inside Google Cloud Shell made the development phase extremely fast and lightweight.&lt;/p&gt;

&lt;p&gt;🔮 What's Next?&lt;br&gt;
Building these assets has opened my eyes to the future of decentralized applications (dApps). My next goal is to build an interactive front-end dashboard where users can view their real-time token balances and see environmental or utility logs updating live.&lt;/p&gt;

&lt;p&gt;The Web3 space moves incredibly fast, but taking the time to document my progress ensures these lessons stick for good.&lt;/p&gt;

&lt;p&gt;This post is part of my submission for the #100DaysOfSolana challenge. Special thanks to Major League Hacking (MLH) and the global developer community for the incredible support!&lt;/p&gt;

</description>
      <category>solana</category>
      <category>blockchain</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
