Inspiration
My husband (Brian) and I (Claire) are both language enthusiasts! I'm French living in the US, he's American and now speaks fluent(ish!) French (on top of Russian and some Arabic). We always struggle getting our writing right though (I'm even losing my French !) We could both really use something like Nativish every day.
What it does
It corrects grammar, suggests better words, and adjusts tone directly in the browser, and explains the changes to the user.
A typical workflow:
- the user is in gmail, writing an email to a colleague in their second language
- after drafting the email, they copy and paste it into the Nativish chrome extension and hit "Improve it!"
- a second or so later the user is presented with a new version of the email (which they can click to copy) with changes highlighted. An explanation of the changes is presented below that.
- the user clicks to copy the improved text and pastes it back into their email client and sends it feeling more confident about their communication.
How we built it
I build the front-end as a chrome extension written in Vue. Brian wrote the backend in Rust using OpenAI apis. I also created a marketing landing page for it (my day job is marketing) (It's not live yet).
Challenges we ran into
I'm a beginner and heavily leveraged Copilot, Gemini and chatGPT for this project. Additionally, chatGPT is not super reliable:
- getting it to use the correct langage at the right time is actually difficult.
- we can't rely on it to consistently respond in JSON, so we had to switch to a series of calls (instead of just one with multiple outputs)
Accomplishments that we're proud of
Given my own level of development experience at the beginning of this project, I'm happy about how the frontend looks! The workflow and user experience are really low-friction and could be used in personal and professional contexts. We can see people using it!
What we learned
- How to build a chatGPT wrapper
- Claire learnt a lot about Vue and front-end development
- We learned that diffing human langages is harder than it looks
What's next for Nativish
- Launching a Beta and getting user feedback
- Features on the backlog: --- adding "improvement modes": for instance "spellcheck only", "formal tone", "aim for concision" etc --- adding explanations for each diff (currently we have one overall explanation, which is good, but user might want more details about specific changes) --- allowing users to set preferences like which language they want to see the explanation in --- Slack integration (+ others) --- adding a standalone web interface --- mobile app (custom keyboard) (Thanks Alie for pointing out the perfect mobile implementation!)
Built With
- javascript
- openai
- postgresql
- redis
- rust
- vue
Log in or sign up for Devpost to join the conversation.