Code Monkey home page Code Monkey logo

jellow-communicator's Introduction

Jellow

Build Status codecov

Jellow Communicator is a friendly Augmentative and Alternative Communication (AAC) app that uses icons/images to enable speech. This freely downloadable Android app can be used for communication by those learning to speak or those having difficulty with speech. Jellow can also be used by toddlers and early learners to learn words and categories frequently used in their daily lives. Jellow’s colourful and friendly icons can help children develop an association between pictures and their corresponding word labels.

Jellow has a simple, visually appealing and easy-to-learn interface consisting central 'category' buttons and 'expressive' side buttons. The content of the app is organized into basic category buttons that make it easy for the user to access and find desired icons. The user can make the app speak out sentences by simply clicking on any of the category buttons followed by any of the expressive buttons.

Jellow has over 1000 icons and over 10000 lines of pre-programmed text. In addition, using the 'keyboard' feature, the user can also generate new sentences and use the app to speak them out aloud. The current version of the app allows the user to choose from 3 languages (English, Hindi, Bengali and Marathi) and multiple accents (Indian, American, British).

Jellow is developed at the IDC School of Design at the Indian Institute of Technology Bombay (IIT-B) located in Mumbai. The application is still under development. If you have any suggestions for improvement, please submit your feedback/comments via email at [email protected].

For further information on Jellow and FAQs, please visit www.jellow.org/

https://www.youtube.com/watch?v=tgPU4dEctE8&t=3s

Get it on Google Play

Whats new

  • Addition of Visual accessibility (TalkBack support).
  • Addition of new language: English (Australia)
  • New design for Serial Keyboard.
  • Addition of new language in Serial Keyboard : Bengali (India)
  • Addition of new layouts to support 19 : 9 notch screen ratio devices.
  • Corrected scrolls in intro screen.
  • Bug reported on Crashlytics.

Contributing to Jellow

There are many ways to contribute to Jellow, and only a few of them involve writing code, language translations, promotions.

  • Want to help to translate Jellow app content in your language? Contact us at [email protected]
  • Want to help to promote Jellow Communicator in relevant forums and communities. Let us know what is your idea at [email protected]
  • Want to contribute to Jellow app development check Contributing Guide

License

Copyright (c) NINAAD DIGITAL TECHNOLOGY PRIVATE LIMITED. All rights reserved.

The Jellow Communicator application's code is licensed under the BSD License.

The Jellow Communicator application's contents including its interface, visual identity, icons and their associated vocabulary are licensed under a Creative Commons Attribution-Non-Commercial-ShareAlike 4.0 International License.

See our Privacy Policy.

Importaint message

The current repository is now archieved. However, the work on Jellow project is ongoing. If you wated to contribute to the Jellow project, contact us at the e-mail address given in the Contributing to Jellow section.

jellow-communicator's People

Contributors

anr007 avatar harshit-budhraja avatar itsayazalam avatar jellowcommunicator avatar rahuljidgedev avatar shrutygupta0297 avatar vaibhav14890 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

jellow-communicator's Issues

Unify the verbiage for Make my board.

  • Currently, on mmb screen start app checks for en-rIN language package.
  • If package absent then downloads the package from firebase. Then use icons from that package and retrieves the verbiage data from Firebase database.
  • If package is present then use only icons from that package and retrieves the verbiage data from Firebase database.
  • In above situation the data package is duplicated. The downloaded en-rIN package is not visible to user on downloaded language dropdown. And verbiage data is available in package but mmb uses retrieves from Firebase.

The Unification/ corrections follows:

  1. If package is present then populate icons and verbiage data (map.json file) from downloaded language package.
  2. If package absent then download the package from Firebase. Then follow point 1.
  3. The downloaded language package should be available to user in downloaded language dropdown.

Change Text color to 80 percent black.

  • The Text color right now is pure black. Change it to 80 % black

  • The color should change at the actionbar title of Select icons, Add/Edit icons, Board Home screens.

  • The dialog box which appears at Select Icons screen. Check the text uses "EkMukta-Bold" font and correct it if not.

  • Check the text color of "Select All (4)" on the same screen. Either text "(4)" has a different color or "Select All". Make both of them use 80 percent black and "Ekmukta-Regular" font.

Screenshot_2020-02-10-12-54-16-361

Icons not getting reset when press home button.

  • Steps to reproduce issue:
  1. Create and save board with one or more icons.
  2. Open created board.
  3. Tap any category icon on the board.
  4. Then press home button, border does not disappears.
  • Ideally, on pressing home icon every icon selection must be cleared.
  • The board should be in state as started a fresh.

Better UI scaling for different device sizes

Currently, Jellow uses fixed dimensions for each UI element for each device size range. It will be better to use dynamic ratio based scaling for better support to new screen sizes.

Duplicate icons getting created.

  • Steps to reproduce issue:
  1. Create a board and add icon to the board. Then save the board.
  2. Now, start editing the same board.
  3. When you are on "Select icons" screen tap "reset" button.
  4. Now tap "Select All" checkbox.
  5. Now tap "next". You can see icons the duplicate icons.

