๐Ÿ† Teqani Rewards for Flutter

The most powerful and flexible gamification system for Flutter applications, developed by Teqani.org.

Pub Flutter Platform License: MIT Buy Me A Coffee

A complete solution for implementing engaging gamification in your Flutter apps with unmatched flexibility, superior performance, and advanced features not available in other packages.

๐Ÿ’ก MULTIPLE STORAGE OPTIONS! Unlike other gamification packages, Teqani Rewards supports multiple storage backends (SharedPreferences, SQLite, Hive, Firebase) with zero configuration needed.

โ˜• Support This Project

If you find this package helpful, consider buying us a coffee to support ongoing development and maintenance!

Buy Me A Coffee

๐Ÿค Need a custom Flutter package? Don't hesitate to reach out! We're passionate about building solutions that help the Flutter community. Contact us to discuss your ideas!


โœจ Key Features

  • โœ… Multiple Storage Options - Choose from SharedPreferences, SQLite, Hive, or Firebase
  • โœ… Achievement System - Track and reward user accomplishments
  • โœ… Streak Tracking - Motivate users with daily engagement
  • โœ… Time-Limited Challenges - Create urgency and excitement
  • โœ… Customizable Themes - Match your app's design perfectly
  • โœ… Firebase Analytics - Track user engagement and behavior
  • โœ… Pre-built Widgets - Quick integration with beautiful UI
  • โœ… Cross-Platform Support - Works flawlessly on iOS, Android, and Web
  • โœ… Localization Support - Reach a global audience
  • โœ… Dark/Light Mode - Perfect for any app theme
  • โœ… Comprehensive API - Full control over all features

๐Ÿ”’ Advanced Security Features

Teqani Rewards ensures your data is always secure and protected!

  • ๐Ÿ” Data Encryption - All local data is encrypted using AES-256 encryption
  • ๐Ÿ›ก๏ธ Secure Storage - Protected storage implementation for sensitive data
  • ๐Ÿ”‘ Key Management - Secure key generation and management system
  • ๐Ÿ”„ Data Integrity - Automatic data validation and integrity checks
  • ๐Ÿšซ Anti-Tampering - Protection against unauthorized modifications
  • ๐Ÿ“ฑ Platform Security - Leverages platform-specific security features
  • ๐Ÿ” Audit Logging - Track all data access and modifications
  • ๐Ÿงน Secure Cleanup - Proper data sanitization when removing data

๐Ÿ’ก SECURITY FIRST! Unlike other gamification packages, Teqani Rewards implements enterprise-grade security measures to protect your users' data and achievements.

๐Ÿ”‘ Zero Configuration Storage

Teqani Rewards works right out of the box with multiple storage options!

This means:

  • No complex database setup
  • No server configuration needed
  • Choose the storage that fits your needs
  • Switch between storage types easily
  • Simple setup without complex configurations

Simply add the package and start implementing gamification in minutes!

๐Ÿš€ PREMIUM FEATURE: Advanced Analytics Integration

SPECIAL HIGHLIGHT Unlike other gamification packages, Teqani Rewards offers built-in analytics capabilities for tracking user engagement!

Our advanced analytics system supports:

  • ๐Ÿ“Š User Engagement Tracking - monitor achievement unlocks and streak progress
  • โฑ๏ธ Time-Based Analytics - track user activity patterns
  • ๐Ÿ’ฐ Reward Impact Analysis - measure the effectiveness of your rewards
  • ๐ŸŽฏ Custom Event Tracking - log any user interaction
  • ๐Ÿ“ฑ Cross-Platform Analytics - consistent tracking on all devices
  • ๐Ÿ“ˆ Performance Metrics - monitor system performance

No other Flutter gamification package offers such comprehensive analytics capabilities!

๐Ÿ“ฆ Installation

Add this top-rated package to your pubspec.yaml file:

dependencies:
  teqani_rewards: ^0.1.0

Then run:

flutter pub get

๐Ÿ” Basic Usage

Get started quickly with this simple implementation:

import 'package:flutter/material.dart';
import 'package:teqani_rewards/teqani_rewards.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  // Initialize Teqani Rewards
  await TeqaniRewards.init(
    theme: TeqaniRewardsTheme.defaultTheme,
    storageType: StorageType.firebase,
    enableAnalytics: true,
  );
  
  runApp(MyApp());
}

โš™๏ธ Advanced Configuration Options

Storage Configuration

Choose and configure your preferred storage:

