Skip to content

Latest commit

 

History

History
99 lines (71 loc) · 3.39 KB

README.md

File metadata and controls

99 lines (71 loc) · 3.39 KB

Codeship Status for ackama/nzsl-share

NZSL Share

This is a Rails 7 app.

Documentation

This README describes the purpose of this repository and how to set up a development environment. Other sources of documentation are as follows:

  • UI and API designs are in doc/
  • A playbook for failure scenarios and what to do can be found in doc/playbook.md
  • The authorisation policy for this app can also be found in doc/ - this details the types of users and the permissions they have.

Prerequisites

This project requires:

  • Ruby 3.1.3, preferably managed using rbenv
  • Google Chrome for headless Capybara testing
  • PostgreSQL must be installed and accepting connections
  • SQLite must be installed with development libraries to connect to the dictionary database
  • Redis must be installed and accepting connections

On a Mac, you can obtain all of the above packages using Homebrew.

If you need help setting up a Ruby development environment, check out this Rails OS X Setup Guide.

Getting started

See our contribution guide for full instructions on getting set up and contributing to the project!

If you know what you're doing already, bin/setup should get you set up, and you can run bin/ci-run to make sure you've got locally passing tests.

Signbank Dictionary

This application allows users to search for signs that are already published in the NZSL Dictionary. This reduces the risk that a contribution duplicates already-published work.

The dictionary data is consumed from a SQLite database that is downloaded from a Github release. From time to time, the dictionary data is updated, and exported by nzsl-dictionary-scripts.

Unless there has been a major change to published data, you don't need to update the dictionary SQLite file often. When the application is started, the most recent copy is also downloaded if the database file is missing or older than 1 month.

If you know there has been an update, and want the latest copy immediately, you can run bundle exec rake dictionary:update to download it.

Deployment

Ensure the following environment variables are set in the deployment environment to configure the environment. Other, application-specific configuration keys can be found in example.env.

  • RACK_ENV
  • RAILS_ENV
  • REDIS_URL
  • SECRET_KEY_BASE
  • SIDEKIQ_WEB_PASSWORD
  • SIDEKIQ_WEB_USERNAME

Optionally:

  • HOSTNAME
  • RAILS_FORCE_SSL
  • RAILS_LOG_TO_STDOUT
  • RAILS_MAX_THREADS
  • RAILS_SERVE_STATIC_FILES
  • WEB_CONCURRENCY

Browser support

We support the latest 2 versions (stable releases) of major browsers for desktop and mobile. At the time of writing this is:

Browser Desktop iOS Android
Chrome 76, 75 76, 75 76, 75
Edge 17, 16 N/A 15, 14
Firefox 69, 68 18, 17 68, 67
Safari 13, 12 12, 11 N/A

You can check the versions covered by our browserslist configuration here