Inspiration

Sometimes we miss-type things. This project was created to help that not matter.

What it does

It corrects words that are typed in the wrong place on the keyboard. For instance, if the word "hello" is typed too far to the left, it becomes "gwkki". Our application recognizes this, and corrects the word to "hello". Our application does not correct words that are not in the hunspell library.

How we built it

We used the hunspell library to check spelling of shifted words. In order to make the project more generic, we import a keyboard json file that specifies the relationships between keys. We provide a single layout, qwerty.json.

Challenges we ran into

When we introduced shifting each hand independently, the program slowed down quite a lot. In an effort to alleviate some word correction errors, we slowed the program down even further. In order to fix this, we moved back to the single-shift policy.

Accomplishments that we're proud of

It works lmao

What we learned

Don't call hunspell too often. Don't compare strings for similarity too often. Sometimes, multiple correct words can occur from shifting a set of characters, in these cases, we cannot accurately and quickly determine which one to use.

What's next for keyfix

Keyfix can be updated to account for more incorrect hand placements. If we are doing this in the future I think we would have to implement some sort of AI. This is because when getting the possible list of words there might be 2 or more words that appear correct,the AI would help in that decision.

Built With

Share this project:

Updates