Empirical-Core is our web app for managing students, assigning activities, and viewing results. Core seamlessly incorporates 3rd party applications via the Empirical API.
JavaScript Ruby CSS SQLPL HTML PLpgSQL Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
app Merge pull request #4242 from empirical-org/refactor/classrooms_model May 22, 2018
bin integrates spring with cypress Mar 23, 2018
client Merge pull request #4226 from empirical-org/feat/premium-reports-fron… May 16, 2018
config added specs for and refactored progress reports controller May 19, 2018
cypress cypress test for no school alert May 15, 2018
db removes percentage_with_zero_if_nil from activity_sessions.rb May 17, 2018
docs update route structuring for teacher center and topics May 2, 2018
fixtures/vcr_cassettes fix spec failures related to gem updates and to change in Concept.rb … Feb 1, 2016
lib better names for noun code generator files May 11, 2018
log initial Nov 1, 2012
public move a lot of images to cdn Oct 20, 2017
script changed jest npm script to run a bash script that checks for mock dat… Mar 6, 2018
spec Merge pull request #4242 from empirical-org/refactor/classrooms_model May 22, 2018
vendor/assets Automatic linting part deux Sep 7, 2017
.env-sample Update .env-sample May 16, 2018
.eslintrc.js Automatic linting part deux Sep 7, 2017
.gitignore correct nohup git ignore May 17, 2018
.nvmrc Custom extend the assests precompile task Mar 13, 2018
.rspec Clean up rspec helpers, tweak output Apr 5, 2018
.ruby-gemset relocate csv_loader to lib, rewrite errant shell files as rake tasks,… Jul 17, 2014
.ruby-version Add images to footer and press Dec 27, 2016
.slugignore merge develop Mar 27, 2018
.travis.yml Roll back to previous version of travis config Apr 6, 2018
CODE_OF_CONDUCT.md merge with develop Aug 21, 2017
CONTRIBUTING.md Install Faker, upgrade FactoryGirl to FactoryBot Nov 1, 2017
FeatureProgress.md update feature progress with added new feature numbers Mar 12, 2018
Gemfile Remove unused teaspoon test runner from travis Apr 6, 2018
Gemfile.lock Remove unused teaspoon test runner from travis Apr 6, 2018
Guardfile Guard: run only feature specs if .../pages/* changes Feb 27, 2015
LICENSE.MD Create LICENSE.MD Aug 19, 2014
Procfile remove webpack sets from the procfile. Jul 7, 2016
Procfile.cypress merge feat/big-cypress-branch Apr 5, 2018
Procfile.dev working react Jun 8, 2016
Procfile.hot Update redis in procfile Oct 2, 2017
Procfile.static Add edit link to teachers row in school details page May 16, 2018
REACT_ON_RAILS.md working react Jun 8, 2016
README.md Add Code Climate badge Feb 7, 2018
Rakefile cleanup, setup tests May 27, 2014
SUMMARY.md merge develop Nov 1, 2017
book.json Update RSS lib Nov 2, 2017
config.ru Update to rails 4 Aug 3, 2013
cypress.json Update cypress viewport and credit card test Mar 29, 2018
install_nvm.sh files added Mar 14, 2018
issue_template.md Create issue_template.md Dec 5, 2017
malformed_reducer.png added missing file Mar 12, 2018
package-lock.json Update package locks and install node 7.5 in travis Mar 29, 2018
package.json fix edit password Apr 13, 2018
pull_request_template.md Update pull_request_template.md Jan 17, 2018


Documentation Table of Contents

Welcome to Empirical Core

Empirical Core is the Learning Management System that powers Quill.org, a free writing tool.

Front End Back End Travis CI Code Climate
codecov codecov Build Status Maintainability

Fork and Clone this repository to submit a Pull Request.

Getting Started: Visit our Community Page. The Mailing List, Chat, Issues, and Docs can all be accessed from the community page.

CLA: Please register an account & sign our CLA.

Install Empirical Core

Here's how to get Empirical Core running on your system:

  1. Download and install rbenv (or another Ruby version manager of your choice). You need to have Ruby version 2.3.1 installed in order to use Empirical Core. The best way to make sure you have version 2.3.1 is to follow the README and wiki of the Ruby version manager that you download.

    If you decide to use rbenv, then homebrew has a really great and easy-to-use setup and install process:

    1. brew update
    2. brew install rbenv ruby-build
    3. echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
    4. Close and reopen your terminal.
  2. Download and install postgres, the database engine Empirical Core uses. The easiest way to get started with this is to download postgres.app.

    If you're more comfortable with installing custom software, you can use homebrew to download and install postgres instead using the following commands:

    1. brew update
    2. brew install postgres
    3. Follow the instructions on the resulting info screen.
  3. Navigate to the directory where you'd like Empirical Core to live, then run the following command to clone the Empirical Core project repository:

    git clone https://github.com/empirical-org/Empirical-Core.git

  4. Use cd Empirical-Core to change directory into the Empirical Core repository.

  5. Install Redis. You can download it directly.

    Alternatively, you can use homebrew to install it by running the following commands:

    1. brew update
    2. brew install redis
  6. Install bundler with gem install bundler.

  7. Install the bundle with bundle install.

  8. Install node via nvm. Run nvm install to install the version of node used by this app.

  9. Install npm by running brew install npm.

  10. Run rake empirical:setup to automagically get all of your dependencies and databases configured.

  11. You're ready to run Empirical Core!

    1. Run the server using the command foreman start -f Procfile.static.
    2. Navigate your browser to localhost:3000.
    3. When you're done with the server, use Ctrl-C to break it and return to your command line.


We use GitBook for documentation. To get it set up, run gitbook init and then either gitbook serve (to run the book on a server) or gitbook build (to build a static version of the book). To add docs, create markdown files in the /docs folder and then add a relative link to the file in docs/SUMMARY.md.

Pre-installed user accounts

The installation comes with some pre-populated data to help you get started:

  • A teacher, with username teacher and password password.
  • A student, username student and password password.
  • A staff member, with username staff and password password.