Coder Social home page Coder Social logo

tinuola / ucla-ursus Goto Github PK

View Code? Open in Web Editor NEW

This project forked from uclalibrary/ursus

0.0 1.0 0.0 12.81 MB

Blacklight front-end for Californica

License: Other

Ruby 12.08% JavaScript 7.71% CSS 0.01% HTML 72.17% XSLT 2.00% Dockerfile 0.05% Shell 0.08% SCSS 5.91%

ucla-ursus's Introduction

UCLA Library Management - Ursus


Ursus is designed as the public interface for UCLA's digital library content.

Bruin Bear (statue) In 1984 to mark its 50th Anniversary, the UCLA Alumni Association commissioned "Mighty Bruins" and presented the Bruin Bear Statue to the university. The statue is now a campus landmark and a focal point in Westwood Plaza.


Build Status Apache 2.0 License Coverage Status This project is using Percy.io for visual regression testing.


Development

This section gives basic instructions to get Ursus running locally. More extensive developer documentation is maintained in the wiki.

Install and run locally

Ursus is a Black application and only needs Solr and Fedora.

Ursus can be locally run in two ways:

  1. Running in standalone mode
  2. Running in conjunction with local instance Californica

Standalone mode

The file docker-compose-standalone.yml includes a setup with a clone of the ursus-stage and sinai-stage solr indexes, so you do not need to run californica and manually ingest material (in fact, californica should #not# be running to avoid port conflicts.)

1. Clone the repo from GitHub

git clone [email protected]:UCLALibrary/ursus.git

2. Change directories into the repo

cd ursus

3. Set up the databases

docker-compose run web bundle exec rails db:setup
docker-compose run sinai bundle exec rails db:setup

4. Bring up the development environment

** Do this after setting up the databases** - the startup scripts require the database to be ready so that they can set feature flags e.g. for the Sinai UI mode.

docker-compose up

Ursus should now be running


Running in conjunction with local instance of Californica

If the stand-alone version of Ursus is running, stop it with:

docker-compose down

1. First, install Californica and ingest some data;

make sure californica is running so ursus can point to its data.

2.Clone the Ursus repo from GitHub and change directories into the Ursus repo:

git clone [email protected]:UCLALibrary/ursus.git
cd ursus

4. Open a tab in your terminal

docker-compose -f docker-compose-with-californica.yml run web bundle exec rails db:setup
docker-compose -f docker-compose-with-californica.yml run sinai bundle exec rails db:setup
docker-compose -f docker-compose-with-californica.yml up

5. Open a second tab in your terminal

This will connect to a shell inside the container.
This is where you will run the linters and unit tests

docker-compose -f docker-compose-with-californica.yml run web bash

6. Open a third tab in your terminal

docker-compose -f docker-compose-with-californica.yml run sinai bash

7. Open a fourth tab in your terminal for git commands

git ...

Running linters and unit tests

Connect to a shell inside the container with:

docker-compose run web bash

Then run the entire suite, except for the cypress integration test, with:

sh start-ci.sh

You can inspect the start-ci.sh script to see which linters and tests this invokes.

Running the integration tests

First, you will need to install node.js and npm locally.

Then cd into the e2e directory and install the javascript dependencies:

cd e2e
npm install

Next, you can either open the cypress test runner GUI with:

npx cypress open

or run the tests in the command line:

npx cypress run

Visual regression tests

Visual regression testing is done via percy.io. This runs only for pull requests on travis; it will not run locally.

ucla-ursus's People

Contributors

aprigge avatar bess avatar darrowco avatar darrowcousc avatar dependabot[bot] avatar hardyoyo avatar jendiamond avatar jhriv avatar kirschbombe avatar ksclarke avatar little9 avatar mark-dce avatar pghorpade avatar sgurnick avatar snyk-bot avatar sourcefilter avatar tinuola avatar val99erie avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.