egovernments / Digit-Core

DIGIT Core is multi-tenant platform consisting of common reusable microservices for digitizing public services at speed and scale.
https://core.digit.org
MIT License
15 stars 46 forks source link

Voice-Based Form Filling Component for Flutter to Enhance Digital Access to Public Services #371

Open Taherabharmal opened 4 months ago

Taherabharmal commented 4 months ago

Description

In light of the digital transformation of public services, this project endeavours to create a UI component tailored for Flutter applications. The main objective is to address the challenge faced by many citizens in completing digital forms by developing a voice-based form-filling solution. This component, when integrated into a Flutter form, will automatically extract existing form elements and conversationally engage users to facilitate form completion. By offering a generic voice-based form-filling capability, the project aims to significantly enhance the user experience of Flutter-based apps. Given the increasing popularity of Flutter for building mobile applications used by citizens and frontline workers, such innovation has the potential to streamline interactions with digital services and improve accessibility for all users.

Goals

Design and develop a voice-based form-filling component specifically tailored for Flutter applications on DIGIT. Create a conversational interface that engages users to facilitate form completion using voice commands. The interface should allow the user to hear as well as see the voice prompts and recorded responses.

Expected Outcome

Acceptance Criteria

Voice-Based Form-Filling Component Development:

Conversational Interface:

Form Element Extraction and Dynamic Prompt Generation:

User Interface Design:

Backend Speech Processing Service:

Integration with NLP Service:

Thorough Testing and Debugging:

Frontend Optimization:

Out of Scope:

Implementation Details

Mockups / Wireframes

Product Name DIGIT

Project Name Voice-Based Form Filling Component for Flutter

Organization Name: eGovernments Foundation

Domain Public Services

Tech Skills Needed: Flutter, Java Spring Boot

Mentor(s) Ramkrishna Sahoo

Complexity High

Category Feature

Sub Category API, Frontend, Backend, LLM

AieshaShetty commented 4 months ago

Hi @Taherabharmal, I would like to work on this project. My tech stack includes core Java, Spring Boot, and JPA. Is there any smaller issue to work on this first?

sbhamita commented 4 months ago

Hi @Taherabharmal, I would like to work on this project. My tech stack includes core Java, C++,DSA,HTML. Is there any smaller issue to work on this first?

Raj0408 commented 4 months ago

Hi @Taherabharmal I want to contribute to this project for flutter and machine learning. My tech stack is Flutter, Django, and machine learning.

if there is any issue related to fronted or machine learning please give me a chance.

AbhimanyuSamagra commented 4 months ago

Do not ask process related questions about how to apply and who to contact in the above ticket. The only questions allowed are about technical aspects of the project itself. If you want help with the process, you can refer instructions listed on Unstop and any further queries can be taken up on our Discord channel titled DMP queries. Here's a Video Tutorial on how to submit a proposal for a project.

renuka010 commented 3 months ago

Hi @Taherabharmal, I would like to contribute to this project. I am proficient in Java, Spring boot and also have experience creating LLM pipelines. I would like to know more information and guidelines on how to get involved with this project.

abhi87374 commented 3 months ago

Hello @Taherabharmal, I'm new to Flutter development & had some experience in it this year , eager to learn more and contribute to this project. The detailed description you provided gives me a good understanding of what needs to be achieved with the Voice-Based Form Filling Component. While I may be a beginner, I'm enthusiastic about gaining hands-on experience and growing my skills. If there are any smaller tasks or issues suitable for someone at my level, I'd appreciate the opportunity to start there and gradually ramp up. Thank you for considering me for this project!

goyal02aditi commented 3 months ago

Hello Team I am a computer science student with proficiency in flutter and good knowledge in backend. I found the project Voice-Based Form Filling Component for Flutter to Enhance Digital Access to Public Services very innovative and strongly aligning with my capabilities. I would love to work on it and make some meaningful contributions. Before moving forward, I have a couple of questions since I'm participating in C4GT’s DMP event for the first time and wish to familiarize myself more on how things work on the other end :-

