So, you’ve been looking for a learning management system (LMS) and have decided that the open source Open edX platform makes the most sense. You’re not alone! It’s the most widely used LMS platform in the world, with 45 million people using it in 34 different languages. It’s open source, so you don’t have to take a vendor’s word, alone, for anything, but it’s proven itself to be a resilient, effective learning tool that can scale to support thousands of simultaneous learners.

The official documentation for Open edX is excellent, but we know that setting it up and hosting it on your own can still be daunting. OpenCraft is here to help. 

We sat down with OpenCraft’s very own product specialist Gabriel D’Amours to talk about how OpenCraft handles hosting and address some of the common technical questions that clients ask about Open edX.

Services

So, for starters, how can OpenCraft help organizations customize, deploy, and maintain an Open edX installation?

We can help at every step of the way, from designing a custom Open edX instance, developing the code, and hosting and maintaining it. We can even provide training on how to build courses. 

Version updates

OK, so let’s say I want to get started and begin working with you all to design an Open edX instance. What version of Open edX do you use? 

All good questions. As for the platform, we always use the current version when building a new instance, and we upgrade all of our hosted instances within a few weeks of a new release. That’s included in the subscription fee for all our hosting plans, so clients don’t need to worry about getting charged to ensure they’re up to date. It’s important, because not only do new releases provide new features and better performance, but they also ensure and enhance security. 

Customizations & integrations

What if I need to incorporate functions not yet supported in Open edX, like video conferencing? Can you add that?

When clients want features or integrations that aren’t already supported by the Open edX platform, we’ll do what’s necessary to develop it. Frankly, that’s what we love doing most.

For instance, the LabXChange team wanted users to be able to quickly incorporate and reuse content to create new learning pathways on the fly. At the time, Open edX didn’t support that capability, so we wrote a completely new storage architecture called Blockstore that’s now the standard storage architecture for the project.

It’s true that Open edX doesn’t support video conferencing out of the box, but OpenCraft can integrate apps like Zoom, and many others, into instances and courses using the LTI protocol. 

Hosting

How about hosting? Do you host clients’ instances? If so, what does that entail and what do you provide?

We frequently host our clients’ Open edX instances on OpenStack servers which are based in Europe, though if your needs are different, we’re happy to discuss it. In a nutshell, we have two plans. 

Our Pro & Teacher is designed for clients looking for a full-featured, dedicated Open edX instance at a reasonable price. It includes the Open edX LMS and the Studio authoring tool for developing courses. Pricing is based on the number of monthly users, up to 1,000, and support is provided via email. 

Our Institutional Plan is intended for clients who need significant customization and advanced functionality such as e-commerce, single sign-on, edX Insights analytics and dedicated mobile apps. With this plan, themes are completely customizable, there is no limit to the number of users and OpenCraft provides priority support with one of our senior developers. 

For full details on the different plans we offer, click here

Custom domain

Do clients need to use the OpenCraft domain if you host the instance or can they use a custom URL?

We provide custom domains for clients on both plans, though the Pro & Teacher option does require an additional monthly fee to enable this (it’s included in the Institutional plan). We can point your instance to any valid custom domain.

Work experience

What examples can you provide of the work you’ve done?

We’re doing a lot of work directly for edX, which is pure platform development for Open edX. From our early days we've done work such as developing much of the platform's single sign-on capabilities, Drag and Drop XBlock (where the learner drags items to zones on a target image) and the Content Libraries feature. We're currently working on multiple projects with edX to update and improve many areas of the platform such as discussion tools, open response assessment, LTI exercises, Common Cartridge compatibility, content libraries and taxonomies, theming & branding, and more obscure backend stuff! We have many more projects to come in Q3 and Q4 2020. 

We also work with many high-profile academic institutions. We currently provide Open edX services to universities such as MIT, multiple Harvard schools, Arizona State University, Notre Dame University, and have worked with many others. 

We’ve worked with the French Ministry of Higher Education to develop the French national platform for promoting the use of massive open online courses, and currently work on a similar project with the Government of Israel on a national platform called Campus-IL. We also work with private firms. For example, we provide deployment, hosting and maintenance of Cloudera OnDemand, the California technology company’s learning platform.