// SharedPreferences
final storage = StorageManager(type: StorageType.sharedPreferences);

// SQLite
final storage = StorageManager(type: StorageType.sqlite);

// Hive
final storage = StorageManager(type: StorageType.hive);

// Firebase
final storage = StorageManager(type: StorageType.firebase);

Achievement System

Create and manage achievements:

// Save achievements
await storage.saveAchievements([
  Achievement(
    id: '1',
    title: 'First Login',
    description: 'Logged in for the first time',
    points: 100,
  ),
]);

// Get achievements
final achievements = await storage.getAchievements();

Streak Management

Track and update user streaks:

// Save streaks
await storage.saveStreaks([
  Streak(
    id: '1',
    currentStreak: 5,
    longestStreak: 10,
    lastActivityDate: DateTime.now(),
  ),
]);

// Get streaks
final streaks = await storage.getStreaks();

๐Ÿ“ฑ Complete Implementation Example

Create a fully-featured gamification system with just a few lines of code:

import 'package:flutter/material.dart';
import 'package:teqani_rewards/teqani_rewards.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  await TeqaniRewards.init(
    theme: TeqaniRewardsTheme.defaultTheme,
    storageType: StorageType.firebase,
    enableAnalytics: true,
  );
  
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Teqani Rewards Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: RewardsDemo(),
    );
  }
}

class RewardsDemo extends StatefulWidget {
  @override
  _RewardsDemoState createState() => _RewardsDemoState();
}

class _RewardsDemoState extends State<RewardsDemo> {
  late StorageManager _storage;
  
  @override
  void initState() {
    super.initState();
    _storage = StorageManager(type: StorageType.firebase);
    _initializeStorage();
  }
  
  Future<void> _initializeStorage() async {
    await _storage.initialize();
    await _loadData();
  }
  
  Future<void> _loadData() async {
    final achievements = await _storage.getAchievements();
    final streaks = await _storage.getStreaks();
    // Update UI with loaded data
  }
  
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Teqani Rewards'),
      ),
      body: Column(
        children: [
          // Add your widgets here
        ],
      ),
    );
  }
}

๐ŸŽจ Widget Examples

๐ŸŽฏ Onboarding Widgets

Gamified Onboarding

Gamified Onboarding Demo

GamifiedOnboardingDialog.showGamifiedOnboarding(
  context,
  title: 'Welcome to Teqani Rewards',
  subtitle: 'Your journey to success begins here',
  onComplete: () {},
  steps: [
    const OnboardingStep(
      title: 'Welcome to Teqani Rewards',
      description: 'Track your progress and earn rewards',
      icon: Icons.star,
    ),
    const OnboardingStep(
      title: 'Streaks',
      description: 'Maintain your daily streaks',
      icon: Icons.local_fire_department,
    ),
    const OnboardingStep(
      title: 'Achievements',
      description: 'Unlock achievements as you progress',
      icon: Icons.emoji_events,
    ),
    const OnboardingStep(
      title: 'Challenges',
      description: 'Complete challenges to earn rewards',
      icon: Icons.flag,
    ),
  ],
);

Quest Onboarding

Quest Onboarding Demo

QuestOnboardingDialog.showQuestOnboarding(
  context,
  title: 'Your Quest Begins',
  subtitle: 'Embark on an adventure of achievement',
  onComplete: () {},
  steps: [
    const OnboardingStep(
      title: 'Begin Your Journey',
      description: 'Start your path to greatness',
      icon: Icons.map,
    ),
    const OnboardingStep(
      title: 'Track Your Progress',
      description: 'Watch your streaks grow',
      icon: Icons.trending_up,
    ),
    const OnboardingStep(
      title: 'Collect Achievements',
      description: 'Unlock badges and rewards',
      icon: Icons.workspace_premium,
    ),
    const OnboardingStep(
      title: 'Complete Challenges',
      description: 'Test your dedication',
      icon: Icons.flag,
    ),
  ],
);

Pulse Onboarding

Pulse Onboarding Demo

PulseOnboardingDialog.showPulseOnboarding(
  context,
  title: 'Get Started with Teqani',
  subtitle: 'Experience the power of consistent progress',
  onComplete: () {},
  steps: [
    const OnboardingStep(
      title: 'Welcome to Teqani',
      description: 'Your journey begins here',
      icon: Icons.rocket_launch,
    ),
    const OnboardingStep(
      title: 'Build Your Streak',
      description: 'Consistency is key to success',
      icon: Icons.local_fire_department,
    ),
    const OnboardingStep(
      title: 'Earn Achievements',
      description: 'Reach milestones and unlock rewards',
      icon: Icons.emoji_events,
    ),
    const OnboardingStep(
      title: 'Take on Challenges',
      description: 'Push yourself to new heights',
      icon: Icons.flag,
    ),
  ],
);

