Essay Assistant

August 14, 2021

As I prepared for the IELTS exam, I encountered several challenges while preparing for the writing portion of the test. The main issues were the lack of fast feedback and the need to use many tools to check your essays. I wanted to solve these problems by creating a web application that would provide faster and cheaper feedback and help people prepare for the exam using fewer tools.

Read more about the initial problem statement

The writing part is generally considered the most challenging. The whole process of coming home from work or school, sitting down, and writing an essay is tedious. Every additional step in the process makes it even more difficult.

A typical writing process was something like this:

  1. You need to find a question. They must be reliable, well written, and resemble the questions you will get in the exam;
  2. You need to write an essay. You also need to ensure that you have disabled the grammar checker. Otherwise, you will get distracted by grammar mistakes and will not be able to focus on the content;
  3. You need to use a timer;
  4. You need to check the word count;
  5. You need to check grammar and spelling;
  6. You need a thesaurus to find synonyms for simple words;
  7. You need to go through a checklist to ensure you caught the most common mistakes.

Another issue was that checking essays with a teacher is costly and takes a lot of time. So students usually do 80% of the preparation on their own and use paid help only at the end of their preparation.

People organized a few online groups for exam takers. I was a member of several such groups. One group focused specifically on the writing portion of the exam. They used a large Google Docs file to share essays for review.

The main problem with this approach was that there were few incentives for people to read and provide feedback on others' essays. Most essays were left unchecked.

Problem Research

I conducted interviews with people preparing for an exam to gather information on their past and present experiences, and the tools they used to self-check their essays. I also collected feedback from teachers on essays and analyzed a collection of almost 100 already checked essays to understand common mistakes. Additionally, I reviewed various online resources such as grammar and essay checkers, thesauruses, and online courses and self-study guides to identify helpful tools and strategies for effective essay writing.

Based on this research, I decided that I would focus on solving the following problems first:

  • Ensuring that grammar checker is tailored to the exam;
  • Replacing self-checklists with programmatic checks;
  • Providing faster feedback on essays;
  • Providing some guidance for people who are not familiar with the exam.

After that, I wrote down requirements and constraints.


Then I moved to exploring the overall design and core components: navigation, cards, layout, colors and interactions.

I researched similar apps such as online and offline text editors, grammar checkers, online essay checkers, Dribbble, book readers, and apps that allowed leaving comments anywhere.

Research board

Making Decisions

Thinking about requirements and constraints in advance significantly reduced the number of design decisions I needed to make during the design process.

For instance, decision such as what color to use for the sidebar was easy to make because it followed that the sidebar should be light-gray to improve readability on low-resolution monitors.

Card layout and color exploration


As I worked on the design, I explored a variety of options for different elements of the interface. This was an ongoing process, as I constantly evaluated and refined my choices based on their effectiveness and overall aesthetic. Through this process, I arrived at a final design that met my requirements.

For a moment, let's consider the main screen of the app — the editor. It consists of a text area for the essay and a sidebar. Let's take a look at the sidebar.

In the sidebar, there is a list of check cards, which were initially shown on a white background. However, after testing this design on a low-resolution monitor, I found that the cards were difficult to see on a white background, and changed the background color to light gray ➀.

In the collapsed form, cards only show a header and one line of description ➁. This provides more space for other cards and at the same time, the meaning remains clear. Each card is color coded to reflect the exam scoring system ➂. Each card can be clicked to expand and show the check results, with the option to include a link to a more detailed explanation of the check ➃.

One aspect of the UX design that I particularly liked was the way that underlined text interacted with the corresponding check card. Clicking on an underlined check scrolls the sidebar to the related card, and clicking on a check card scrolls the text to the underlined text. This feature helps users easily connect checks with the corresponding text.

Another key feature of the app is the ability to apply suggestions without manually copying them. For instance, when a grammar check produces a suggestion, users can simply click a button to apply it, making the correction process more efficient. This feature enhances the user experience by making it easier and faster to fix mistakes.

Besides the editor, I also designed other app screens, including the sign-in, sign-up, password reset, and dashboard screens, landing page as well as all the transactional emails that the app sends.

Landing page design


I conducted a few more interviews with people who were preparing for the exam to get feedback on the app. The feedback was positive, and people said that the app was easy to use and replaced multiple other tools for them. The main concern was about the reliability of the calculated score. Therefore, I removed the calculated score feature until I can come up with a more effective solution.

Despite the positive feedback, I decided to stop developing this app further because it wasn't 10 times better than the existing solutions, so I didn't feel it was worth charging money for. I stripped the app of most of its currently unnecessary features, such as authentication and the ability to save essays to make it easier to use.

The app is live at Please note that it may take a few seconds for the Heroku dynos to wake up, as the app uses the Eco Dynos Plan.