Safe to say, if you need a learning platform, OpenCraft can deliver it.

Need support for the Open edX platform? Book a free 1hr consultation and we will help you out. 

Photo by Angelina Litvin on Unsplash

We’ve consciously built OpenCraft on four values: Openness, quality, commitment and empathy. When it comes to quality, especially when it comes to ensuring the best privacy, security and flexibility for our users, we don’t do half-measures. 

We work as hard as we can to ensure that our clients get the best possible Open edX development we can deliver. And that commitment doesn’t stop with custom code development. We also host instances of Open edX for our clients, and each of them is logically separate from all the others. 

We only host "dedicated" instances of Open edX, which means that each instance that we deploy belongs to a single client. At the entry-level price range, other vendors offer hosting on Open edX sites, which are hosted on a shared instance along with other clients.

With a shared instance, multiple clients share the same resources, from the database to APIs. When you have a dedicated instance, the server belongs to you and you alone, and ownership confers many advantages. Let’s go through the most important of them: security, scalability and performance, data portability and control, and flexibility and customization.

Scalability, Performance and Security

Our instances are hosted on highly automated and robust cloud infrastructure, with a design and deployment strategy that has been optimized specifically for hosting Open edX, following industry-leading practices for performance and security. 

With a dedicated instance, our clients never have to worry about performance lagging because another client is hosting a class with hundreds of simultaneous users and it’s hogging more than its fair share of resources. 

If you need to scale up on a shared instance, it can be done, but it's impossible to predict when multiple users of the same site might have a lot of traffic at the same time, which means shared instances aren't scaled to handle the full load for each individual site they contain. In a nutshell, you end up with less available resources than you’ll probably need to handle traffic spikes. With a dedicated instance, you’ll always be able to scale to your own needs, so you can have as many courses and users as you like. 

Security is also stronger with a dedicated instance. Security flaws or admin errors on one site on a shared instance can affect everyone else. For example, admins on a shared site could elevate their privileges on other sites from the same instance, which opens up all kinds of unpleasant possibilities. And if one XBlock on a shared instance has a security hole, everyone whose site is on that instance is vulnerable. By controlling your own instance, you don’t run the risk of suffering the consequences of your “roommates’” mistakes.

Data Portability and Control

If you’re on a dedicated instance, the data belongs to you, and it’s easy to extract or migrate it to another host. But that’s a very tricky task if you’re on a shared instance, because you share a database with every other site on that server. Your data is all mixed up with everyone else, and extricating yours from the shared database will require a ton of expensive, time-consuming work. It’s the ultimate form of vendor lock-in. Once your site is on a shared instance, it’s very unlikely you’ll be able to leave, and if you try, you’ll be in for a terrible case of sticker shock when the bill arrives.

On a dedicated instance, you have complete administrative control, which can save you a lot of headaches. You have direct access to the Django admin console and to the database and APIs, a level of access that’s very restricted on shared instances. If you want to make even minor changes to your site on a shared instance, often the only way to get it done is to make a support request. A task that could take five minutes for you to complete on a dedicated instance takes a day or two because your ticket has to wait in the queue for an available admin. More than once we’ve had clients come to us because they were tired of having to ask their vendor to handle issues they could have easily handled themselves.

Flexibility and Customization

At OpenCraft, customization is our bread and butter. We eat custom code for breakfast, so this advantage is close to our heart. When you’ve got a dedicated instance, you're in full control of your customizations. If you’re sharing an instance, however, the host has to be very careful about how customizations are done and the dependencies of components, because changes to one site can have repercussions for everyone else. So if you want further customization of optional functionality like XBlocks, ecommerce or single sign-on, you’re going to face some challenges in a shared instance.

This inflexibility carries over even into areas like localization. While it’s possible to install additional languages on a shared instance, it could have technical implications for other sites, especially if you’re dealing with languages such as Arabic or Hebrew that are read from right to left. For us, installing a new language on a dedicated instance is about one hour of work.

Finally, by providing dedicated instances, we’re able to ensure reliability. Maintenance and upgrades are included with all our hosting plans, and we have a track record of exceptional, 99% availability. We also create daily backups for every instance and can restore backups quickly and easily. 

