Thank You for your purchase

Thank you for choosing our code. We appreciate your purchase and aim to provide exceptional service.

If you need help with the code or documentation, contact our Support Team here.


Setup Admin Panel

Installing Admin Panel on Shared Hosting

  1. Create your domain or subdomain in shared hosting.
  2. Set up an empty database in your shared hosting and keep track of these credentials:
    i. Database name
    ii. Database username
    iii. Database password
  3. Uploading the source code to Server
    i. Begin by extracting the Source Code you acquired from CodeCanyon.
    ii. Unpack the Admin Panel zip file and proceed to upload the PHP Code Folder's contents onto your Server.

    Note :- .htaccess file is essential; kindly verify its existence. If it is not visible, enable the option to display hidden files.
    Note :- Supported PHP versions are 7.4 to 8.1.
  4. Now head to your project's URL (e.g., mydomain.com or subdomain.mydomain.com).
    The Installation screen will then walk you through the process seamlessly.

Great news! You're all set to start your Elite Quiz experience at: https://elitequiz.wrteam.me

Default Login Details
User: admin
Pass: admin123


Customize Admin Panel for your brand

Customize Panel
  • Change Login Page Background Image & Bot Image from here
  • Add the JWT Key, which will be used to generate users token for added security.


Settings for the App

System Configurations
  • Refer Coins : Amount of coins your referral gets for using your referral code.
  • Earn Coins : Amount of coins user gets for referring.
  • Reward Coins : Amount of coins user gets from watching Rewarded Ads.
  • App Versions: Used for Enabling force update for users with outdated apps.
  • Answer Display : Control whether to show users the correctness of their submitted answers.
  • Language Mode : Control wether you want multilingual app or single language app.
  • Option E Mode : Control wether you want 5 options questions or 4 options questions in quiz zone.
  • Fix Question in Level : Choose between a fixed or varying number of questions for Levels.

In addition to that, you have full control over the types of quizzes you wish to display and those you prefer not to include.



Elite Quiz App

Setup flutter

Explore the official Flutter website at https://docs.flutter.dev/get-started/install for a complete installation guide.
Prefer video tutorials? Check out the playlist:


Steps to run this project successfully:

  1. Begin by extracting the downloaded code, resulting in the creation of the Elite Quiz - Flutter Code zip folder.
  2. Next, extract the contents of the Elite Quiz - Flutter Code folder and launch it in either Android Studio or Visual Studio Code.
  3. Access the IDE terminal and enter the command "flutter pub get" to fetch the necessary dependencies.
  4. For iOS users, execute the following commands in the terminal:
    cd ios
    pod install
    cd ..
  5. Finally, open the terminal and input "flutter run" to run the application. This will initiate the execution of the project.

Change app package name

  1. If you are using Android Studio, you can press CTRL+SHIFT+R to open Replace in Files tool.
    then search our package name com.wrteam.flutterquiz and replace it with your package name in all places.
  2. Android Studio Replace Package Name
  3. And if you are using VS Code, you can press CTRL+SHIFT+F to open Find in Files Tool.
    then search our package name com.wrteam.flutterquiz and replace it with your package name in all places.
  4. VS Code Replace Package Name

Change application name

