Inspiration
The journey began with a simple frustration: existing AI image generation services either required complex API setups, expensive monthly subscriptions, or lacked the flexibility developers need. We wanted to democratize access to AI image generation while building a sustainable business model. The goal was ambitious – create a complete ecosystem that spans from command-line tools to native mobile apps, all powered by a blazing-fast serverless backend that could scale from hobby projects to enterprise workloads.
What it does
Pixie is a comprehensive AI image generation platform that bridges the gap between powerful AI capabilities and user accessibility. At its core, it provides:
- Native iOS & Android apps with full RevenueCat integration for seamless in-app purchases
- Rust-powered CLI tool for developers who live in the terminal
- Serverless backend on Cloudflare's edge network handling millions of requests
- OAuth authentication (GitHub, Google, Apple Sign In) with secure token management
- Credit-based monetization system with transparent pricing ($0.04-$0.94 per image)
- Public galleries with social features for discovering and sharing creations
- Enterprise features including admin dashboards, usage analytics, and bulk operations
The platform processes images in real-time, stores them in Cloudflare R2 (S3-compatible), and delivers them through a global CDN, ensuring sub-100ms response times worldwide.
How I built it
The architecture leverages modern technologies across the entire stack:
Backend (Rust/WASM):
- Built on Cloudflare Workers for edge computing with automatic global distribution
- Rust for memory safety and performance (3-5x faster than Node.js alternatives)
- D1 SQLite database for transactional data with foreign key constraints
- R2 object storage for images with 7-day retention policies
Mobile Apps:
- iOS: UIKit with programmatic constraints, MVVM architecture, and RevenueCat SDK
- Android: Jetpack Compose with Material Design 3, Clean Architecture, and Retrofit
- Both apps share core business logic patterns while maintaining platform-specific UI/UX
CLI (Rust):
- Async/await patterns with Tokio runtime
- Interactive prompts and batch operations
- Cross-platform support (Windows, macOS, Linux)
Monetization:
- RevenueCat for subscription management and receipt validation
- Stripe for card payments with 3D Secure
- NOWPayments for cryptocurrency (BTC, ETH, DOGE, LTC)
Challenges I ran into
- Rate Limiting at Scale: Implementing per-user concurrent request limits in a distributed serverless environment required creative use of D1's transactional capabilities and careful lock management.
- Cross-Platform Consistency: Ensuring the CLI, iOS, and Android apps all handled authentication flows, error states, and image processing identically while respecting platform conventions.
- RevenueCat Integration: Bridging RevenueCat's subscription model with our credit-based system required custom webhook handlers and real-time synchronization between purchase events and credit delivery.
- Image Processing Performance: Optimizing WASM bundle size while maintaining image manipulation capabilities – we reduced the initial 4MB bundle to under 1MB through aggressive tree shaking and lazy loading.
- OAuth State Management: Handling OAuth flows across native mobile apps, CLI, and web required implementing device authorization flows and secure state persistence.
Accomplishments that I'm proud of
- Zero-downtime deployment architecture with automatic rollbacks
- Sub-100ms global response times through edge computing
- 99.9% uptime over the past 6 months with no data loss incidents
- Complete feature parity across all platforms (CLI, iOS, Android)
- Transparent pricing model with detailed cost breakdowns (33.3% to OpenAI, 27% margin)
- Full offline support in mobile apps with smart caching and retry logic
- Accessibility features including VoiceOver/TalkBack support and keyboard navigation
What I learned
- Rust + WASM is production-ready: The performance gains and memory safety made the learning curve worthwhile. Our p99 latency improved by 67% compared to our initial TypeScript prototype.
- RevenueCat simplifies complex billing: What would have taken months to build (receipt validation, subscription management, analytics) was implemented in days.
- Edge computing changes everything: Running code close to users eliminates entire classes of performance problems. Database queries that took 200ms from a central server now complete in 10ms.
- Native > Web for mobile: Despite the maintenance overhead, native apps provided 3x better user retention and 5x higher conversion rates than our initial React Native prototype.
- Developer tools drive adoption: The CLI became our most powerful marketing tool, with developers discovering the platform through GitHub and then upgrading to mobile apps.
What's next for Pixie
- Model expansion: Integration with more technologies
- AI-powered prompt enhancement: Using GPT-4 to automatically improve prompts for better results
- Video generation: Expanding beyond static images to AI-generated animations
- Localization: Supporting 12 additional languages in Q2 2025
- Desktop apps: Native macOS and Windows applications
The RevenueCat integration will expand to support tiered subscriptions, family sharing, and promotional offers, making Pixie the most comprehensive AI creative platform available.
Built With
- android-studio
- clean-architecture
- cloudflare-d1-(sqlite)
- cloudflare-r2
- cloudflare-workers
- coroutines
- edge-computing
- jetpack-compose
- jwt
- kotlin
- material-design-3
- mvvm
- nowpayments
- oauth-(github/google/apple)
- openai-api-(dall-e)
- retrofit
- revenuecat-sdk
- rust
- stripe
- swift
- swiftui
- tokio
- typescript
- uikit
- webassembly-(wasm)
- wrangler
- xcode
Log in or sign up for Devpost to join the conversation.