So, while it’s a bit more costly for us to provide our clients with dedicated instances, we think it’s worth it in the long run. Stronger security, fast performance, full control, scalability and as much customization as you want —these are important to anyone who’s running an Open edX instance. Besides, if you want to provide a high quality experience, you can’t take half measures.

Photo by Paul Gilmore on Unsplash

I’m excited to share that we have launched an updated Pro & Teacher hosting plan for your Open edX® instances! We work very closely with our clients, and we listen to their feedback. As such, we have been working hard to improve our hosting plan after hearing that customization was too limited, the process to make changes to a theme was too time consuming, and that the price point was too high.

New features include a dedicated, secure instance that is backed up and monitored by the OpenCraft team, an unlimited number of online courses to serve a wide and diverse range of learners, a new UI console that provides a streamlined user experience (and includes a comprehensive theme editor for complete brand adherence), and the ability to create and support both custom domains and page creation for privacy policies and service level agreements.

With the new self-service platform, you can easily customize your own Open edX instance to provide a smooth registration and onboarding experience, as well as a customized look-and-feel to reflect your brand. You can easily install your instance and access it quickly. There’s no need for extensive technical knowledge or additional consultants.  We have also introduced multiple pricing tiers based on the number of active users, which enables you to get all the Open edX platform’s essential features at a much lower cost. The details of the pricing tiers are outlined below.

Here’s a look inside the platform.

Customize your Open edX instance

A revamped user console features a comprehensive theme editor that allows thorough branding of the instance with options to customize colors, logos, buttons, navigation, footers and hero images.

An overview of our new user console - it looks great! : )
Add custom logo and favicon
Customize buttons
Customize navigation items
Customize the footer of your site
Customize your hero text and background image

Configuration options include custom domains:


Additionally, you can create custom pages, such as terms of services or policy privacy pages:

Different plans to match different needs

OpenCraft is offering two hosting plans: Pro & Teacher and Institutional. See our website for a full comparison of the plans

Each plan:


The Pro & Teacher hosting plan provides all the essential features at an entry level price. It’s ideal for smaller organizations, teachers and even people who just want to try out the platform. It starts at just €39 / $43 per month for 50 users.

The Institutional hosting plan is designed for larger organizations with greater needs. If you want to scale up to millions of users, offer services such as e-commerce and mobile apps, receive expanded support and take advantage of OpenCraft’s experts for custom development support and services — then this is the plan for you.

Note: As of 2024 we no longer offer the Pro & Teacher Hosting Plan.

At OpenCraft, we work daily with top-tier universities. This probably isn’t all that surprising given that we specialize in developing and maintaining custom instances of Open edX, which is an open source course management platform that hosts Massive Open Online Courses (MOOCs) and online learning. 

A massive number of institutions worldwide are members of edX.org, with more than 50 who are charter members. And they’re not just using the platform to power MOOCs, the original use case for Open edX. Today, they’re using Open edX to complement residential programs and offer blended learning experiences, especially in the face of the COVID-19 outbreak, because the platform's streamlined authoring experience allows instructors to easily shift to online courses and get them up and running quickly. 

So, why are so many turning to the open source Open edX platform and, consequently, OpenCraft? After all, when it comes to learning management systems (LMS), Open edX is far from the only game in town, and prestigious institutions certainly have the budget to purchase proprietary software. 

Expanded uses of Open edX at academic institutions

Universities have a dual humanitarian mission of providing high quality instruction and increasing our collective understanding of the world through research, but they still operate in a competitive environment. These institutions are constantly vying against each other for prestige, research funds and talented students. So, just as processes and business models evolve in the corporate world in response to competitive pressure, curriculum and research are constantly evolving at top-tier universities. This is especially critical in the wake of COVID-19, as higher ed institutions are now determining how they’ll continue instruction for the rest of 2020 and into 2021 — online learning will continue to play a key role. 

Universities often need to expand, adapt and customize their LMS platform to meet their goals for learning innovation and research projects. Open edX is ideal for this purpose. It’s an open source, massively scalable platform that’s supported by an enthusiastic global community. And though its original use case, of course, was to power MOOCs, the platform has evolved into a powerful, flexible LMS. 

