How to install "Figures" appsembler

Not yet, I’m still confused about generating webpacks

Hi @anjali
I tried installing with branch build-0.3.9, it worked but the UI was not good. try to install, is it the same as my UI?

@taufanbudiman I am getting the error in branch build-0.3.9

Still I will take a latest pull and try once.

Hi @anjali,
how do you install the application?
I installed using pip install

Check branch build-0.3.9. In the folder figures you find webpack-stats.js

hi, @anjali, Have you successfully installed? I have succeeded.


Could you give detailed steps followed to achieve this?

Hello @taufanbudiman, I have not tried after that, can you give me the steps for installation?

@Selli, @anjali

Enable virtual environment

sudo -H -u edxapp bash
source edxapp_env

Install Figures build-0.3.9

clone figures on folder ~/venvs/edxapp/src/figures , i use version build-0.3.9

git clone -b build-0.3.9

and then go to the frontend folder, build asset with yarn. First, run yarn to install dependecies and then yarn build to build asset of figures. Frontend assets will be available at ~/venvs/edxapp/src/figures/figures/static . Copy generated frontend assets to staticfiles

cp -r ~/venvs/edxapp/src/figures/figures/static/figures /edx/var/edxapp/staticfiles/

install figures

cd ~/venvs/edxapp/src/figures/
pip install -e .

Add Configuration Settings

cd ~/edx-platform/

Edit lms/envs/ and add configuration settings like below

if 'figures.apps.FiguresConfig' in INSTALLED_APPS:
    from figures.settings.lms_production import *
    ENV_TOKENS.setdefault('FIGURES', {})
    update_webpack_loader(WEBPACK_LOADER, ENV_TOKENS['FIGURES'])
    update_celerybeat_schedule(CELERYBEAT_SCHEDULE, ENV_TOKENS['FIGURES'])
    CELERY_IMPORTS += ( 'figures.tasks', )

Edit lms/ and add configuration urls like below

if 'figures' in settings.INSTALLED_APPS:
        urlpatterns += [
                url(r'^figures/', include('figures.urls', namespace='figures')),

migrate database for figures

~/edx-platform/ lms migrate figures --settings=production

Restart LMS

exit user edxapp and then restart lms.

sudo /edx/bin/supervisorctl restart lms

access figures with

I hope this helps


Hi @taufanbudiman im having problems with this step, when accessing the frontend folder if i type



yarn build

It shows me this error:

ERROR: There are no scenarios; must have at least one.

Can you guide me with this step please?

Have you activated Virtualenv and run it as edxapp??

Hi @taufanbudiman, thanks for your answer :slight_smile:

I think that i activate the virtual_env correctly and work as edxapp:

To install figures the first thing i do in the command line is this:

sudo su edxapp -s /bin/bash
cd /edx/app/edxapp
. edxapp_env
. venvs/edxapp/bin/activate

Then git clone the repo:

git clone -b build-0.3.9

And access the frontend folder:

cd frontend

I then type yarn or yarn build and that when i get the errors.

1 Like

this my version yarn or node.

maybe you can try uninstalling and reinstalling yarn

1 Like

Thanks a lot, that was exactly the problem, yarn version :slight_smile:

Now i can see figures app almost completely, im having just a small problem with the “courses” tab inside figures, it shows nothing, did you have the same problem? I installed the master brach.

This is my LMS LOG (I think the problem is related to the “TemplateDoesNotExist: head-extra.html” error)

Jun 30 16:38:10 X8 [service_variant=lms][django.template][env:sandbox] WARNING [X8 17654] [] - Exception raised while rendering {% include %} for template ‘unknown’. Empty string rendered instead.
Traceback (most recent call last):
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/template/”, line 204, in render
template = context.template.engine.get_template(template_name)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/template/”, line 162, in get_template
template, origin = self.find_template(template_name)
File “/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/template/”, line 148, in find_template
raise TemplateDoesNotExist(name, tried=tried)
TemplateDoesNotExist: head-extra.html
Jun 30 16:38:10 X8 [service_variant=lms][py.warnings][env:sandbox] WARNING [X8 17647] [] - /edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/rest_framework/ DeprecationWarni$

My error was due to the version being used in my installation:

I tried following the steps above with a master branch, thats why i was getting the TemplateDoesNotExist error.

If you follow the instructions step by step you wont have problems.

  • Check your yarn version and, if it does not match the screenshoot shared by @taufanbudiman do the following:

sudo apt remove cmdtest (if you have any previous version)

sudo apt remove yarn (just in case)

curl -sS | sudo apt-key add -

echo “deb stable main” | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt-get update

sudo apt-get install yarn

And please, thank the work of Mr @taufanbudiman :slight_smile:


Hi anjali ,
I tried to install figures for the ironwood version and followed these steps:

  1. Activated the edxapp_env
  2. pip install figures .
  3. Added “ADDL_INSTALLED_APPS”: [“figures”]
    in lms.env.json .
    But getting this error :

Please follow exactly @taufanbudiman instructions, you wont have any problem.

If so, please paste your error here, but your error seems more like a mistake duplicating the label “Figures”.

@Xperez I followed your steps to install yarn. But faced this problem:

Followed above steps to install yarn but faced this problem. I have native ironwood installation

Can you copy the log? i cant read the screenshot.

Hi @kritika_arora,

For installing the yarn, please check this

Maybe this will helps you.