Skip to content

Bhanditz/figures

 
 

Repository files navigation

Figures

Travis Codecov

Reporting and data retrieval app for Open edX.

Notice and Development Status

Figures is now avaible on PyPI for open beta testing on Open edX Ginkgo!

Currently it runs on Ficus and Ginkgo. We have Hawthorn in the backlog. We welcome community involvement to upgrade to Hawthorn.

If you find bugs or run into issues, please submit an issue ticket to the Figures issue tracker on Github.

Overview

Figures is a reporting and data retrieval app. It plugs into the edx-platform LMS app server. Its goal is to provide site-wide and cross-course analytics that compliment Open edX's traditional course-centric analytics.

To evolve Figures to meet community needs, we are keeping in mind as principles the following features, which Jill Vogel outlined in her lightweight analytics post on ed Xchange:

  • Real time (or near real time) updates
  • Lightweight deployment
  • Flexible reporting
  • Simpler contributions

Please refer to the Figures design document for more details on goals and architecture.

Requirements

  • Python (2.7)
  • Django (1.8)
  • Open edX (Ficus or Ginkgo)

Installation

Devstack

Go here for instructions to install and run Figures in devstack.

Production

go here for instructions to install Figures in production.

Project Architecture

Front-end

The Figures user interface is a JavaScript Single Page Application (SPA) built with React and uses the create-react-app build scaffolding generator.

Back-end

The Figures back-end is a reusable Django app. It contains a set of REST API endpoints that serve a dual purpose of providing data to the front-end and to remote clients.

Testing

TODO: Improve the testing instructions

The unit tests should be able to run on any OS that supports Python 2.7.x

Clone the repo:

git@github.com:appsembler/figures.git

Go to the project directory:

cd figures

Create a virtualenv for Python 2.7.x.

Install required Python packages:

pip install -r devsite/requirements.txt

From the figures repository root directory:

py.test

If all goes well, the Figures unit tests will all complete succesfully

Future

  • Open edX "Hawthorn" will provide a plug-in architecture. This will hopefully simplify Figures installation even more
  • Downloadable report files
  • Plugin architecture to extend Figures for custom data sources

How to Contribute

TODO: Add details here or separate CONTRIBUTING file to the root of the repo

Reporting Security Issues

Please do not report security issues in public. Please email security@appsembler.com.

About

Reporting and data retrieval app for Open edX

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 46.3%
  • JavaScript 26.4%
  • CSS 26.4%
  • Other 0.9%