For example, here’s some customizations we have done for our university clients:


A great example of a large-scale customization project is LabXChange. You can read much more about that particular project in our LabXChange launch blog post, but, briefly, LabXChange is an online science resource for students, teachers and the general public that we developed for Harvard University. It’s simple for anyone to build and share learning pathways (sort of like mini-courses) from smaller pieces of content that can be easily remixed and reused. 

This was a two-year project built on Open edX, and it required extensive customization and new capabilities. This resulted in our contributing several major new Open edX features such as Blockstore (a new storage architecture), Content Libraries version 2, a new XBlock Runtime, anonymous platform access and a new visual assessment editor.

Lessons learned from working with universities

Having worked with dozens of universities over the past seven years, we’ve learned a great deal about how best to work with them. 

You have to be patient. The academic world typically moves more slowly than the business world. We’ve had projects that took two years to come into place, from initial discussions to a signed contract. 

Additionally, universities’ needs and goals change over time, which often affects the scope and timeline of our projects. Our iterative development approach allows us to be as nimble as our clients, so we can make changes, stay transparent and ensure that projects are delivered on time and with no surprises. 

Finally, universities appreciate our commitment to open source and the larger Open edX community. They can expect that our solutions will be reviewed and approved by edX engineers and that they will align with edX's long-term roadmap. After all, it’s much less expensive to maintain new features and capabilities once a feature is merged into Open edX, because then it's maintained by edX and the community as a whole. 

We really enjoy working with universities because they’re often pushing the boundaries of what’s been done before, giving us the opportunity to do creative, complex work. Plus, their high quality standards keep us sharp as we work to meet and exceed them, augmenting our expertise and increasing our ability to meet the challenges that all of our clients bring to us.

Learn more about our work with colleges and universities

Photo by Christopher on Unsplash

From fall of 2016 through summer of 2018, OpenCraft worked closely with the edX for Business team and Arbisoft to build out and improve several crucial features for the Open edX Enterprise Service. These features still exist today and are ready for everyone in the Open edX community to use, extend, and build upon. We’ll describe them in more detail below. But first, let’s have a quick look at what Open edX Enterprise Service actually is.

What is the Open edX Enterprise Service?

The Open edX Enterprise Service code base adds support for a number of different use cases to Open edX, mostly in the realm of B2B. It is included in standard Open edX installations by default, but nonetheless a lesser known (or at least a less talked-about) component of Open edX. 

It integrates with the ecommerce and course-discovery services. In fact, making use of all functionality provided by the Open edX Enterprise Service requires a working setup of ecommerce and course-discovery. The Open edX Enterprise Service code base also enables edX For Business

In a nutshell, the service enables alternative ways of accessing course content that is hosted on an Open edX instance: It supports LMS integrations with third-party systems such as SAP SuccessFactors, Degreed, and Cornerstone as well as direct integrations via the Open edX Enterprise Service Catalog API. It also allows customers to purchase course seats in bulk so that they can provide course access to their employees via individual-use enrollment codes or direct enrollment for specific courses with discounts/entitlements. Through data pass-back and customer reports, employers can get information about “learner behavior and outcomes,” i.e., information about their employees’ performance in relevant courses.

OpenCraft’s contributions

Integration channels for third-party systems

As mentioned earlier, one of the key features of the Open edX Enterprise Service is support for integrating Open edX with third-party systems. Aside from general improvements to the code enabling these integrations, OpenCraft’s work in this area mainly focused on two systems, namely SAP Success Factors and Degreed.

SAP SuccessFactors integration

OpenCraft expanded the existing integration for SAP SuccessFactors, adding features such as:

Our work also included implementing support for situations where specific learners no longer had a valid SuccessFactors account due to leaving the company or organization that had provided them with access to course content hosted on Open edX.

Degreed integration

Integration for the Degreed platform did not exist when OpenCraft was first onboarded to the Open edX Enterprise Service project. We built this integration from scratch and applied large-scale refactorings to optimize code reuse between different integrations of third-party systems. Aside from making it easier to implement additional integration channels for third-party services in the future, these refactorings included making data-passback functionality asynchronous by allowing commands for transferring different types of data to run on separate worker threads as Celery tasks.

