- Implement a RESTful API using a framework of your choice (e.g. Express, DRF, Spring).
- Use a database of your choice to store the data (preferably MongoDB or PostgreSQL).
- Use any authentication protocol and implement a simple rate limiting and request throttling to handle high traffic.
- Implement search functionality to enable users to search for notes based on keywords. ( preferably text indexing for high performance )
- Write unit tests and integration tests your API endpoints using a testing framework of your choice.
Express JS exhibits a higher request-per-second throughput compared to other frameworks. The asynchronous and event-driven nature of Express JS, combined with its lightweight design, allows it to handle a larger number of concurrent requests efficiently
While PostgreSQL offer robust, reliable, ACID-compliant relational data storage solutions, NoSQL databases like MongoDB provide flexible, horizontally scalable alternatives.
Jest is likely the better choice if you want a testing framework that we can use on its own, without having to configure integrations.
- Clone the Repo.
- Run
npm install
command to install the dependencies. - To install nodemon, run
npm i nodemon
. - Go to
.env
File and replace the MONGODB_URL. - To run the application, use
npm start
command. - To run the tests, use
npm test
command.