# Integration with Web Application using Open edX as backend LMS

**URL:** https://discuss.openedx.org/t/integration-with-web-application-using-open-edx-as-backend-lms/5482
**Category:** Development
**Created:** [July 29, 2021, 2:27am UTC](https://discuss.openedx.org/t/integration-with-web-application-using-open-edx-as-backend-lms/5482 "2021-07-29T02:27:27Z")
**Posts on this page:** 1
**Showing post:** 2

<div class="post-metadata">

### Author: ![arbrandes](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/arbrandes/32/158_2.png) [@arbrandes](https://discuss.openedx.org/u/arbrandes)
#### Post date: [August 11, 2021, 2:34pm UTC](https://discuss.openedx.org/t/integration-with-web-application-using-open-edx-as-backend-lms/5482/2 "2021-08-11T14:34:47Z")

</div>

Hi @jakeg!

> [@jakeg](#):
>
> Im just wondering if other people integrate OpenEdX as the backend LMS for their own web application and how they went about it.

That ADR is part of a project funded by MIT that has similar goals to yours: to use Open edX to author and host content, but to have an LTI consumer (in their case, Canvas) actually present it to learners. And by no coincidence, it builds on tools (Blockstore and Content Libraries) originally envisioned for a project that is similarly in line with yours: [labxchange.org](http://labxchange.org). I recommend watching [this video](https://discuss.openedx.org/t/building-with-blocksore/5248) for context.

> [@jakeg](#):
>
> Should we be using the LTI Provider/Consumer model or an API?

Great question. LabXchange uses Blockstore and other Open edX APIs directly. That gives it a lot of control over the data, allowing the platform to do things that would be impossible to achieve with just LTI. But, as you can imagine, this is an expensive way to go about it.

Luckily, it turns out that the Open edX architects would like it to offer a similarly flexible way of reusing content - one that is not tied to the rigid course structure. And that translates into the [Content Libraries project](https://openedx.atlassian.net/wiki/spaces/COMM/pages/3061186611/BD-14+Content+Libraries+and+Problem+Editing+Project+Overview). It is not in a generally usable state, yet, but MIT bet on it being the case soon - hence why they funded the ability to expose Content Libraries via LTI.

I don’t know what the timeline on your project is, but if I were you, I’d keep close tabs on what’s happening with this new iteration of libraries. The LTI code is likely to merge to master soon, which will make it availabe in Maple, and edX is likely to move ahead with other improvements soon.

This is the list of the MIT-funded PRs that currently exist, btw:

- The ADR (architecture decision record) governing the LTI implementation: [https://github.com/edx/edx-platform/pull/27089](https://github.com/edx/edx-platform/pull/27089)
- Implementation of the LTI backend in edx-platform: [https://github.com/edx/edx-platform/pull/27411](https://github.com/edx/edx-platform/pull/27411)
- Implementation of the LTI copy-URL-to-clipboard feature in edx-platform: [[SE-4399] add LTI launch URL generation for blocks by gabor-boros · Pull Request #27712 · openedx/edx-platform · GitHub](https://github.com/edx/edx-platform/pull/27712)
- Implementation of the LTI copy-URL-to-clipboard in the Library Authoring frontend: [[SE-4399] feat: add LTI URL copy feature by gabor-boros · Pull Request #22 · openedx/frontend-app-library-authoring · GitHub](https://github.com/edx/frontend-app-library-authoring/pull/22)
- Addition of MathJax support to the Library Authoring frontend: [Add MathJax support by arbrandes · Pull Request #25 · openedx/frontend-app-library-authoring · GitHub](https://github.com/edx/frontend-app-library-authoring/pull/25)
- Implementation of a course import API in edx-platform: [Add a content libraries import from courseware API and management command [SE-4619] by jvdm · Pull Request #27715 · openedx/edx-platform · GitHub](https://github.com/edx/edx-platform/pull/27715)
- Implementation of pagination and course importing in the Library Authoring frontend: [[BD-14] [SE-4585] [SE-4588] Add pagination to library list page and implement course import by gabor-boros · Pull Request #24 · openedx/frontend-app-library-authoring · GitHub](https://github.com/edx/frontend-app-library-authoring/pull/24)
- Improvements to Blockstore deployment via Ansible: [feat: Improve blockstore deployment by arbrandes · Pull Request #6487 · openedx/configuration · GitHub](https://github.com/edx/configuration/pull/6487)

---

_[View the full topic](https://discuss.openedx.org/t/integration-with-web-application-using-open-edx-as-backend-lms/5482)._