Direct integration improvements

In addition to integrations utilizing specific third-party services such as SAP SuccessFactors and Degreed, Open edX Enterprise Service supports direct integrations via the service's catalog  API. This increases flexibility for Enterprise customers by allowing them to connect their own learning management systems (LMS) to Open edX. However, not everyone wishing to make use of the Open edX Enterprise Service features has the ability to extend and/or modify their chosen LMS to establish an API integration. 

To improve the situation for these types of Enterprise customers (i.e., to allow them to access and work with relevant data from the service with minimal upfront effort), functionality for transmitting data in alternative formats was added to the Open edX Enterprise Service. For example, instead of creating their own solution for obtaining reports from the Open edX Enterprise Service Catalog API, Enterprise customers can choose to have the platform send these reports to them in CSV or JSON format. Reporting configurations for individual Enterprise customers can be changed via the Django admin.

Data Sharing Consent (DSC)

An important aspect to consider when integrating with external systems is that learners should be able to explicitly agree to their data being shared between Open edX and those external systems. 

The service provides learners with this ability through Data Sharing Consent (DSC) features. For example, one of the early features that OpenCraft implemented was to ask learners to consent to data sharing when attempting to access courses in which they had been manually enrolled by their organization or employer, and to deny access to these courses when consent was declined. Similarly, in the earlier stages of the project we built functionality for requesting data sharing consent from learners when they attempted to redeem a course coupon provided by their organization or employer.

Aside from implementing and refining user experience for different use cases involving the concept of data sharing consent, OpenCraft also helped create a generic consent API and unified data sharing consent database model, which ultimately made it possible to extend DSC functionality to cover programs.

Updates to registration, account activation, and login flows

Creating a smooth experience for Enterprise learners also involved making a number of fundamental changes to existing functionality for registering, activating, and logging in to learner accounts on Open edX. Most notably, OpenCraft worked on creating and improving a special landing page for learners coming to the Open edX platform through an Enterprise workflow. This page allows learners to obtain various kinds of information regarding the platform itself, and the course or program in which they are about to enroll.

For example, when a new Enterprise learner creates an account with the platform, the landing page allows them to view the terms of service of the platform without leaving the registration flow. In a sidebar next to the elements of the page that the learner can interact with, the landing page also displays an Enterprise-specific welcome message as well as custom branding for the Enterprise customer that the learner is associated with. This feature is not specific to the registration flow; it is integrated with login and enrollment flows as well. Branding for individual Enterprise customers can be configured via the Django admin.

When the landing page is shown as part of the process for enrolling in a specific course, the Enterprise learner can view extensive information about the course on this page -- again without having to navigate to a different page. This is similar to the kind of information that the Open edX platform displays on the “About” page of a course.

In a later phase of the project, a landing page with similar capabilities was built for the use case of enrolling into programs. In addition to providing relevant information about the program in which the current learner is about to enroll, the Enterprise landing page for programs provides functionality for viewing information about each individual course that belongs to that program.

Another way the Enterprise learners' experience with the Open edX platform was made as smooth as possible was by minimizing the number of steps required to register or log in to the platform and to enroll in a course or program. To this end, OpenCraft built functionality for hiding irrelevant fields from the registration form and for skipping identity provider selection during the login process. OpenCraft improved the workflow for enrolling into courses by adding functionality for dynamically changing behavior based on whether a learner had already joined a given course: If the learner was completely new to the course, they would be taken to the Enterprise landing page. But if they had enrolled in the course previously, the system would take them straight to the course, never showing the landing page.

Lastly, to further simplify registration flows for Enterprise learners, OpenCraft implemented support for live validation of learner inputs on the registration page. This work involved extensive changes to frontend and backend code for user registration, and the results were visible not just to Enterprise learners but also to regular learners signing up for an account on the Open edX platform.

Want to learn more about our contributions to the Open edX Enterprise Service? Drop us a line and let’s chat. We’d love to hear from you.

Header photo by Samson on Unsplash

Get in touch

We'd love to hear from you! Send us a message and a member of our team will get back to you.
Contact us
Subscribe to our newsletter
© OpenCraft 2026
edX and Open edX® are trademarks of edX Inc
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram