You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
X-Ray native operations provide 85-95% gas savings compared to WASM implementations:
Groth16 Verify: 260K (X-Ray) vs 2.1M (WASM)
Pairing Check: 150K (X-Ray) vs 1.8M (WASM)
Poseidon Hash: 50K (X-Ray) vs 420K (WASM)
5. Smart Contracts (Soroban)
Contract
Contract ID
Purpose
ZK Verifier
CDAQXHNK2HZJ...
Validates zkLogin proofs on-chain
Smart Wallet
WASM Hash
User wallet with zkLogin authentication
Gateway Factory
CAAOQR7L5UVV...
Deploys and manages smart wallets
JWK Registry
CAMO5LYOANZW...
Stores OAuth provider public keys
x402 Facilitator
CDJMT4P4DUZV...
Handles micropayments
USDC Contract
Configurable
Stellar USDC token operations
Contract Interactions
// Check if wallet existsawaitGatewayFactory.walletExists(addressSeed);// Predict wallet addressawaitGatewayFactory.predictAddress(issHash,addressSeed);// Get all OAuth providersawaitJWKRegistry.getAllProviders();// Check payment statusawaitX402Facilitator.isPaid(requestId);
6. Authentication & Security
Technology
Version
Purpose
NextAuth.js
4.24.7
Authentication framework for Next.js
Google OAuth 2.0
Provider
Social login via Google accounts
JWT Tokens
Auth
Session management with access & ID tokens
CSRF Protection
NextAuth
Built-in cross-site request forgery protection
Web Crypto API
Native
SHA-256 hashing for address derivation
OAuth Flow
User clicks "Sign in with Google"
↓
Google OAuth consent screen
↓
Receive ID token with sub claim
↓
Generate ZK proof of identity
↓
Derive deterministic wallet address
↓
User has self-custody wallet
7. Database & Storage
Technology
Type
Purpose
Neon Database
Serverless PostgreSQL
Primary database for waitlist, analytics
@neondatabase/serverless
0.10.4
HTTP-based PostgreSQL client for edge/serverless
PostgreSQL
RDBMS
Relational data storage
JSONB
Data Type
Flexible JSON storage for analytics events
localStorage
Browser
Client-side persistence for quests, referrals
Database Schema
waitlist Table
CREATETABLEwaitlist (
id SERIALPRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
source VARCHAR(100) DEFAULT 'website',
referrer TEXT,
utm_source VARCHAR(100),
utm_medium VARCHAR(100),
utm_campaign VARCHAR(100),
user_agent TEXT,
ip_address VARCHAR(45),
country VARCHAR(100),
device_type VARCHAR(50),
browser VARCHAR(100),
os VARCHAR(100),
referral_code VARCHAR(50) UNIQUE,
referred_by VARCHAR(50),
referral_count INTEGER DEFAULT 0,
status VARCHAR(50) DEFAULT 'pending'
);
waitlist_analytics Table
CREATETABLEwaitlist_analytics (
id SERIALPRIMARY KEY,
event_type VARCHAR(50) NOT NULL,
event_data JSONB,
session_id VARCHAR(255),
visitor_id VARCHAR(255),
page_url TEXT,
referrer TEXT,
user_agent TEXT,
ip_address VARCHAR(45),
country VARCHAR(100),
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
8. Styling & Design System
Technology
Version
Purpose
Tailwind CSS
3.4.0
Utility-first CSS framework
PostCSS
8.4.32
CSS processing pipeline
Autoprefixer
10.4.16
Automatic vendor prefixes
CSS Custom Properties
Native
Theme colors and spacing variables
Brand Colors
/* Primary */--color-primary:#0066FF; /* Stellaray Blue */--color-accent:#00D4FF; /* Cyan accent *//* Status */--color-success:#00FF88; /* Green */--color-warning:#FFD700; /* Gold */--color-error:#FF3366; /* Red *//* Backgrounds */--color-bg-dark:#0A0A0A; /* Primary background */--color-bg-darker:#07070A; /* Darker sections */--color-bg-card:rgba(255,255,255,0.05);
constapis=['https://api.coingecko.com/api/v3/simple/price?ids=stellar...','https://api.coinpaprika.com/v1/tickers/xlm-stellar...','https://api.coincap.io/v2/assets/stellar',];// Falls through to next API on failure
// Price API - 30 second cacheconstPRICE_CACHE_TTL=30000;// X-Ray events - 3 second cacheconstEVENTS_CACHE_TTL=3000;// Blockchain events - 5 second cacheconstBLOCKCHAIN_CACHE_TTL=5000;