Inspiration
In 10th grade, I played a game with a bunch of my friends where we would all come up with a story, write three sentences, then pass the paper to the next person. That game led to many wonderful memories, and was my basis for this project. I was also inspired by George Orwell's essay "Politics and the English Language". It talked about the importance of language, and how we should be very careful and skilled when writing.
What it does
ChatGPT generates a prompt for the user. They can write as much as they want. The passage they created will be sent to ChatGPT, and ChatGPT will add its own spin to it. This goes back and forth for a few rounds. After the rounds, the user's inputs will be sent to ChatGPT and it will grade how well the user did based on their quality of metaphors, descriptive language, creativity, and conciseness.
How we built it
I first built the backend SpringBoot server. It facilitated the API calls to ChatGPT. I then created the Frontend, first the main page and the functionality. The functionality included the textarea, submit button, generating the prompt when the page loads, generating the summary page, updating the main page each time the user submits. For the frontend, I made heavy use of React's useState hook, as it allowed me to save all the information for when the page re-renders. The particles and the design of the Orwell text was inspired by Online Projects.
Challenges we ran into
The first challenge I ran into was making the right prompt for ChatGPT to follow. It needed to be worded very carefully and precisely. The second major challenge were the async functions. I did not have much experience with them, and I needed to learn practically all of the fundamentals about them. Another major challenge was that the textarea box would grow and force the page to scroll every time the user typed in it. I fixed that by hiding the overflow and turning off resizing.
Accomplishments that we're proud of
I am proud of my use of React's hooks as well as the CSS. The CSS especially because I never liked the CSS side of front-end development, and so I am extremely proud of what I managed to do with it.
What we learned
I learned a lot about CSS, particularly shadows and animations.
What's next for Orwell
I want to further develop the CSS for the website, as well as add a feature that allows the user to customize what type of prompts ChatGPT will return.
Built With
- chatgpt
- css3
- flowbite
- html
- java
- javascript
- react
- springboot
- tailwind
- typescript
- vite
Log in or sign up for Devpost to join the conversation.