Skip to content

A Pyramid-based Learning Journal with react front-end and social authentication.

Notifications You must be signed in to change notification settings

cewing/pyramid-react-journal

Repository files navigation

Pyramid/React Learning Journal

This package implements a multi-user learning journal using the Pyramid web framework. The front-end will evolve to be implemented with ReactJS.

The journal features user authentication via GitHub, with whitelisting via configuration.

Installation

Some rough notes on getting this up and running.

Pyramid Application

$ git clone git@github.com:cewing/pyramid-react-journal.git
$ cd pyramid-react-journal
$ python3 -m venv ./
$ . bin/activate
(pyramid-react-journal)$ pip install -r requirements.pip
...
$ pip install -e .
...
$ bin/pserve development.ini

React Application and CSS

$ npm install
...
$ gulp

Deployment

This application comes with an ansible-based deployment strategy.

  • Begin by installing ansible (note that ansible is not compatible with Python 3 as of this writing).
  • Set up a remove server of your choice. The configuration for ansible is slanted toward using an Ubuntu 14.04 instance on AWS, but that is not a strict requirement.
  • ensure that you have set the hosts property in ansible/playbook.yml properly.
  • verify the host vars for your host. Standard vars for an AWS Ubuntu deployment are in ansible/group_vars/tag_Name_Class_Learning_Journal.yml.

The to execute the deployment playbook, run:

$ ansible-playbook -i <your inventory file> playbook.yml

For the standard deployment (AWS, Ubuntu 14.04), the incantation uses an EC2 dynamic inventory script, and looks like this:

$ ansible-playbook -i plugins/inventory/ playbook.yml

About

A Pyramid-based Learning Journal with react front-end and social authentication.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages