Idea
We were inspired by MonkeyType, which is a typing speed test app. Our implementation will utilize AI to create story texts that the user will type out while we track their metrics and update the UI in real time. We also have some non-core ideas listed below:
- Hardware idea: Play music and the faster the user the louder the music. (undecided).
Tech Stack
- NextJS frontend
- ExpressJS backend
- PostgreSQL database on Supabase to store user and prompt data.
- Frontend hosting on Vercel, and backend on Seenode (temporary).
Workflow
- User signs up or logs into their account.
- Redirected to the main page (containing previous attempts?).
- Choose difficulty (easy, medium, hard, expert) and the theme (enter as text?).
- Prompt AND await the AI for the text.
- Display some loading animation…
- Handle any errors
- Consider storing the returned text in DB? With theme and difficulty, and userID. This way we can retrieve a stored text if AI fails to deliver…
- Display the text and update the UI for the user.
- Start the timer when user starts typing and start logging metrics
- When timer runs out
- Stop game.
- Compute metrics.
- Update DB where necessary.
- Display results for user If user types all the given text, repeat the text (shouldn’t happen)
- Prompt user for another run.
Future features
- Add VERY minimal footer for docs and links.
- Build out the Results component and display current run and 3-5 previous runs.
- Forgot password → reset
- Free Duck typing prompts
- Draw a Logo
- Banner and call-to-action on Home page
- Consider name change
- Add Metadata for SEO discovery
References
- Major cookie issue Troubleshooting: ClickClack Cookies issue