Sign inSign up

slidewiki/nlpstore

By slidewiki

•Updated about 7 years ago

NLP store service

Image
2

3.3K

slidewiki/nlpstore repository overview

⁠NLP Store Microservice

Build Status License Language Framework Webserver Coverage Status

This microservice implements the storage layer of the NLP Microservice⁠. When a deck is updated, this service requests the NLP results from the NLP Microservice and stores them for later use.

⁠Setup

The following commands are helpful when setting up the service.

// add a job, to compute NLP results, for every deck in mongodb in the agenda queue
docker run -it IMAGE_TAG bin/scheduleJobs

// delete scheduled NLP jobs
docker run -it IMAGE_TAG bin/deleteJobs

// delete all indexed NLP results from SOLR
docker run -it IMAGE_TAG bin/delete
⁠Install NodeJS

Please visit the wiki at Install NodeJS⁠.

⁠Where to start developing?

Have a look at the file application/server.js⁠, that is the main routine of this service. Follow the require(...) statements to get trough the entire code in the right order.

When you want to have a look at tests, head over to the folder application/tests/⁠. We're using Mocha and Chai for our purposes.

Since we're developing our application with NodeJS, we're using npm⁠ as a task runner. Have a look at the /application/package.json⁠ script section to obtain an overview of available commands. Some are:

# Run syntax check and lint your code
npm run lint

# Run unit tests
npm run unit:test

# Start the application
npm start
...

You want to checkout this cool service? Simply start the service and head over to: http://localhost:3000/documentation⁠. We're using swagger⁠ to have this super cool API discrovery/documentation tool. BTW.: Did you already discoverd the super easy swagger integration inside /application/routes.js⁠? Tags 'api' and 'description' were everything we needed to add.

⁠Use Docker to run/test your application

You can use Docker⁠ to build, test and run your application locally. Simply edit the Dockerfile and run:

docker build -t MY_IMAGE_TAG ./
docker run -it --rm -p 8880:3000 MY_IMAGE_TAG

Alternatively you can use docker-compose⁠ to run your application in conjunction with a (local) mongodb instance. Simply execute:

docker-compose up -d

Tag summary

Content type

Image

Digest

sha256:9779c4aa9…

Size

104.1 MB

Last updated

about 9 years ago

docker pull slidewiki/nlpstore