Skip to content

Installing the Authoring Tool

Tom Taylor edited this page Feb 20, 2019 · 26 revisions

What’s installed?

The authoring tool is a server-based user interface for the Adapt framework.

The framework and the core plug-ins are installed as a part of the installation of the authoring tool; they do not need to be installed separately.

Upon installation, you can begin creating responsive e-learning courses.

What skills are needed for installation?

The purpose of the authoring tool is to bring the power of the framework to non-technical persons.

This being said (and while installation is getting easier), installation requires the user to manually install and configure software including git, Node.js, and MongoDB, and requires the installer to take steps that are typically hidden within a packaged installer. If you are not confident in doing this, we recommend you seek guidance prior to attempting an install by yourself.

Installation

The Adapt authoring tool is intended to be installed on a publicly accessible web server, but may also be installed on personal computers for use by individuals.

Installation Overview

  1. Install prerequisites.
    The authoring tool and the Adapt framework depend on other software to run. We’ve got to make sure these are in place first.

  2. Clone the adapt_authoring project.
    We’ll download the code from its repository on GitHub.

  3. Install the required npm packages.
    We'll install some packages required by the adapt_authoring code.

  4. Run the install script.
    The install script will use the prerequisite software you installed to find instructions within the project code. It will download more components and make connections between all the pieces.

  5. Run the application. By this point we’ll have all the project pieces in place. In order to access the authoring tool, we need three things running: the database, a web server, and a browser. We’ll get these going, then log in to the authoring tool.


1. Install Prerequisites

Tip: Some of these come preinstalled with certain operating systems. Before continuing, verify what you have already by checking for its version (also make sure it's a version that's compatible with the authoring tool).

For a full list of recommended system requirements see here

Tip: If you are new to using the command line (or if your skills are rusty), read this explanation before proceeding.

The authoring tool will not run without the following (click the headings for more info):

Git Git is a tool for managing source code, and makes it easy to download and update the authoring tool codebase.

Official install guide.

If you are installing Git for the first time, don't forget to configure it:

git config --global user.name "Your Name"
git config --global user.email "[email protected]"
Node.js Node.js provides the JavaScript engine to run the authoring tool application, and handles the installation/updating of the tool’s dependencies (via NPM).

Important: The authoring tool supports the current Node.js LTS release. Please ensure your machine is using this, as you may experience compatibility issues otherwise!

Official install guide

Node version managers, such as nodist (Windows) or nvm (OS X, Linux), make it easy to switch between versions of node. We strongly recommended that you use one. Follow their instructions to install.

If you prefer not to use a version manager, the community wiki of Node.js provides installation instructions for various operating systems.

Verify NPM is installed: NPM (a node package manager) is used to download and install the stuff the authoring tool depends on. It comes with Node.js by default, so refer to the official Node.js installation instructions if you find you don't have it after installing Node.js.

Grunt Grunt is a 'task runner' which handles all the necessary actions required to build the course.

Official install guide

Tip: Windows Users Note: Run these commands in Git Bash if you installed git using default settings

MongoDB MongoDB is the chosen database for the authoring tool.

Official install guide

Tip: System administrators might find Robo 3T helpful (Adapt core developers sure have!).

The following is optional but makes life more enjoyable:

FFmpeg Using FFmpeg with the authoring tool is not required, but it will produce nice thumbnails for the images and video assets you upload to the tool.

2. Clone the Adapt_Authoring Project

The Adapt authoring tool is hosted here on GitHub. You need a copy of it on your computer.

Running the following command will create a folder named "adapt_authoring" that will contain the project source code. Using the command prompt, navigate to a folder where you want this to be created. Then run the following command.

git clone https://github.com/adaptlearning/adapt_authoring.git

3. Install the Required npm Packages

It is essential that you verify that the MongoDB service has started and is running. Installation will fail if the MongoDB service has stopped. (If you installed on Linux, the service should automatically start. OSX users may have to manually run mongod from a terminal. Windows users may have to start it manually; verify using the Services tab of the Task Manager.)

Navigate to the adapt_authoring folder you cloned earlier to make it the current working directory. Run the following command:

npm install --production

Note: The --production option bypasses the installation of dependencies which are only relevant to development, such as the unit testing facilities.

This process can take a few minutes to complete. If this script completes successfully, you can now run the install script!

If any error occurs, read the output, and try to determine if you forgot to install one of the prerequisites or if one failed to install properly. If you need assistance troubleshooting, consult the Adapt community's Technical Discussion Forum.

4. Run the Install Script

You can now install and configure your new authoring tool for your requirements.

Tip: Most configuration questions will appear with a default answer already in place, so most times you can just accept these default values by pressing the Enter key.

Tip: The questions relating to the 'super user account' are not the same as the SMTP service or the master tenant. The super user's email address and password will be used to login to the authoring tool.

Note: FFmpeg is not used by default. When the question "Will ffmpeg be used?" N (i.e. no) will appear as the default. If FFmpeg is installed and you want to use it, type Y before pressing the Enter key.

Note: Configuration questions will ask about SMTP service, SMTP username, SMTP password, and Sender email address. The authoring tool uses email addresses as user names and can reset passwords via e-mail. If you do not intend to use this feature, just accept the default values for all related questions.

Note: You can change any of your answers once the install has completed successfully, so don't worry if you don't know the answer.

Run the following command.

node install

If all goes well, you'll receive the following message: Done, without errors., and you'll be instructed to Run the command 'node server'.

5. Run the Application

First you're going to start the authoring tool Node.js application, and then you can test the installation was successful by attempting to access it from a web browser.

  1. Run the start command (cmd tips)
    node server
    As the server starts, it will report in the terminal: Server started listening on port <YOUR_PORT>
    (To stop the server, make the terminal the active window, then press Ctrl+C.)
  2. Try it out!
    Open your favourite (standards compliant 👼) web browser, and navigate to: localhost:<YOUR_PORT>
    When the login page appears, enter the super user's e-mail address and password.

Help Us Improve: If you notice errors or omissions in these instructions, please inform us by leaving a comment in Issues.

Troubleshooting

If you experience difficulties during installation, there are two main places you should be seeking help.

The community forums

The Adapt community technical forum already has a wealth of discussion on installation advice. Please have a good look around in the existing posts for possible solutions, as the likelihood is that someone else has encountered the same problem as you (and hopefully resolved it).

If requesting help, please provide as much relevant information as possible to give the community a fighting chance in helping you out.

Remember: the less (useful) information you give, the less likely you'll get a response.

Try to at least include the following information:

  • Your computer's operating system
  • The versions of Adapt you are attempting to install
  • What steps you took before trouble was encountered
  • Any error messages that were displayed
    Tip: Refrain from pasting long server logs, as this makes your post hard to read, and therefore less likely to receive responses.

Gitter

We also have an active (and very friendly) community in the Adapt Gitter rooms.

The same rules as above apply when asking questions here. Also, please respect the users in the room and don't demand an instant response; everyone there is donating their time in addition to their full-time jobs.

Clone this wiki locally