As a user, I want to be able to know which words are not English in my text so I can improve my English.
- A word will be considered as non-English word if it does not exist in this list: https://raw.githubusercontent.com/jeremy-rifkin/Wordlist/master/master.txt
- The English word check logic needs to happen on the backend side.
- The frontend needs to be written in ReactJS.
- The backend can be written in Ruby or Javascript or Typescript. The web framework can be chosen freely.
- Any additional libraries are also allowed.
- Git needs to be used as a version control system.
- It needs to be done by November 6th. The repository can be shared on Github/Gitlab (publicly or privately with username dyoxyne).
- Correctness: Does it work as expected?
- Code quality: Is it readable and well structured?
- The solution is deployed on a cloud platform (AWS, GCP, Heroku…).
cd word-checker/src
export REACT_APP_API_URL=<API_URL>
npm start
cd word-checker-api/src
npm run build
- Download the dictionary.txt file into the
runtime/
folder npm start-dev
URL: https://salmon-ocean-0f3041f00.2.azurestaticapps.net
This solutions uses a staic single-page web application that calls an Azure hosted Node.js API written in TypeScript. The deployment is automated, using GitHub workflows. During deployment, there are several things that happen:
- API
- Download source code
- Build application
- Download dictionary
- Create a package with the built code and the dictionary
- Push thе artifact to Azure
- Start the API
- UI
- Download the source code
- Set an environmental variable containing the API URL
- Build the UI
- Create a package with the built static website's resources
- Upload to an Azure static web page service