Similarly you can change the app name by finding and replacing in all the places.

  • For Android Studio
  • For VS Code


  • Integrate firebase with your Project

    1. First, Create a new Firebase Project

    2. After creating your Firebase project, you'll now connect your Android application to it

    3. Now, fill in the details, to get your SHA-1 & SHA-256 keys visit https://developers.google.com/android/guides/client-auth.
      SHA keys are required for using firebase authentication.





    4. Now it's time for connecting IOS to your Firebase Project.



    Congrats! You have successfully connected your android & IOS app to your firebase project.



    Enable Firebase Authentication

    1. Head to your Firebase project, click on the authentication menu, and enable all the mentioned sign-in methods from the image.
    2. Note :- If your are using google sign-in you need to enable OAuth APIs that you want to use using https://console.developers.google.com/.
      Enable people api and make sure you've filled out all required fields in the console for OAuth consent screen.
      Otherwise, you may encounter APIException errors.

    3. Add the SHA-256 key as shown in below image. Go to Project Settings -> Your apps -> Android apps
    4. If you want to use Phone authentication in IOS then
      1. Go to ios/Runner/GoogleService-Info.plist and copy REVERSED_CLIENT_ID
      2. Paste it in ios/Runner/Info.plist as shown in below image


    Enable Cloud Firestore

    Cloud Firestore is required for Group & 1v1 Battles to work.
    Follow these steps shown in images below.





    Make Sure to add these rules in your firestore, otherwise it won't work.

    rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if request.auth.uid != null; } } }


    Connect your admin panel to the app

    1. Go to lib/utils/constants/constants.dart and add your admin panel url, like shown in the image below.

    Enable Notifications for App

    Access your Firebase project and locate "Project Settings" > "Cloud Messaging" as shown in the image.



    Then, enable Cloud Messaging in Google Cloud.

    Comeback to firebase project, copy the Server Key, and paste it under "Settings" > "Notification Settings"


    Change application version and app launcher icon

  • Go to pubspec.yaml Update the version:A.B.C+X as shown in image below.
  • Note :- Make sure execute flutter packages get, flutter build or flutter run after changing the version.

    Set app's default language

    1. The App's default language is English, but you can easily modify it. To do so, navigate to the lib/utils/constants/constants.dart file and locate the section displaying the language codes, as illustrated in the image below.
      You can obtain your desired language code from the following link: https://developers.google.com/admin-sdk/directory/v1/languages.
      Just ensure that the language code you select is available in the aforementioned link for proper functionality.
    2. If your desired language code is not in supported languages list, add language code in list as shown in below image.
    3. create a [language-code].json file in assets/languages/ if your desired language is not available. Copy all labels from en.json and translate the values accordingly.


    Add new app language from admin panel

    1. Enable language mode in your admin panel as shown in the image below
    2. Go to languages section and select the language you want to from the drop down.
    3. Also Add this language code in supported languages list in your app code.
    4. create a [language-code].json file in assets/languages/ if your desired language is not available. Copy all labels from en.json and translate the values accordingly.

    Change app colors

    You can change colors of the app from lib/ui/styles/colors.dart.

    Configure Ads

    Google AdMob

    To begin, create an AdMob account and set up three Ad Units:

    1. Banner Ad
    2. Interstitial Ad
    3. Rewarded Ad

    Find your app ID here: https://support.google.com/admob/answer/7356431?hl=en.
    1. For Android, go to android/app/src/main/AndroidManifest.xml and enter android App Id as shown in below image.
    2. For IOS, go to ios/Runner/Info.plist and enter IOS App Id as shown in below image.
    3. Go to Settings > Ads.Settings in admin panel and add AdMob ad ids as shown in below image.
    Unity Ads
    Go to Settings > Ads.Settings in admin panel and add Unity ad ids as shown in below image.

    Change intro slider images

  • Update SVGs in assets/images folder using the same filenames shown in the images.

  • Change default profile avatar images

    1. Update Avatars in assets/images/profile folder using the same filenames preferably shown in the images.
    2. Then add those filenames in assets/files/defaultProfileImages.json file.

    Configure In-App purchases

    For creating in-app purchase products refer to the documentation here: Apple, Google
    For android (Play Store)
    • Upload your application to the Play Store and create in-app products as shown in the image. Ensure that the ID of consumable products in both Apple and Play Store is the same.
    For IOS (App Store)
    Add In-App products from Admin Panel
    • Then After creating in-app purchase products, add their respective coins and productIds in Admin Panel > Settings > Coin Store Settings as shown in image.


    Enable message feature in battles

    To enable sending messages and emojis in Battle rooms you need to do this setup.
    1. Go to your firebase project, Firestore Database -> Indexes and create a composite query index as shown in below images.
    2. Then from lib/utils/constants/constants.dart you can add/modify predefinedMessages a list of predefined messages as per your liking.
    3. You can update the emojis from assets/images/emojis/. These emojis must be SVGs.
    4. Any additional emojis that you might have added you also need to add them in assets/files/emojis.json


    Configure force update

    You can require users to update to the latest app version by specifying it in the Play/App Store. Upon opening the app, a pop-up will prompt them to update.
    1. To do that go to admin panel, Settings -> System Configurations and enable force update.
    2. Go to pubspec.yaml and copy the version number of application.
    3. Enter the version number that we just copied into, Android and Ios Version fields.
    4. Add the App Store & Play Store links to your app. And make sure that links are correct, otherwise force update will not work as expected.

    Manage Badges

    1. Manage badges from here
    2. To unlock badges like Super Sonic, Flashback and Brainiac minimum question is set to 5.
      You can change that as shown in below image.
    3. To unlock badges like Combat Winner, Clash Winner and Quiz Warrior winner must be declared by completing battle.
    4. To get more information about how badges works click here.

    Setup Exams

    1. Go to admin panel, Settings -> System Configurations and enable exam module as shown in image.
    2. If you want to update the exam rules you can do so by updating examRules in lib/utils/constants/constants.dart

    Setup earning module

    1. To set up the earning module for users to redeem coins, access the Admin Panel and go to Settings -> Payment Settings.
      Users can convert earned coins to real money with customizable conversion rates. For example here, per 10 Coins user will get 1 Amount.
      Amount here refers to the real money. And Currency Symbol will be used for the amount.
    2. You can also modify the notes that will be shown to user when they redeem the coins, and for that go to lib/utils/constants/constants.dart
    3. From there you also have the option to add or update payment methods.
      These methods require manual approval by the Admin, who then proceeds to send the actual funds to the users through their chosen payment options specified in this section.
    4. Admin can view and process payment requests in the Payment Requests section of their Admin Panel.


    Configure quiz timers, score and coins management

    • Maximum Winning Coins : The highest coins users can earn based on their correct answers percentage in the quiz.
    • Minimum Winning Percentage: The minimum correct answers percentage needed to earn Maximum Winning Coins.
    • Score: Points awarded per correct answer.
    • Timer Settings : Customize quiz durations from here.
    • Welcome Bonus : coins received on initial login.
    • Lifeline Deduct : adjust coins needed for using lifeline.
    • Random Battle Entry : base entry fee for playing random battles.
    • Review Answers Deduct : coins deducted for reviewing quiz answers.


    Change app constants

    1. In addition to modifying System Configurations and System Utilities, you have the option to make specific changes to certain application aspects through the lib/utils/constants/constants.dart file.

      These include altering Sound files, setting the initialSelectedCountryCode for the default country selection in the Phone login screen,
      defining maxPhoneNumberLength to limit the phone number length based on your country, adjusting the wait duration for opponents in battles, setting the in-between questions duration, modifying the deduction for wrong answers, and configuring extra points for the quickest answers, among other possibilities.
    2. To modify coin distribution, access lib/utils/ui_utils.dart and update the equation according to your preferences.


    Generate release version of this product

    To generate the release version of this application, please refer to the platform-specific guides: Android IOS.
    Important: Before deploying to IOS, ensure that the "China" option is unchecked as demonstrated in the image below.



    FAQ & Common Issues

    1. If you are seeing warnings on admin panel after the installation, then check if the warning contains ini_set()
      Solution:

      Then Add ob_start(); in your index.php file, like shown in the image.

    For data safety issues in the Play Store or app rejection, watch the given tutorial below to resolve the problem.


    Contact Support

    Delighted to serve and support you! Contact our support team lead by Jay Parmar on Skype.

    We're available Mon-Fri, 9:00 am - 6:00 pm IST (GMT +5.30), India - Asia.

    Expect prompt responses within 24 hours via comments, forum, or email.


    Your Feedback

    We highly appreciate your decision to choose our product. Providing top-notch service is our priority, and we value your feedback.
    Kindly take a moment to rate us by clicking the link. Your honest input helps us improve and deliver the best experience possible.


    Reach Us

    Unlock the potential of WRTeam, your go-to hub for top-notch Flutter app development and web applications.
    Reach out to us today for quality solutions and exciting freelance opportunities.

    Visit us at wrteam.in or drop an email to support@wrteam.in.

    Thank you for considering us!



    Changelogs

    See what's new added, changed, fixed, improved or updated in the latest versions.

    Version 2.1.2 (21 Sep, 2023)

    • Added ๐Ÿค– 1v1 Battles with Bots: No opponent? No problem! Battle out AI bots for non-stop gaming fun!
    • Added ๐ŸŒŸ Premium Quiz Categories: Elevate your quiz game with Premium Categories and Subcategories, available in all the quizzes!.
    • Updated ๐Ÿ Apple Login Upgrade: We've migrated to the sign_in_with_apple package for secure Apple login.
    • Improved ๐Ÿงน App Optimization: Trimmed down app size by removing unused packages and code.
    • Improved ๐Ÿš€ Code Refinement: Cleaner and more efficient codebase.
    • Admin Panel Specific
    • Added ๐Ÿš€ Premium Quiz Categories: Create and edit premium categories/subcategories.
    • Added ๐ŸŒŸ Revamped Login Page Design Experience: Customize it with Your Own Background Image for a Unique Touch.
    • Added ๐ŸŽจ Custom Bot Image: Personalize your Bot's look easily from the Admin Panel!
    • Fixed ๐Ÿ” Reinforced Security: We've brought back the JWT Key input for enhanced security within the admin panel.