The application is currently hosted on open.bccampus.ca, open.campusmanitoba.ca, openlibary.ecampusontario.ca and is built and maintained to support the Open Textbook Project by BCcampus
The application is embedded in a WordPress environment, and while there are WP integrations, there are zero WordPress dependencies. It can be used as a standalone app.
- PHP version > 7
- an instance of LimeSurvey
- an instance of Matomo
- an instance of WordPress
- an instance of Equella
This application can consume API's from
- Equella to display books from a collection OR
- DSpace to display books from a collection
- LimeSurvey to display book reviews
- Matomo Analytics to access book statistics
It also
- creates Google Scholar metadata for each book
- generates a sitemap of all textbooks which integrates with Better WordPress Google XML Sitemaps
- pulls data from Contact Form DB
- waxes your neckbeard

Built to support the wide dissemination of open textbooks.
Uses yarn to build front end dependencies and composer to build php dependencies. Once you've cloned the repo, you'll need to build:
yarn && yarn buildcomposer install
- rename
config/environments/env.sample.phpto.env.mydomain.com.php - add config files per domain (ie.
.env.localhost.php,.env.myotherdomain.com.php) - modify config values to connect your instances of LimeSurvey, Wordpress, Equella and Matomo
- to test how the app will behave with a configuration file that is different than the domain you're testing with, use the override in
env.phpat the root of the site. - ensure the web server user (apache, _www) has write permissions to
cachedirectory and all subdirectories (cache/webform,cache/analytics, etc)
Unless otherwise noted, this code is copyright (c) 2012-2016 Brad Payne, released under a GPLv3 license, or any later version
Otherwise noted:
- PHP Class
Cachelicensed under BSD, (compatible with GPL) - PHP Class
SitemapAbstractLicensed under GPLv3, or any later version - Bootstrap licensed under MIT, (compatible with GPL)
- Table Sorter is dual licensed, MIT and GPL