Not able add custom icon only in board setup.

  • Follow below steps:
  1. Create a board and save board.
  2. On "Select Icons" screen I'm not able to move ahead unless I select at least one icon.

This prevents user from creating custom board limiting to them choose at least one icon from existing library.

UI corrections while edit/add new icon.

  • Remove "+" or "-" icon overlapping on input text.
  • Move these icons to right end, center of the line and small increase in size.
  • Below image shows reference for dialog:

Screenshot_20190318-154535

Language icon update optimization

  • Currently, if any icon changes(removed/ added/ updated) the app updates complete language package.
  • Ideal case will icon only changed icon will get updated when user comes online

Change the Category icon list to collapsible list.

  • On Select Icons screens, change the list of top-level category icons list to collapsible list.
  • The expanded list will have respective sub-category icons of Top-level list icons.
  • Add (+) icon to Top level category icon list at the right position. Replace (+) icon with (-) when the list is in the expanded state.
  • Align Top-level category list item as well as a sub-category list item to Left.
  • Eliminate/delete the right top filter icon on the same screen.

Installed language pack updater

Currently, A rough implementation of the local language pack updater is present, which downloads the entire language pack again if an update is triggered using firebase. We can make it better by downloading the parts which have changed rather than the entire package again.

Change title text of color MMB download screen.

  • The title text color of icon download screen/ settings one time icon screen is black.
  • Ideally it should be resource ("@color/app_background") or hexa value "#F7F3C6"
  • Check the code how the color is assigned to other setting screens.

Adjust components at Add/Edit icons dialog.

  • Increase the text size of the dialog title. The title text size should be matched with the button's text size on the same layout.
  • Align the add & minus buttons to the center of EditText.
  • Add spacing between add & minus buttons same as expressive icons and EditText
  • Increase the dialog size horizontally.
    The above changes should reflect on all screen sizes.
    Currently, the layout looks like as below: (phone, 7, 8, 10 respectively)

Screenshot_20200210-150627
Screenshot_2020-02-10-15-11-19
Screenshot_20200210-150629_Jellow
Screenshot_2020-02-10-15-06-24-954

App crash when deleting empty board.

  • Steps to reproduce the issue:
  1. Tap "Add Board"
  2. Add only name to board say "tt"
  3. Save the board.
  4. On "Select icon" screen tap back button and say "Yes" to dialog "Your selection will be lost"
  5. Now, goto "My Boards" screen. Delete board named "tt".
  6. Saying "Yes" to dialog "Are you sure that you want to delete {board_name} ?" app crashes.
  • Also, app crashes when i tried to edit same the board. Steps to reproduce:
  1. Tap edit icon on board "tt".
  2. Tap "Next" to save board then app crashes.

Correct the Lock/ Unlock icon at Board Home screen

The icons to the right of the "lock / unlock" icon slightly shifts. Adjust the "Lock" icon as per the size of "Unlock" icon.
The reference images are attached. The behavior can be reproduced on the phone.
Screenshot_20200210-153435

Screenshot_20200210-153409

Using phone number as the unique identifier for a user on the Firebase database.

  • The system will be such that even if the person changes their phone number, their usage data to date until the change to the new number as well as all data henceforth associated with the new phone number will be logged within the same record.
  • In other words, there will be just 1 record per user irrespective of change in their phone number

Unify the Add/Edit icons and Icon reposition screen

  • Remove existing screens Add/Edit icons and Icon Reposition screens.

  • Add a new screen which has the following features:
    a. "Add new icon" feature as a category icon. The icon should be in the first position of grid
    b. Using icon in the previous point user can create a simple icon or a category
    c. User can reposition category as well as simple icons in grid
    d. User can edit existing icon or category
    e. User can delete existing icon or category. If category deleted all its sub-categories will also get deleted.
    f. User can drag and drop the icon into a category

  • User cannot drag and drop one category onto the other category.

  • User cannot drag and drop one icon into other to form category.

  • Use the below image as a reference. I'll add wireframe shortly.
    IMG_20190901_114636

Correct the dialog.

  • The camera button should be half on the user icon and Half outside of the user icon.
  • Make "Save" button size similar to "Cancel" button
    Correct the above changes only for mobile size. (refer below "phone" image)

phone

  • Shift the camera button slightly towards the user icon (1 or 2 dp).
  • Make "Save" button size similar to "Cancel" button
    Correct the above changes only for 7' & 8' tablet size. ( Below images are of sizes 7' & 8' respectively)

7

8

  • Make "Save" button size similar to "Cancel" button
    Correct the above changes only for 10' tablet size. (refer below "7" & 8 image)

10

Using Firebase to determine connectivity status.

DatabaseReference connectedRef = FirebaseDatabase.getInstance().getReference(".info/connected");
connectedRef.addValueEventListener(new ValueEventListener() {
@OverRide
public void onDataChange(DataSnapshot snapshot) {
boolean connected = snapshot.getValue(Boolean.class);
if (!connected) {
// show a toast msg like "Please Check your Internet connectivity"
}
}

@OverRide
public void onCancelled(DatabaseError error) {
System.err.println("Listener was cancelled");
}
});

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.