Cyberjusticelab / JusticeAI

JusticeAI (ProceZeus) is a web chat bot that aims to facilitate access to judicial proceedings involving Quebec tenant/landlord law
https://cyberjusticelab.github.io/JusticeAI/docs/rendered/
MIT License
21 stars 16 forks source link

ProceZeus

Travis Codecov

poster

Documentation

You can learn more about ProceZeus by visiting the official documentation page. These docs were generated with mdBook.

Getting Started

Prerequisites

All of the project's services are split into separate Docker images. All application dependencies are contained within the Docker images. The dependencies required to run this project locally are:

Installing

To install Docker and Docker Compose, you can follow the instructions here.

Running the Entire Application Stack

We've developed a script to help with running the entire application with all its components. It's a thin wrapper around docker-compose, so all docker-compose will work for it. All you need is:

./cjl build && ./cjl up

If you want to suppress output push the job to the background:

./cjl up -d

Docker isn't always the best at determining diffs between images. If that happens, you can destroy all Docker images on your host with:

./cjl clean [-y]

To run all tests and lints for all services:

./cjl test

To try to fix all linting errors for all services:

./cjl lint-fix

In order to shut down all containers:

./cjl down

Finally, if you want to reset the database (Helps with inconsistent database states), you can run:

./cjl reset-db

The cjl script also takes any other command that docker-compose can take.

Running or Testing Specific Services

The following services can run individually or tested against:

Deployment

Deployment is done via Travis CI and Ansible. The most current version of the master branch is reflected on the Demo Page

Architecture

The following architecture diagram represents the various services and the relationships they have with one another.

High Level Architecture

Contributing

See CONTRIBUTING.md for details.

Versioning

See the releases tab

Authors

The following is a list of team members that are contributing to the project:

License

This project is licensed under the MIT License - see the LICENSE file for details