Skip to content

LearningLocker/xapi-service

Repository files navigation

xAPI service

Build Status Renovate badge semantic-release Join the chat at https://gitter.im/LearningLocker/learninglocker

Learning Locker is a trademark of Learning Pool

Development: Installation

Do not use sudo for any of these installations or commands. If you're working on Learning Locker Enterprise, please make sure you've followed the Enterprise Development Setup first.

Setup Repository

  1. Change to your Documents directory (or whichever directory you want to contain the repository) with cd ~/Documents.
  2. Clone the repository with git clone git@github.com:LearningLocker/xapi-service.git.
  3. Switch to the repository directory with cd xapi-service.
  4. Install dependencies with yarn.
  5. Copy the ".env.example" file in the repository into a new ".env" file.
  6. Build the code yarn build or yarn build --watch if you want to make changes.
  7. Start Mongo and Redis with docker-compose up -d. If you've followed the Enterprise setup instructions already you won't need to do this.
  8. Run the server with yarn start or yarn start:dev if you want to make changes.

Development: Testing

Before you follow these instructions you may want to exit your yarn start command above with Ctrl + C. This ensures that the running app doesn't interfere with your testing by using Mongo and Redis.

  1. Install dependencies with yarn --frozen-lockfile.
  2. Start Mongo and Redis with docker-compose up -d. If you've followed the Enterprise setup instructions already you won't need to do this.
  3. Lint the code with yarn lint.
  4. Build the code with yarn build.
  5. Test the code with yarn test-local.
  6. Stop the Mongo and Redis with docker-compose down. Use -v at the end to delete data.

Production: Installation

To install all of Learning Locker, see the installation documentation. To install just the xAPI service, you can follow the instructions below.

  1. Clone the repository with git clone git@github.com:LearningLocker/xapi-service.git.
  2. Switch to the repository directory with cd xapi-service.
  3. Install dependencies with yarn --frozen-lockfile.
  4. Build the code with yarn build.
  5. Start the server with yarn start.

Docker

You can use the steps below to install and run the xAPI service.

  • Create a ".env" file using the ".env.example" file in this Github repository.
  • Pull the image from DockerHub docker pull learninglocker/xapi-service:latest.
  • Run the image in a container docker run -d -p 8080:80 --env-file .env learninglocker/xapi-service:latest.