How many teammates can I expect working on a project? Will the backend and frontend be tackled by different set of people or everyone is expected to work on both aspects? Would there be a separate platform to communicate with my team and the mentors, apart from the common discord portal? Whom should I connect with regarding the technical queries about the project details? Thanks for your consideration, looking forward to be part of the team asap! Warm regards Aditi Goyal

pinki639 commented 3 months ago

hey there @renuka010 pinki bhati is this side i want to work on this project , i have good understanding of core and advanced java

VIDHIGUPTA17 commented 2 months ago

Subject: Request to Contribute to Voice-Based Form Filling Component Project

Dear Ramkrishna Sahoo,

I hope this message finds you well. My name is Vidhi Gupta, and I am interested in contributing to the "Voice-Based Form Filling Component for Flutter to Enhance Digital Access to Public Services" project under eGovernments Foundation.

I have a strong background in Flutter development and API integration, and I am excited about the potential impact of this project. I am eager to bring my skills to the team and contribute to enhancing digital accessibility.

Could you please provide more details on how I can start contributing and any specific areas where my expertise might be most beneficial?

Thank you for considering my request. I look forward to the opportunity to discuss how I can contribute to this meaningful project.

Ramkrishna-egov commented 1 month ago

Issue Link [https://github.com/egovernments/egov-rnd/issues/20]

Weekly Goals

Week 1

Week 2

Week 3

Week 4

Week 5

Week 6

EuclidStellar commented 1 month ago

Issue Link [https://github.com/https://github.com/egovernments/egov-rnd/issues/20]

Weekly Learnings & Updates

Week 1

  1. Research and Development on Digit Component: Explored the digit_components package to understand its functionality and how it can be leveraged for form fields. Identified the key components that could be integrated with voice commands.

  2. Library Exploration: Investigated libraries such as speech_to_text and flutter_tts for integrating voice commands. Evaluated the pros and cons of different libraries to determine the best fit for the project.

  3. UI Components for Voice Commands: Created basic UI components to handle voice commands and form submission. Developed initial prototypes to test the integration of voice commands with form fields.

Week 2

  1. Voice Integration on Dummy UI: Implemented basic voice integration on a dummy UI to test the feasibility. Ensured the app can listen for voice commands and update the UI accordingly.

  2. TalkBack Feature Exploration: Experimented with TalkBack as an alternative to text-to-speech for providing audio feedback to users. Compared the user experience and effectiveness between TalkBack and flutter_tts.

  3. Semantic Widget Integration: Integrated semantic widgets to improve accessibility and provide better screen reader support. Ensured that the app is accessible to users with visual impairments.

Week 3

  1. Flutter TTS and Speech-to-Text Integration: Successfully integrated flutter_tts and speech_to_text packages into the project. Implemented voice command functionality to fill form fields.

  2. DigitTextField from Digit Components: Incorporated DigitTextField from the digit_components package to manage form fields. Created UI components to handle voice commands and form submission.

Week 4

  1. Form Validation and Snack Bar Notifications: Implemented form validation to ensure user input meets required criteria. Provided user feedback through a snackbar notification upon successful form submission.

  2. Reactive Text Form Field: Used the Reactive Text Form field in code along with form control. Transitioned DigitTextField to DigitTextFormField.

  3. Digit Components with Voice Commands: Added more Digit Components enabled with voice commands such as DigitReactiveDropDown.

Week 5

  1. Flutter Material 3 Widget Implementation: Implemented voice command functionality on Flutter Material 3 widgets. Transitioned this functionality to DigitReactiveDropDown.

  2. Voice Command in Digit Component (DigitCheckBoxTile): Added voice command functionality to DigitCheckBoxTile (reactive checkbox). Used "agreed" as a keyword to mark the tick in the checkbox.

Week 6

c4gtthumbnail png