๐Ÿ”ฅ Streak Widgets

Floating Streak

Floating Streak Demo

TeqaniStreakWidgets.floating(
  streak: Streak(
    id: 'floating_streak',
    currentStreak: 5,
    longestStreak: 10,
    lastActivityDate: DateTime.now(),
    streakType: 'daily',
  ),
  onUpdate: () {
    // Handle streak update
  },
);

Modern Streak

Modern Streak Demo

TeqaniStreakWidgets.modern(
  streak: Streak(
    id: 'modern_streak',
    currentStreak: 3,
    longestStreak: 7,
    lastActivityDate: DateTime.now(),
    streakType: 'daily',
  ),
  onUpdate: () {
    // Handle streak update
  },
);

Circular Progress Streak

Circular Progress Streak Demo

TeqaniStreakWidgets.circularProgress(
  streak: Streak(
    id: 'circular_streak',
    currentStreak: 7,
    longestStreak: 14,
    lastActivityDate: DateTime.now(),
    streakType: 'daily',
  ),
  onUpdate: () {
    // Handle streak update
  },
);

Calendar View Streak

Calendar View Streak Demo

TeqaniStreakWidgets.calendar(
  streak: Streak(
    id: 'calendar_streak',
    currentStreak: 2,
    longestStreak: 5,
    lastActivityDate: DateTime.now(),
    streakType: 'daily',
  ),
  onUpdate: () {
    // Handle streak update
  },
);

Pulsating Streak

Pulsating Streak Demo

TeqaniStreakWidgets.pulsating(
  streak: Streak(
    id: 'pulsating_streak',
    currentStreak: 10,
    longestStreak: 15,
    lastActivityDate: DateTime.now(),
    streakType: 'daily',
  ),
  onUpdate: () {
    // Handle streak update
  },
);

Count Up Streak

Count Up Streak Demo

TeqaniStreakWidgets.countUp(
  streak: Streak(
    id: 'count_up_streak',
    currentStreak: 1,
    longestStreak: 3,
    lastActivityDate: DateTime.now(),
    streakType: 'daily',
  ),
  onUpdate: () {
    // Handle streak update
  },
);

๐Ÿ† Achievement Widgets

Cube Achievement

Cube Achievement Demo

CubeAchievementCard(
  achievement: Achievement(
    id: 'first_streak',
    title: 'First Streak',
    description: 'Complete your first streak',
    points: 100,
    isUnlocked: true,
    unlockedAt: DateTime.now(),
  ),
  onComplete: () {
    // Handle achievement completion
  },
);

Prism Achievement

Prism Achievement Demo

PrismAchievementCard(
  achievement: Achievement(
    id: 'seven_day_streak',
    title: '7 Day Streak',
    description: 'Maintain a streak for 7 days',
    points: 200,
    isUnlocked: false,
  ),
  onComplete: () {
    // Handle achievement completion
  },
);

Pyramid Achievement

Pyramid Achievement Demo

PyramidAchievementCard(
  achievement: Achievement(
    id: 'fourteen_day_streak',
    title: '14 Day Streak',
    description: 'Maintain a streak for 14 days',
    points: 300,
    isUnlocked: false,
  ),
  onComplete: () {
    // Handle achievement completion
  },
);

Modern Achievement

Modern Achievement Demo

ModernAchievementCard(
  achievement: Achievement(
    id: 'twenty_one_day_streak',
    title: '21 Day Streak',
    description: 'Maintain a streak for 21 days',
    points: 400,
    isUnlocked: false,
  ),
  onComplete: () {
    // Handle achievement completion
  },
);

Minimalist Achievement

Minimalist Achievement Demo

MinimalistAchievementCard(
  achievement: Achievement(
    id: 'twenty_eight_day_streak',
    title: '28 Day Streak',
    description: 'Maintain a streak for 28 days',
    points: 500,
    isUnlocked: false,
  ),
  onComplete: () {
    // Handle achievement completion
  },
);

Gradient Achievement

Gradient Achievement Demo

