Note: This repository contains the web application of the Sumé LMS. If you are looking for more information about the application, we strongly recommend you to check the documentation.
Sumé LMS is a modern and open-source learning management system that uses modern technologies to deliver performance and scalability to your learning environment.
- Compatible with SCORM and xAPI (TinCan)
- Flexible and modular
- Open-source and Free
- Fast and modern
- Easy to install and run
- Designed for microservices
- REST API based application
- and more.
- Prerequisites
- Setup
- Commands
- Tests E2E
- Mocks and Docs
- Contributing
- Code of Conduct
- Team
- Support
- License
- NodeJS >= v12.16.3
- Yarn* or npm for dependency install
- Podman* or Docker to run the Keycloak or Swagger
* we do recommend this option 😉
Create an .env file on root directory
SKIP_PREFLIGHT_CHECK=true
REACT_APP_KEYCLOAK_URL=http://sso.sumelms.sol/auth
REACT_APP_KEYCLOAK_REALM=sume
REACT_APP_KEYCLOAK_CLIENT_ID=sume-app
Note: Alternatively, you could also duplicate and rename the existing
.env.example
file.
Install the dependencies
$ yarn install
Compile all translations
$ yarn generate:translations
Running authentication server (Keycloak)
$ podman run \
-v ./keycloak:/realm \
-p 8080:8080 \
-e KEYCLOAK_USER=admin \
-e KEYCLOAK_PASSWORD=admin \
-e KEYCLOAK_IMPORT=/realm/sume.json \
jboss/keycloak
Running the app
$ yarn start
Build the app
$ yarn build
Run code linter
$ yarn lint
Run Storybook components
$ yarn storybook
Verify that Cypress is installed correctly and is executable.
$ yarn cy:verify
Runs Cypress tests to completion.
$ yarn test:e2e
Opens the Cypress Test Runner.
$ yarn test:e2e:open
Runs tests E2E to CI.
$ yarn test:e2e:ci
Thank you for considering contributing to the project. In order to ensure that the Sumé LMS community is welcome to all make sure to read our Contributor Guideline.
Would you like to contribute and participate in our communities? Please read our Code of Conduct.
- Ariane Rocha (@arianerocha)
- Ricardo Lüders (@rluders)
- Mariany Ferreira da Silva (@marianyfs)
- Rafael Basask (@basask)
- Camila Moura (@mouracamila)
You can reach us or get community support in our Discord server. This is the best way to find help and get in touch with the community.
If you found a bug or have a feature request, the best way to do it is opening an issue.
This project is licensed by the Apache License 2.0. For more information check the LICENSE file.