Inspiration

For our response to the prompt, Health, we decided to make a disability aid: a braille transcriber. Braille books play a crucial role in ensuring equal access to literature and information for individuals with visual impairments. These books provide a means for blind and visually impaired individuals to engage with written content, fostering independence, education, and inclusion. However, the availability of Braille books is currently limited, and their prices are high, not only because of printing materials, but for the lack of accurate computer transcriptions necessitating a human transcriber.

What it does

Transcribes English to either Braille 1 or Braille 2

How we built it

Using python for the backend and html, css and javascript for the frontend.

Detailed description:

To translate English text into Grade 2 Braille, we utilized Braille Unicode. Initially, Excel files containing letters and contractions were downloaded as CSV files, with each file forming a dataframe. To handle capitalization, a function was devised to assess whether words were entirely capitalized or contained capitalized letters. Specific capitalization rules were applied accordingly before converting the text to lowercase. With diverse Braille word categories like isolated, single, whole, abbreviations, partial, and connected words, as well as numbers and punctuation, each requiring distinct treatment, the input was segmented into tuples. These tuples indicated if a segment was a word or a digit/punctuation and held the corresponding value. For unmarked words, isolated word CSV files were consulted. If contraction matches were absent, the search extended to single words. Failing contraction matches led to a translation function's activation. Within this function, a pointer iterated through each letter, evaluating whole words, abbreviations, partial words, and connected words in alignment with predefined frameworks. Additionally, a number translation function was implemented, preceding numerical values with a number sign. The process culminated in consolidating outcomes, generating a comprehensive translation for the server.

Challenges we ran into

Figuring out how to make the braille rules into python algorithms and learning all the complicated rules(prefixes, contractions, abbreviations) Braille 2 has. Also how to make a good-looking frontend.

Accomplishments that we're proud of

Making a useable product, and having been able to successfully combine all the elements at the end(frontend, backend).

What we learned

An INSANE amount of Braille rules. Also have better time management when submitting the product.

What's next for English 2 braille translator

Add in all the braille rules we missed (like exceptions) and streamline the frontend(the dropdown was working at SOME point but then stopped working)

Share this project:

Updates

Submission history