← indomeme.site

INDOMEME — Documentation

Everything about this site: the coins, buying, holder uploads, and the developer guide. Written for humans first, AI agents second.

Semua tentang situs ini: coin-nya, cara beli, upload holder, dan panduan developer. Ditulis agar mudah dibaca manusia, dan mudah dibaca AI.

1. What is indomeme.site? 2. The coins 3. How to buy 4. How to upload memes (holders) 5. What holders can do 6. Developer guide 7. API reference 8. Safety & disclaimer

1. What is indomeme.site?

indomeme.site is the official home of an Indonesian meme coin collection on the Solana blockchain. One website lists every coin, shows live prices fetched straight from the public DexScreener API, embeds charts, and lets visitors buy directly on the site through the Jupiter swap widget.

It is also a community gallery: people who hold the coins can upload memes to each coin's wall. No accounts, no emails — a Solana wallet is the only login, and holding coins is the only permission needed.

In one sentence

A one-page portal + per-coin meme galleries, powered entirely by public on-chain data.

indomeme.site adalah rumah resmi koleksi meme coin Indonesia di blockchain Solana. Satu website memuat semua coin, menampilkan harga live langsung dari API publik DexScreener, menyematkan chart, dan memungkinkan pengunjung beli langsung di situs lewat widget swap Jupiter.

Situs ini juga galeri komunitas: orang yang memegang coin-nya bisa upload meme ke tembok tiap coin. Tanpa akun, tanpa email — dompet Solana adalah satu-satunya login, dan memegang coin adalah satu-satunya syarat.

Dalam satu kalimat

Portal satu halaman + galeri meme per coin, sepenuhnya digerakkan data on-chain publik.

2. The coins

All coins live on Solana and were launched on pump.fun. Badges: Ecosystem = the flagship of this site, Listed = graduated to a PumpSwap AMM (freely tradable), Bonding = still on the pump.fun bonding curve (price rises with buys until graduation).

Semua coin ada di Solana dan diluncurkan lewat pump.fun. Badge: Ekosistem = token utama situs ini, Terlisting = sudah graduasi ke AMM PumpSwap (bebas swap), Bonding = masih di bonding curve pump.fun (harga naik mengikuti pembelian sampai graduasi).

CoinStatusContract address (CA)
The list above is generated from /api/config — the same source the homepage uses. Adding a coin to tokens.json updates this table automatically.
Daftar di atas dibuat otomatis dari /api/config — sumber yang sama dengan halaman depan. Menambah coin di tokens.json otomatis memperbarui tabel ini.

3. How to buy

  1. Install Phantom — a crypto wallet app for your phone or browser (phantom.app). Write the seed phrase on paper, never share it.
  2. Get SOL — buy SOL on any exchange (Binance, Indodax, etc.) and withdraw it to your Phantom address.
  3. Pick a coin on the homepage. Tap its row to see the live chart and stats first.
  4. Tap BUY — the Jupiter swap widget opens right on the page. Connect Phantom, choose the amount, confirm. Bonding-phase coins are bought on pump.fun (the site links you there directly).
  5. Done — the coin appears in your Phantom wallet. No signup anywhere.
Tip: always double-check the contract address (CA) before swapping. Copy it from this site or from the official pump.fun page — never from a DM.
  1. Install Phantom — aplikasi dompet crypto di HP atau browser (phantom.app). Tulis seed phrase di kertas, jangan pernah bagikan.
  2. Siapkan SOL — beli SOL di exchange mana pun (Binance, Indodax, dll), lalu kirim ke alamat Phantom kamu.
  3. Pilih coin di halaman depan. Klik barisnya untuk lihat chart live dan statistiknya dulu.
  4. Klik BELI — widget swap Jupiter terbuka langsung di halaman. Connect Phantom, tentukan jumlah, konfirmasi. Coin fase bonding dibeli lewat pump.fun (situs ini langsung mengarahkan ke sana).
  5. Selesai — coin muncul di dompet Phantom kamu. Tidak perlu daftar akun di mana pun.
Tips: selalu cek ulang alamat kontrak (CA) sebelum swap. Copy dari situs ini atau halaman pump.fun resmi — jangan dari DM siapa pun.

4. How to upload memes (holders only)

