惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
H
Help Net Security
量子位
The Cloudflare Blog
博客园 - Franky
博客园 - 聂微东
博客园 - 司徒正美
Last Week in AI
Last Week in AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
有赞技术团队
有赞技术团队
罗磊的独立博客
GbyAI
GbyAI
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
Martin Fowler
Martin Fowler
S
SegmentFault 最新的问题
美团技术团队
阮一峰的网络日志
阮一峰的网络日志
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
U
Unit 42
MongoDB | Blog
MongoDB | Blog

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
I Built a Branded Token on Solana in 5 Minutes (No Smart ...
Gopichand · 2026-05-21 · via DEV Community

I spent years thinking "creating a token" meant writing complex smart contract
code, deploying it, hoping nothing breaks. Today on Day 30 of my

100DaysOfSolana challenge, I created a fully branded token — with a name,

symbol, and on-chain metadata — in under 5 minutes. No Solidity. No Rust.
Just a CLI.

Here's exactly what I did and what it means.

The Problem with Yesterday's Token

On Day 29, I created my first SPL token on Solana devnet. It worked — but
when I looked it up on Solana Explorer, it showed up as "Unknown Token." Just
a random address with no name, no symbol, no identity.

That's like launching a rewards program for your app but forgetting to give
it a name. Users would see a random ID and have no idea what it represents.

Today I fixed that using Token-2022 — Solana's next-generation token program.

Token-2022 vs the Original SPL Token Program

The original SPL Token Program is solid but basic. To add metadata (name,
symbol, image), you'd traditionally need a separate Metaplex account — an
extra transaction, extra cost, extra complexity.

Token Extensions Program (Token-2022) changes this. It lets you embed
metadata directly inside the mint account itself. One account. Everything
in one place. Fewer transactions, lower cost.

Think of it like this:

Web2 Concept Solana Equivalent
Reward program definition Mint account
Display name / branding On-chain metadata (name, symbol, URI)
User balance record Associated Token Account (ATA)
Transfer API spl-token transfer instruction

What I Built: 100DaysCoin (HUNDO)

  • Token name: 100DaysCoin
  • Symbol: HUNDO
  • Decimals: 6
  • Program: Token Extensions (Token-2022)
  • Mint: 3zX5oyL9skYKWo2ZoUHgBwLpG9BzLe1ViuXLgH8joqFt

Step-by-Step: How I Did It

Step 1: Create the mint with metadata enabled

spl-token create-token \
  --program-id TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb \
  --enable-metadata \
  --decimals 6

Enter fullscreen mode Exit fullscreen mode

The --program-id flag tells the CLI to use Token-2022 instead of the
original SPL Token Program. The --enable-metadata flag activates the
metadata extension on the mint.

Output: Creating token 3zX5oyL9skYKWo2ZoUHgBwLpG9BzLe1ViuXLgH8joqFt
Address: 3zX5oyL9skYKWo2ZoUHgBwLpG9BzLe1ViuXLgH8joqFt
Decimals: 6

Step 2: Initialize on-chain metadata

spl-token initialize-metadata \
  3zX5oyL9skYKWo2ZoUHgBwLpG9BzLe1ViuXLgH8joqFt \
  "100DaysCoin" "HUNDO" \
  "https://raw.githubusercontent.com/solana-developers/opos-asset/main/assets/DeveloperPortal/metadata.json"

Enter fullscreen mode Exit fullscreen mode

This writes the token's name, symbol, and a URI directly onto the mint
account. The URI points to a JSON file with extended details — description,
image, attributes. This is now verifiable by anyone on-chain.

Step 3: Create a token account and mint supply

spl-token create-account 3zX5oyL9skYKWo2ZoUHgBwLpG9BzLe1ViuXLgH8joqFt
spl-token mint 3zX5oyL9skYKWo2ZoUHgBwLpG9BzLe1ViuXLgH8joqFt 1000

Enter fullscreen mode Exit fullscreen mode

Balance check: 1000

Step 4: Transfer tokens to a second wallet

solana-keygen new --outfile ~/second-wallet.json --no-bip39-passphrase

spl-token transfer 3zX5oyL9skYKWo2ZoUHgBwLpG9BzLe1ViuXLgH8joqFt 250 \
  $(solana-keygen pubkey ~/second-wallet.json) \
  --fund-recipient --allow-unfunded-recipient

Enter fullscreen mode Exit fullscreen mode

The --fund-recipient flag is key — it automatically creates the recipient's
Associated Token Account (ATA) and covers the rent cost from my wallet. In
Web2 terms, it's like your API automatically creating a user's balance row
before their first transaction.

Final balances

My wallet: 750 HUNDO ✅
Second wallet: 250 HUNDO ✅

The "Aha" Moment

In Web2, building a token/rewards system means:

  • Database schema for the currency definition
  • CRUD API endpoints for balance management
  • Custom transfer logic with double-spend protection
  • A server running 24/7 to keep it all alive

On Solana with Token-2022:

  • create-token = currency definition
  • create-account = user balance row
  • transfer = transfer API
  • Zero server. Zero maintenance. Publicly verifiable.

And critically — the metadata lives on-chain. Not in your database. Not
on your server. On a public ledger that anyone can read, forever.

What's Next

Day 31 onward: deeper into token extensions — transfer fees,
interest-bearing tokens, and eventually building tokens with real utility.
The foundation is set.


Building daily → @GopichandAI | #100DaysOfSolana Day 30/100