Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/learninglocker/xapi-service
A service for the xAPI
https://github.com/learninglocker/xapi-service
nodejs tincan typescript xapi
Last synced: about 20 hours ago
JSON representation
A service for the xAPI
- Host: GitHub
- URL: https://github.com/learninglocker/xapi-service
- Owner: LearningLocker
- License: mit
- Created: 2017-08-10T16:05:34.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-12-05T07:47:21.000Z (about 1 month ago)
- Last Synced: 2025-01-11T13:08:49.376Z (about 20 hours ago)
- Topics: nodejs, tincan, typescript, xapi
- Language: TypeScript
- Size: 6.8 MB
- Stars: 40
- Watchers: 15
- Forks: 55
- Open Issues: 24
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
README
# xAPI service
![Build Status](https://github.com/LearningLocker/xapi-service/actions/workflows/integration.yml/badge.svg?branch=master)
[![Renovate badge](https://img.shields.io/badge/Renovate-enabled-brightgreen.svg)](https://renovateapp.com/)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)
[![Join the chat at https://gitter.im/LearningLocker/learninglocker](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/LearningLocker/learninglocker?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)_Learning Locker is a trademark of [Learning Pool](http://learningpool.com)_
### 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](https://github.com/LearningLocker/enterprise/blob/master/README.md#development-setup) first.
#### Setup Repository
1. Change to your Documents directory (or whichever directory you want to contain the repository) with `cd ~/Documents`.
1. Clone the repository with `git clone [email protected]:LearningLocker/xapi-service.git`.
1. Switch to the repository directory with `cd xapi-service`.
1. Install dependencies with `yarn`.
1. Copy the ".env.example" file in the repository into a new ".env" file.
1. Build the code `yarn build` or `yarn build --watch` if you want to make changes.
1. Start Mongo and Redis with `docker-compose up -d`. If you've followed the [Enterprise setup instructions](https://github.com/LearningLocker/enterprise/blob/master/README.md) already you won't need to do this.
1. 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`.
1. Start Mongo and Redis with `docker-compose up -d`. If you've followed the [Enterprise setup instructions](https://github.com/LearningLocker/enterprise/blob/master/README.md) already you won't need to do this.
1. Lint the code with `yarn lint`.
1. Build the code with `yarn build`.
1. Test the code with `yarn test-local`.
1. 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](http://docs.learninglocker.net/guides-installing/). To install just the xAPI service, you can follow the instructions below.
1. Clone the repository with `git clone [email protected]:LearningLocker/xapi-service.git`.
1. Switch to the repository directory with `cd xapi-service`.
1. Install dependencies with `yarn --frozen-lockfile`.
1. Build the code with `yarn build`.
1. 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`.