Your Safe Entry into Crypto β Education, Security, and Confidence powered by AI.
BlockBuddy is a native iOS app (iOS 17+, SwiftUI) that helps beginners understand cryptocurrency through bite-sized lessons, interactive quizzes, gamification, AI-powered explanations, and scam awareness training.
Make cryptocurrency easy, safe, and understandable for everyday people. Instead of focusing on trading or speculation, BlockBuddy focuses on education, security, confidence, and simple explanations.
| Feature | Description |
|---|---|
| Daily Mini Lessons | 30β90 second crypto lessons, one concept at a time |
| Interactive Quizzes | Quick quizzes with XP rewards and streaks |
| AI Explain | Paste wallet popups or transaction text β AI explains in simple language |
| Scam Awareness | Fake vs real wallet examples, phishing detection, security simulations |
| Gamification | XP, streaks, badges, levels (Beginner β Intermediate β Expert) |
| Push Notifications | Daily facts, streak reminders, motivational nudges |
| Widget | Home screen widget showing current streak |
MVVM + Clean Architecture
View (SwiftUI) ββββββββ ViewModel (@Observable) ββββββββ UseCase
β² β β
β βΌ βΌ
Renders UI Holds UI state Business Logic
Calls UseCases Single Responsibility
β
βΌ
Repository
β
βββββββββββββββββ΄ββββββββββββββββ
βΌ βΌ
Data Source Data Source
(Remote) (Local)
β β
Firestore Core Data
BlockBuddy/
βββ App/
β βββ BlockBuddyApp.swift // @main entry point
β βββ AppView.swift // Root tab navigation
β βββ AppState.swift // Central state management
βββ Core/
β βββ AppIntents/ // Siri shortcuts
β βββ Auth/ // Sign in with Apple + Email
β βββ Data/ // Repositories + models
β βββ Models/ // Domain models
β βββ Networking/ // URLSession + cert pinning
β βββ Notifications/ // Push + local notifications
β βββ Persistence/ // Core Data stack
β βββ Security/ // Jailbreak detection
β βββ Services/ // AI, OCR, Keychain, StoreKit, etc.
βββ DesignSystem/
β βββ DesignSystem.swift // Colors, typography, tokens
β βββ Components/ // Reusable SwiftUI views
βββ Features/
β βββ AIExplain/ // AI transaction explanation
β βββ Admin/ // Lesson draft review
β βββ Auth/ // Email sign-in
β βββ Home/ // Main learning feed
β βββ Lessons/ // Lesson detail view
β βββ Onboarding/ // First-time experience
β βββ Premium/ // Paywall & subscriptions
β βββ Profile/ // User progress & stats
β βββ Quiz/ // Interactive quizzes
β βββ ScamAwareness/ // Scam training scenarios
βββ NotificationService/ // Rich push extension
βββ Resources/
β βββ Assets.xcassets // App icon, accent color
β βββ en.lproj/ // English localization
β βββ sv.lproj/ // Swedish localization
βββ Tests/
β βββ UnitTests/ // XCTest unit tests
β βββ UITests/ // XCUITest UI tests
βββ Widget/ // WidgetKit extension
| Technology | Purpose |
|---|---|
| Swift 5.10+ | Primary language |
| SwiftUI | Declarative UI framework |
| SwiftData | Local persistence |
| Core Data | Legacy persistence layer |
| Combine | Reactive data bindings |
| VisionKit | On-device OCR for screenshots |
| StoreKit 2 | In-app purchases |
| Keychain | Secure token storage |
| UserNotifications | Push + local notifications |
| WidgetKit | Home screen widgets |
| AppIntents | Siri shortcuts |
| Firebase | Auth, Firestore, FCM, Crashlytics |
git clone https://github.com/Rizgart/BlockBuddy.git
cd BlockBuddy
open BlockBuddy.xcodeproj
SPM resolves automatically. Packages:
GoogleService-Info.plistBlockBuddy/ folder in Xcodecd Server
cp .env.example .env
# Edit .env with your OpenAI API key
npm install
node src/server.js
The server proxies OpenAI GPT-4o requests. The iOS app uses the local AIExplanationService by default; configure ServerURL in the service to point to your server.
Select the BlockBuddy scheme, choose an iOS 17 simulator, and press βR.
# Run unit tests
xcodebuild test -project BlockBuddy.xcodeproj -scheme BlockBuddy \
-destination 'platform=iOS Simulator,name=iPhone 16 Pro'
# Run UI tests
xcodebuild test -project BlockBuddy.xcodeproj -scheme BlockBuddyUITests \
-destination 'platform=iOS Simulator,name=iPhone 16 Pro'
To add test targets in Xcode:
BlockBuddyUnitTests)BlockBuddyUITests)Tests/UnitTests/AppStateTests.swift β BlockBuddyUnitTestsTests/UITests/BlockBuddyUITests.swift β BlockBuddyUITests#1A3A5C (dark navy)#F39C12 (gold/orange β XP, streaks)#0A0A1A (near-black)PinnedURLSessioncom.blockbuddy.app| Tier | Features |
|---|---|
| Free | Daily lessons, basic quizzes, 3 AI explanations/day |
| Premium | Unlimited AI, scam detector, wallet risk analysis, personalized AI tutor |
Proprietary. All rights reserved.
βThe safest way to start crypto.β