The meme gallery is token-gated, per coin. The rule is simple: hold a coin → you can post on that coin's wall. Hold GOLD → GOLD memes. Hold two coins → two walls open.

  1. Open the Gallery page and tap + Upload Meme (or tap Connect Wallet in the top bar).
  2. Connect your Phantom wallet — the server checks your balance on-chain, server-side. Nothing is signed, no transaction is made; it is a read-only balance check.
  3. If you hold at least — of a coin, that coin appears in the upload dropdown (with your balance shown).
  4. Choose the image (jpg/png/webp, auto-compressed to ~900px), add an optional caption, upload.
  5. Your meme appears on the wall instantly with your wallet address (shortened) as credit.

Rules that keep the wall clean

Galeri meme memakai token-gate per coin. Aturannya sederhana: pegang coin → bisa posting di tembok coin itu. Pegang GOLD → meme GOLD. Pegang dua coin → dua tembok terbuka.

  1. Buka halaman Galeri dan klik + Upload Meme (atau klik Connect Wallet di bar atas).
  2. Connect dompet Phantom — server mengecek saldo on-chain, di sisi server. Tidak ada tanda tangan, tidak ada transaksi; murni pembacaan saldo.
  3. Kalau kamu memegang minimal — sebuah coin, coin itu muncul di dropdown upload (beserta jumlah saldomu).
  4. Pilih gambar (jpg/png/webp, otomatis dikompres ke ~900px), tulis caption opsional, upload.
  5. Meme-mu langsung tampil di tembok dengan alamat dompetmu (disingkat) sebagai kredit.

Aturan biar tembok tetap rapi

5. What holders can do

6. Developer guide

Architecture (single VPS, single Node process)

Configuration

# Everything below is managed WITHOUT editing code:
#   • Social link (X), minimum-hold threshold  →  /admin panel
#   • Admin password                                     →  systemd env (see deploy/indomeme.service)
#   • Listen port                                        →  systemd env PORT
#
# Code-level config (rarely touched):
CONFIG.refreshMs    # price auto-refresh interval (index.html)
MIN_HOLD            # fallback if settings.json missing (server.js)
# settings.json     # written by the admin panel — do not hand-edit while running

Common tasks

Arsitektur (satu VPS, satu proses Node)

Konfigurasi

# Semua di bawah ini dikelola TANPA edit kode:
#   • Link sosmed (X), ambang minimal hold  →  panel /admin
#   • Password admin                                 →  env systemd (lihat deploy/indomeme.service)
#   • Port server                                    →  env systemd PORT
#
# Konfigurasi level kode (jarang disentuh):
CONFIG.refreshMs    # interval refresh harga (index.html)
MIN_HOLD            # fallback kalau settings.json tidak ada (server.js)
# settings.json     # ditulis oleh panel admin — jangan diedit manual saat server jalan

Tugas yang sering

7. API reference

All endpoints are JSON. No auth; the wallet address in the request body is the identity (server verifies holdings on-chain per request).

Semua endpoint berformat JSON. Tanpa auth; alamat dompet di body request adalah identitasnya (server memverifikasi saldo on-chain di setiap request).

EndpointMethodPurpose
/api/configGETminHold, token list, gallery counts
/api/galleryGETall memes per coin (max 200/coin)
/api/verifyPOST{address} → on-chain holdings of listed coins + which coins unlock
/api/uploadPOST{address, ca, image(dataURL), cap} → validates holder + cooldown + image magic bytes, saves
/api/deletePOST{address, ca, ts} → deletes only the caller's own meme

Error codes (upload)

BAD_ADDRESS 400 · BAD_COIN 400 · NOT_HOLDER 403 · COOLDOWN 429 · TOO_BIG/SIZE 413 · NOT_IMAGE 415 · FULL 507 · RPC_DOWN 503 (fail-closed)

Kode error (upload)

BAD_ADDRESS 400 · BAD_COIN 400 · NOT_HOLDER 403 · COOLDOWN 429 · TOO_BIG/SIZE 413 · NOT_IMAGE 415 · FULL 507 · RPC_DOWN 503 (fail-closed)

8. Safety & disclaimer

P Follow the dev on pump.fun — @devindomeme · Ikuti dev di pump.fun — @devindomeme