GradientAchievementCard(
  achievement: Achievement(
    id: 'thirty_day_streak',
    title: '30 Day Streak',
    description: 'Maintain a streak for 30 days',
    points: 600,
    isUnlocked: false,
  ),
  onComplete: () {
    // Handle achievement completion
  },
);

๐ŸŽฏ Challenge Widgets

Circular Challenge

Circular Challenge Demo

CircularChallengeCard(
  challenge: Challenge(
    id: 'daily_login',
    title: 'Daily Login',
    description: 'Log in every day for a week',
    points: 100,
    type: 'daily',
    progress: 0.5,
    startDate: DateTime.now(),
    endDate: DateTime.now().add(const Duration(days: 7)),
    isCompleted: false,
    lastUpdated: DateTime.now(),
  ),
  onComplete: () {
    // Handle challenge completion
  },
);

Timeline Challenge

Timeline Challenge Demo

TimelineChallengeCard(
  challenge: Challenge(
    id: 'two_week_streak',
    title: 'Two Week Streak',
    description: 'Maintain your streak for 14 days',
    points: 200,
    type: 'streak',
    progress: 0.3,
    startDate: DateTime.now(),
    endDate: DateTime.now().add(const Duration(days: 14)),
    isCompleted: false,
    lastUpdated: DateTime.now(),
  ),
  onComplete: () {
    // Handle challenge completion
  },
);

Flip Challenge

Flip Challenge Demo

FlipChallengeCard(
  challenge: Challenge(
    id: 'three_week_streak',
    title: 'Three Week Streak',
    description: 'Maintain your streak for 21 days',
    points: 300,
    type: 'streak',
    progress: 0.2,
    startDate: DateTime.now(),
    endDate: DateTime.now().add(const Duration(days: 21)),
    isCompleted: false,
    lastUpdated: DateTime.now(),
  ),
  onComplete: () {
    // Handle challenge completion
  },
);

Pulse Challenge

Pulse Challenge Demo

PulseChallengeCard(
  challenge: Challenge(
    id: 'four_week_streak',
    title: 'Four Week Streak',
    description: 'Maintain your streak for 28 days',
    points: 400,
    type: 'streak',
    progress: 0.1,
    startDate: DateTime.now(),
    endDate: DateTime.now().add(const Duration(days: 28)),
    isCompleted: false,
    lastUpdated: DateTime.now(),
  ),
  onComplete: () {
    // Handle challenge completion
  },
);

Wave Challenge

Wave Challenge Demo

WaveChallengeCard(
  challenge: Challenge(
    id: 'monthly_master',
    title: 'Monthly Master',
    description: 'Complete a 30-day streak',
    points: 500,
    type: 'streak',
    progress: 0.05,
    startDate: DateTime.now(),
    endDate: DateTime.now().add(const Duration(days: 30)),
    isCompleted: false,
    lastUpdated: DateTime.now(),
  ),
  onComplete: () {
    // Handle challenge completion
  },
);

Gradient Challenge

Gradient Challenge Demo

GradientChallengeCard(
  challenge: Challenge(
    id: 'ultimate_streak',
    title: 'Ultimate Streak',
    description: 'Complete a 100-day streak',
    points: 1000,
    type: 'streak',
    progress: 0.01,
    startDate: DateTime.now(),
    endDate: DateTime.now().add(const Duration(days: 100)),
    isCompleted: false,
    lastUpdated: DateTime.now(),
  ),
  onComplete: () {
    // Handle challenge completion
  },
);

๐Ÿ“‹ System Requirements

  • Flutter: >=3.0.0
  • Dart: >=3.0.0
  • Android: minSdkVersion 17 or higher
  • iOS: iOS 9.0 or higher

๐Ÿข About Teqani.org

This premium package is developed and maintained by Teqani.org, a leading company specializing in innovative digital solutions and advanced Flutter applications. With years of experience creating high-performance gamification systems, our team ensures you get the best user engagement tools possible.

๐Ÿ“ข Why Choose Teqani Rewards?

  • Multiple Storage Options: Choose the perfect storage for your needs
  • Superior Performance: Optimized for smooth operation on all devices
  • Advanced Features: More capabilities than any other gamification package
  • Analytics Ready: Built-in tracking for user engagement
  • Professional Support: Backed by Teqani.org's expert team
  • Regular Updates: Continuous improvements and new features

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

Copyright ยฉ 2025 Teqani.org. All rights reserved.

Libraries

teqani_rewards