Git Product home page Git Product logo

lifterlms-rest's Introduction

LifterLMS REST API

Test PHPUnit PHP Tests Coverage PHPCS Coding Standards Code Climate maintainability Code Climate test coverage

PHP Supported Version

Contributions Welcome Slack community


A REST API feature plugin for LifterLMS.


This specification (and repository) is in beta. It is not yet a fully-functional API. API changes will be continue to be made without deprecation until 1.0.0 is released as a "stable" API.

Contributing Contributions Welcome

We are looking for both API specification designers and developers interested in contributing. Read our contribution guidelines here.

Specification & Documentation

The LifterLMS REST API follows the OpenAPI Specification (Version 3.0.0).

REST API documentation is available at gocodebox.github.io/lifterlms-rest/.

The full OpenAPI spec can be downloaded in json or yaml formats.

Building & Developing REST API Doc spec

This repo uses ReDoc.

To build the docs locally for development:

  • npm start: Starts the development server.
  • npm run build: Bundles the spec and prepares web_deploy folder with static assets.
  • npm test: Validates the spec.
  • npm run gh-pages: Deploys docs to GitHub Pages. You don't need to run it manually if you have Travis CI configured.

Tests and Coding Standards

The LifterLMS REST API adheres to the documentation and coding standards defined for the LifterLMS Core codebase.

  • composer run check-cs: Check coding and documentation standards, showing warnings and errors.
  • composer run check-cs-errors: Check coding and documentation standards, showing errors only.

To run the phpunit test suite:

  • composer run tests-install: Install the test suite.
  • composer run tests-run: Run the test suite.

Building and Publishing Releases

  • llms-dev log:write: Write changelog.
  • llms-dev ver:update: Update version numbers.
  • npm run build: Build a release: spec, doc code snippets, and included language files.
  • llms-dev archive: Build distributable zip file.
  • llms-dev publish:gh: Publish release.
  • Open a Pull Request in the LifterLMS Core to upgrade the library.

These steps require write access to the repository as well as access to the internal development CLI llms-dev. Developers and maintainers are provided with required permissions as needed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.