This web service provides CRUD capabilities to manage Ron words
├── .env ├── server.js ├── config │ └── db.js ├── models │ └── Word.js ├── routes │ └── wordRoutes.js └── controllers └── wordController.js
- Main Technology: Express, Mongoose
- Other Technology: dotenv, cors
-
Ensure you have the correct .env file in your project root folder
-
Install dependencies
npm install
- Start up a redis instance with Docker
# spin up redis
docker compose -f docker/docker-compose.yml up -d
# (optional) download redis-insight (https://redis.io/insight/) for easier redis monitoring
- Run in dev mode
npx nodemon
- Install dependencies:
# 1. Install testing tools
npm install --save-dev jest supertest
# 2. Add a test script in package.json:
"scripts": { "test": "jest --detectOpenHandles" }
# 3. Create a __tests__ folder and add a file word.test.js:
# 4. run test
npm test
# 5. Profit
16/2/2025: Converted list of comprehensive Ron words into an excel sheet, then created a cleaned up .csv record for mongodb import. I set up a mongodb instance on mongodb atlas, wrote a python script to import the .csv records with some enriched empty fields such as pronunciation, frequency, type, gender etc.
19/2/2025:
Had an issue with performance. Add elasticsearch and redis in the backend To setup an elasticsearch instance, I set up docker in the project
- Have a comprehensive record of the Ron language digitally
- Prepare a Backend and Frontend to manage (CRUD) Ron words
- Perform advanced analysis and english translation using machine learning