A Reader and Editor for Hypertext
Go to file
Alex Hunt c9f197675f Refactoring input & toggle state 2018-11-29 23:37:36 -08:00
.pytest_cache/v/cache Some cleaning and setting up pytest 2018-04-19 19:45:43 -04:00
blueprints Enabling reader options on mobile devices 2018-11-28 21:13:49 -08:00
seed_data Bug fixes and tweaks 2017-12-16 15:07:49 -05:00
src Refactoring input & toggle state 2018-11-29 23:37:36 -08:00
templates Refactoring input & toggle state 2018-11-29 23:37:36 -08:00
tests Fixed a search bug and added simple unit tests for the chapters API 2018-05-18 19:37:03 -04:00
.babelrc Fixed a search bug and added simple unit tests for the chapters API 2018-05-18 19:37:03 -04:00
.ebignore Testing webpack-dev-server 2018-11-26 22:59:02 -08:00
.gitignore Enabling deploy to ElasticBeanstalk 2018-11-27 19:12:00 -08:00
JoyceEditor_Mock.pdf Working on the editor UI. Needs some refactoring components and wire up api middleware. 2017-11-13 18:39:08 -05:00
README.md Adding to README 2018-05-09 23:00:44 -04:00
TODO.txt Refactoring setup script and creating refresh API route 2018-11-27 22:02:08 -08:00
application.py Refactoring setup script and creating refresh API route 2018-11-27 22:02:08 -08:00
jest.config.js Fixed a search bug and added simple unit tests for the chapters API 2018-05-18 19:37:03 -04:00
package.json Enabling reader options on mobile devices 2018-11-28 21:13:49 -08:00
pytest.ini Some cleaning and setting up pytest 2018-04-19 19:45:43 -04:00
requirements.txt Cleanup for AWS EB hosting 2018-11-25 16:01:47 -08:00
setup.py Adding seed tags and css tweaks 2018-11-28 22:43:46 -08:00
test_joyce.py Some cleaning and setting up pytest 2018-04-19 19:45:43 -04:00
v1requirements.txt Cleanup for AWS EB hosting 2018-11-25 16:01:47 -08:00
webpack.common.js Removing dependencies 2018-11-27 00:02:24 -08:00
webpack.dev.js Enabling reader options on mobile devices 2018-11-28 21:13:49 -08:00
webpack.prod.js Enabling reader options on mobile devices 2018-11-28 21:13:49 -08:00

README.md

Joyce

A Reader and Editor for Hypertext

Joyce is a web app for reading and annotating texts. It was designed to power The Joyce Project, a website to help introduce James Joyce's Ulysses to new readers with the full-text and detailed annotations.

Joyce uses Python and Flask for the backend, Elasticsearch for the datastore, and React and Bootstrap for the front end, bundled with Webpack. The text editor is built on DraftJS.

Setup

This assumes you have Node, npm, pip and optionall virtualenv installed.

Install Elasticsearch:

brew install elasticsearch

Joyce requires Python 2.7:

virtualenv -p /usr/bin/python2.7 joyce_flask

source bin/activate

Install the Python backend:

pip install -r requirements.txt

Install the Javascript frontend:

npm install

Setup the Elasticsearch indexes:

python setup.py

Run Locally

Start Elasticsearch:

elasticsearch

Start Webpack in watch mode:

npm run watch

Start Python application:

python application.py

You should now find Joyce running locally at:

localhost:5000