- Problem Statement
- About the project
- Technology Stack
- Compatibility
- Tour through the App
- Flow of the app
- Implementation of Agile Methodology
- Installation
- Special Instructions to Work with the App
- Challenges Faced
- Future Scope
- Support and Contact
-
We come from an only women's college and feel that there was a lot that we faced to come where we are today.
-
Looking around and taking surveys we realized that indeed, the entire women community faces a common set of challenges which include not having communities of like minded people, abstaining from talking on taboo topics, scaling small businesses and access to right resources.
-
Additionally, there is no one stop solution for us women. Thereby, we came up with the idea of SHAKTI, an app for women of all age groups, from those young girls to us to all the mothers out there!
-
The project Shakti is an Android Mobile Application built using Flutter for Google Developer Solution Challenge 2023 by implementing the Agile Methodology.
-
The purpose of the app is to empower women physically, mentally and financially.
-
The app uses many Google Technologies like Flutter, Firebase, Tensorflow Lite model tflite for Face Recognition, Dialogflow for Chatbot and Google Maps for location.
- Our target is to achieve gender equality and empower all women and girls.
- When we analysed the results of our survey, we found that the major problem of women center about lack of awareness and opportunities to discover their real self and perform their best in the society.
- Due to increased gender inequality, women continue to be underrepresented at all levels. There is a much need to empower women physically, mentally as well as financially.
- In some countries, girls are refrained to talk about taboo topics and thus have limited information. Specially in rural areas, basic topics like menstraution, puberty, health problems are not even discussed. Also the working women, loses track of menstraul cycle amidst responsibilities.
- Women are restricted to go out even for work because of safety concerns. The married women are not even allowed to step out in the market to expand their business of homemade pickle, embroidery, etc.
- Women sometimes feel uncomfortable in discussing things with thier known ones and are not able to discover the undelying problems. Thus, they need a women community where they can share their feelings and personal experience.
- Disadvantages in education translate into lack of access to skills and limited opportunities in the labour market.
Through our android application, we target to promote empowerment of women by the use of technology.
- The self care feature aware women about the topics which are not generally discussed very freely in some houses. The feature also provide a product section which redirects the user if they want to buy them. The menstrual track remembers the last date and predicts the next dates according to user's cycle for them to plan their travel, work etc.
- The application provide women user with their current location and nearby locations to feel safe and comfortable along with a safety call which sends an SOS on a mobile shake
- The local business run by many housewives and old women can be easily accessed through the store where they can sell their product and buy other's products.
- Women feel a sense of support and share things anonymously with other women and can be a part of the communities according to their interests.
- The application also try to bridge the gap in education by providing women users with video tutorials on specific sections and various opportunities and scholarships in the world out there that they could apply to.
- Period Tracker: No more keeping track of your last period, explore the world and take up challenges like a free bird
- Self Care: Feeling shy to talk about those taboo topics you never found it easy to interact with even your closed ones!
- Location: Access your current location and nearby places like hospital, police station etc.
- Safety Call: Contact trusted people in emergency with a phone shake
- Groups or Community: A safe platform for women to share feelings and chat anonmously
- Chat Support: Resolve general issues with a chat bot made using Google Dialogflow
- Education: Learn and explore with the tutorials available
- Store: Manage Business and Home together, buy other's products and sell yours
- Authentication: A tflite model is used to recognize females and only allow women user to sign in
- Opportunities: Get acccess to various opportunities, scholarships and schemes just at a click!
- Organizations: Non-profit organizations to reach out for help
- Notiifcation: Daily notifications to keep women motivated
- Flutter and Dart were used to develop the application.
- Necessary packages were imported from pub.dev.
- The backend has been implemented using Firebase. (Firebase authentication, Firestore and Firebase Storage have been used).
- The models for Face Recognition have been implemented using tflite.
- The locations have been fetched using Google Maps.
- Google DialogFlow is used for implementing chat bot support.
The flutter application is compatible to run on android smart phones.
Welcome Screen
Sign Up Screen
Login In Screen
Period Tracker
Self care
Location
Safety Call
Groups or community
Chat Support
Education
Store
MyProducts
MyOrders
Opportunities
Organizations
Daily Notification
Agile is a development methodology adopted today in the software industry. Agile promotes teamwork, flexible procedures, and sle-organizing teams.
SCRUM is a subset of Agile, a framework for developing software.The basic time working unit is the sprint. SCRUM teams always reason in sprints and their planning is limited to sprints.
- Sprint 1: Research and Design
- Sprint 2: Building the application
- Sprint 3: Testing and debugging
- It made the app development process more efficient and predictable.
- We worked on functionalities looking at them as smaller units of the larger app due to which the process was easy to handle, flexible and allowed more room to adjust new functionalities.
Initialise git on your terminal:
git init
Clone this repository:
git clone https://github.com/FlutterFiesta/Shakti.git
Change the directory.
cd Shakti/
Run the packages get
command in your project directory:
flutter pub get
Once the build is complete, run the run
command to start the app:
flutter run
In case you encounter the error A problem occurred evaluating project ':tflite'
,
you should change this on ~\tflite-1.1.2\android\build.gradle:
dependencies {
compile 'org.tensorflow:tensorflow-lite:+'
compile 'org.tensorflow:tensorflow-lite-gpu:+'
}
to this:
dependencies {
implementation 'org.tensorflow:tensorflow-lite:+'
implementation 'org.tensorflow:tensorflow-lite-gpu:+'
}
-
The application can only be run on android physical devices. Due to the app being heavy, it would not work on virtual emulators.
-
Depending on the kind of predictions made by the models, different alerts are prompted. The app allows to proceed when it is confirmed that it is the image of a female after careful examination.
-
In case the app prompts to upload a clear image of a female, please ensure proper lighting in the image.
-
Male users are prompted while selecting the gender and also would not be verified during face recognition.
-
Permission to use Camera, Location, Contacts, Messaging etc should be given whenever prompted.
- The major challenge was recognizing and matching the faces of women only. Though, there are a lot a APIs that support human face recognition, none of them clearly mentions about gender face recognition.
- Therefore, we decided to implement tflite models inorder to predict the women.
- We've taken a survey about the common problems of women nearby, there were many things that need to be catered to but choosing some of them was a challenge for us. Moreover, we don't have suitable technologies for implementing some of the solutions.
- The features decided to serve as small applications in themselves- grouping together would be a major task by selecting the appropriate technology.
- The flutter depreciations, the amount of load an application takes, and updations in firebase were also taken into consideration.
- The live location was not being fetched, then we changed the permissions for the same that could use GPS in android.
- Another challenge was to select UI theme as it should be appealing to attract women users to the app. It should reflect feeling of being at peace, safe, strong, and empowered. Women users should feel comfortable while using the app.
- Period Tracker: Taking into consideration several factors that might lead to irregularity would result in a better prediction
- Self Care: ChatGPT API could be integrated to answer all other questions related to taboo topics instantly
- Location: Search path between two routes can be implemented using Google Maps API
- Safety Call: Call is sent to all the trusted contacts along with message so that they can notice it even when they don't check their phone
- Community: Moderator for the avoidance of hate and negativity
- Chat Support: Implement monetary discussions with counsellors and doctors and multi-language feature
- Education: Upgrade the content with progress levels to encourage women by awarding them with points
- Store: Can integrate payment gateway and also allow males to access this section of the app to buy and sell products
- Authentication: Implement a three layer auth: One more layer using aadhar card gender verification, which could either be an uploaded image or scanner feature or using gestures and movements to verify
- Opportunities: Include the opportunities for both men and women
Email to: codeoverc23@gmail.com