For new components we use shadcn/ui.
To generate a component, use this script:
pnpm gen accordionIt translates needed component into pnpx shadcn@version add accordion and installs it.
To test on a remote mobile device (e.g., Safari on iPhone), run the dev server with HTTPS:
pnpm dev --experimental-httpsThis is required because Safari requires HTTPS for Web Cryptography API (crypto.subtle) access, which Solana dependencies need.
To generate sitemaps from the build route information:
pnpm build:info
pnpx tsx scripts/update-sitemap.tsThis generates:
public/sitemap.xml- sitemap indexpublic/default-sitemap.xml- static pagespublic/accounts-sitemap.xml- known program addresses
The receipt feature generates shareable OG images for transactions at /og/receipt/[signature].
Environment: Configure via .env. Key variables (see .env.example for full list):
NEXT_PUBLIC_RECEIPT_ENABLED— enable receipt view and shareable OG imagesRECEIPT_CLUSTER_PROBE_ENABLED— when tx is not on mainnet, look it up on devnet/testnetRECEIPT_BASE_URL— base URL for previews (defaults to explorer base URL)RECEIPT_OG_IMAGE_VERSION— optional; bust third-party caches when the image changesRECEIPT_CACHE_HEADERS— optional Cache-Control override for OG images
Vercel Firewall Configuration Required: If Attack Challenge Mode is enabled, add a bypass rule for /og/ path in Vercel Dashboard -> Firewall -> Add New... -> Rule, otherwise social media crawlers won't be able to fetch preview images.
Name: Allow bots for OG images Description: Allow social media crawlers to fetch OG image previews Rule:
If `Request Path` `Starts with` `/og/receipt/`
Then `Bypass`
Name: Allow bots to visit receipt pages Description: Allow social media crawlers to visit receipt pages Rule:
If `Request Path` `Starts with` `/tx/`
AND `Query` `view` `Equals` `receipt`
Then `Bypass`
Log mode does not allow the preview to work. Bypass is needed