GeoDroneGeoDrone

ProductReady v0.2.0 Release Notes 🎉

Credits & Referral System, System Admin Enhancements, and Infrastructure Improvements

Released: 8 Dec 2025

We're excited to announce ProductReady v0.2.0! This release brings a comprehensive credits and referral system, enhanced system admin capabilities, and significant infrastructure improvements.

🌟 Highlights

  • Credits & Referral System - Incentivize user growth with virtual credits and referral rewards
  • System Admin Enhancements - User management, system logs, and system reviews
  • Redemption Codes - Batch generation and management of promotional codes
  • Notification Records - Track all email sends with admin visibility
  • Testing Infrastructure - Comprehensive auth and API integration tests

✨ New Features

💰 Credits System

A complete virtual currency system for your SaaS:

Credit Sources

  • referral - Inviting friends to sign up
  • onboarding - Completing onboarding steps
  • early_adopter - Early adopter rewards
  • promotion - Promotional campaigns
  • manual - Admin-granted credits
  • redemption - Redeeming promotional codes

User Features

  • View credit balance in Account Settings
  • Transaction history with filtering
  • Real-time balance updates

Admin Features

  • Grant credits to any user
  • View all transactions across users
  • List users with credit balances
// Get user's credits
const credits = await trpc.credits.getMyCredits.query();
// { balance: 1000, totalEarned: 1500, totalUsed: 500 }

// Admin: Grant credits
await trpc.credits.addCredits.mutate({
  userId: "user_123",
  amount: 500, // $5.00
  source: "manual",
  description: "Customer support credit",
});

🎁 Referral Program

Grow your user base with built-in referral incentives:

How It Works

  1. Users generate a unique referral code
  2. Share link: https://yourapp.com/sign-up?ref=CODE
  3. New user signs up and both receive credits:
    • Referrer: $5.00 in credits
    • New User: $2.00 in credits

Features

  • Unique referral code per user
  • Referral stats in Account Settings
  • Automatic reward distribution
  • Fraud prevention (can't self-refer)
// Generate referral code
const { referralCode } = await trpc.referral.generateReferralCode.mutate();

// Validate code (public)
const { valid, referrerName } = await trpc.referral.validateReferralCode.query({
  code: "ABC123",
});

🎟️ Redemption Codes

Promotional code system for marketing campaigns:

Features

  • Batch code generation (up to 100 at once)
  • Configurable credit amounts
  • Usage limits per code
  • Expiration dates
  • Export to CSV

Admin Interface

  • Create single or batch codes
  • View redemption history
  • Disable/enable codes
  • Track usage statistics

👤 System Admin Enhancements

Comprehensive platform administration:

User Management

  • List all users with search and filtering
  • View detailed user profiles
  • Manage admin roles
  • View user notifications and activity

System Logs

  • Audit trail for all admin actions
  • Filter by category, entity, action
  • User attribution for changes

System Reviews

  • Manage customer testimonials
  • Featured review ordering
  • CRUD operations with audit logging

📧 Notification Records

Track all email communications:

  • Record every email send in database
  • View in admin user detail page
  • Filter by type and status
  • Debug delivery issues

🔧 Infrastructure Improvements

Testing Infrastructure

Authentication Tests

  • Sign up/sign in flows
  • OAuth provider integration
  • Session management
  • Password reset flows

API Integration Tests

  • tRPC router coverage
  • Error handling validation
  • Authorization checks

Database Improvements

New Tables

  • user_credits - Credit balances
  • user_credit_transactions - Transaction history
  • redemption_codes - Promotional codes
  • redemption_history - Code usage tracking
  • system_reviews - Customer testimonials
  • system_logs - Audit trail

Schema Updates

  • user_profiles - Added referral fields
  • spaces - Unified billing fields (provider-agnostic)

Documentation

New Docs

  • Credits & Referral System guide
  • System Admin documentation
  • Email notification records
  • Upload and attachments guide

🛠️ Technical Changes

Dependencies

  • Next.js 16.0.3 → 16.0.7 (security patch)
  • Renamed packages/sendemailpackages/emaillib

Breaking Changes

Billing Fields Renamed

// Before
spaces.stripeCustomerId
spaces.stripeSubscriptionId

// After (provider-agnostic)
spaces.billingCustomerId
spaces.billingSubscriptionId

Migration Required

Run migrations to add new tables and fields:

pnpm db:generate
pnpm db:migrate

📊 API Changes

New Routers

Credits Router

  • credits.getMyCredits - Get current balance
  • credits.getMyTransactions - Transaction history
  • credits.addCredits (admin) - Grant credits
  • credits.listTransactions (admin) - All transactions
  • credits.listUsersWithCredits (admin) - Users with credits

Referral Router

  • referral.getMyReferralInfo - Referral stats
  • referral.generateReferralCode - Generate code
  • referral.validateReferralCode - Validate (public)
  • referral.processReferral - Process reward

Redemption Codes Router

  • redemptionCodes.redeem - Redeem a code
  • redemptionCodes.list (admin) - List all codes
  • redemptionCodes.create (admin) - Create code
  • redemptionCodes.createBatch (admin) - Batch create
  • redemptionCodes.update (admin) - Update code
  • redemptionCodes.delete (admin) - Delete code

🎨 UI Updates

Account Settings Modal

New tabs added:

  • Credits - Balance and transaction history
  • Referral - Referral link and stats

System Admin Dashboard

New sections:

  • User management with detail views
  • Redemption code management
  • System reviews management
  • System logs viewer

📈 Performance

  • Optimized database queries with proper indexes
  • Added caching for frequently accessed data
  • Improved build times with Turbopack

🐛 Bug Fixes

  • Fixed space context persistence with cookies
  • Fixed agent task creation with proper spaceId
  • Fixed artifact panel duplicate creation
  • Fixed chat message handling
  • Improved space initialization flow

📅 What's Next (v0.3.0)

  • Real-time notifications (WebSocket)
  • Advanced analytics dashboard
  • Email templates with React Email
  • Feature flags system
  • A/B testing infrastructure

🙏 Acknowledgments

Thanks to all contributors who made this release possible!


Upgrade Instructions

# Update dependencies
pnpm install

# Run migrations
pnpm db:generate
pnpm db:migrate

# Restart development server
pnpm dev

Happy building! 🚀

On this page

ProductReady v0.2.0 Release Notes 🎉 | GeoDrone