Search packages, repositories and app categories

GitHub repositoryCh4rl3B/inquiry

inquiry

A flutter package to create Inquiries

inquiry project cover
Stars
1
Forks
0
Last push (UTC)
Mar 23, 2024
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

Customizable Questionnaire for Flutter.

This package allows to create questionnaire (similar to poll but with a valid value option) that is customizable by the developer. It can be used to create very fancy quiz that you can adapt to your app design and will run in all platforms.

The idea of this package was based in Flutter Polls

Features

Animated
animated demo
How do it look

animated demo animated demo

Getting started

In the pubspec.yaml of your flutter project, add the following dependency:

dependencies:
  ...
  inquiry: latest_version

Import it:

import 'package:inquiry/inquiry.dart';

Usage

You can create a simple inquiry with


Inquiry(
  inquiryId: 'inquiry',
  options: List.generate(
    5, (index) {
      return InquiryOption(
        id: index,
        title: Text(
          'Option $index',
        ),
        votes: 0,
        rightAnswer: index == 2,
      );
    },
  ),
  titleWidget: Text(
    "Title of the Inquiry",
    style: const TextStyle(
      fontWeight: FontWeight.w500,
      fontSize: 16,
    ),
  ),
  onVoted: (option, amount) {
    print("Voted option: ${option.title}. "
        "The option is ${option.rightAnswer ? 'correct' : 'incorrect'}");
    return Future.value(true);
  },
);

You can customize the look and feel with InquiryStyle

  InquiryStyle(
    optionsBorderRadius: BorderRadius.circular(8),
    votedInquiryPercentRadius: const Radius.circular(8),
    optionsBorder: Border.all(color: Colors.black),
    rightAnswerBorder: Border.all(color: Colors.green),
    optionsBackgroundColor: Colors.grey.shade300,
    wrongBackgroundColor: Colors.red.shade100,
    rightBackgroundColor: Colors.green.shade100,
    optionsSplashColor: Colors.blue,
    votedWrongProgressColor: Colors.red.shade300,
    votedRightProgressColor: Colors.green.shade300,
    voteInProgressColor: Colors.blue,
    voteButtonStyle: ElevatedButton.styleFrom(
      backgroundColor: Colors.blue,
      foregroundColor: Colors.white,
      padding:
      const EdgeInsets.symmetric(horizontal: 24, vertical: 8),
    ),
    crossAxisAlignment: CrossAxisAlignment.start,
  )

for more information look at the example

Additional information

You can contribute to the package any time, just create a Pull Request. All contributions are welcome 👍🏼

Ernesto Alfonso GitHub avatar
GitHub author

Ernesto Alfonso ↗

Fullstack Software Engineer.

Norderstedt, Schleswig-Holstein. Germany
LanguagesDartSwiftKotlinObjective-C

Packages published by this repository

Dependencies used

Dependency list 5 items

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